Nginx代理管理器API服务

通过Claude/AI助手管理Nginx代理管理器实例的MCP服务器,提供50个工具覆盖完整NPM API。

  • by VeryBigSad
  • Python
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 VeryBigSad/nginx-proxy-manager-mcp

使用说明

npm mcp

MCP服务器,用于通过Claude/AI助手管理Nginx代理管理器(NPM)实例。 50工具 涵盖整个NPM API。

版本跟踪NPM版本——v2.14.0目标 Nginx代理管理器v2.14.0.

安装

# Install via uvx (recommended)
uvx nginx-proxy-manager-mcp

# Or install from source
uv sync
uv run nginx-proxy-manager-mcp

配置

添加到您的Claude桌面配置(~/.config/claude/config.json):

{
  "mcpServers": {
    "nginx-proxy-manager": {
      "command": "uvx",
      "args": ["nginx-proxy-manager-mcp"],
      "env": {
        "NPM_URL": "http://your-npm-instance:81",
        "NPM_EMAIL": "admin@example.com",
        "NPM_PASSWORD": "your-password"
      }
    }
  }
}

可用工具(50)

代理主机(7个工具)

工具 描述 必需参数
list_proxy_hosts 列出所有代理主机 --
get_proxy_host 按ID获取代理主机 host_id
create_proxy_host 创建新的代理主机 domain_names, forward_host, forward_port
update_proxy_host 更新代理主机 host_id +任何要更改的字段
delete_proxy_host 删除代理主机 host_id
enable_proxy_host 启用代理主机 host_id
disable_proxy_host 禁用代理主机 host_id

可选创建/更新参数: forward_scheme, certificate_id, ssl_forced, block_exploits, advanced_config

重定向主机(7个工具)

工具 描述 必需参数
list_redirection_hosts 列出所有重定向主机 --
get_redirection_host 按ID获取重定向主机 host_id
create_redirection_host 创建HTTP重定向 domain_names, forward_http_code, forward_domain_name
update_redirection_host 更新重定向主机 host_id +任何要更改的字段
delete_redirection_host 删除重定向主机 host_id
enable_redirection_host 启用重定向主机 host_id
disable_redirection_host 禁用重定向主机 host_id

可选创建/更新参数: forward_scheme (自动/http/https), preserve_path, certificate_id, ssl_forced, block_exploits, advanced_config

流(7个工具)

工具 描述 必需参数
list_streams 列出所有TCP/UDP流 --
get_stream 按ID获取流 stream_id
create_stream 创建TCP/UDP流代理 incoming_port, forwarding_host, forwarding_port
update_stream 更新流 stream_id +任何要更改的字段
delete_stream 删除流 stream_id
enable_stream 启用流 stream_id
disable_stream 禁用流 stream_id

可选创建/更新参数: tcp_forwarding, udp_forwarding, certificate_id

死主机/404主机(7个工具)

工具 描述 必需参数
list_dead_hosts 列出所有404个死主机 --
get_dead_host 按ID获取死主机 host_id
create_dead_host 创建404死主机 domain_names
update_dead_host 更新死主机 host_id +任何要更改的字段
delete_dead_host 删除死主机 host_id
enable_dead_host 启用死主机 host_id
disable_dead_host 禁用死主机 host_id

可选创建/更新参数: certificate_id, ssl_forced, hsts_enabled, hsts_subdomains, http2_support, advanced_config

SSL证书(7个工具)

工具 描述 必需参数
list_certificates 列出所有SSL证书 --
get_certificate 按ID获取证书 certificate_id
request_certificate 请求Let's Encrypt证书 domain_names, nice_name
delete_certificate 删除证书 certificate_id
renew_certificate 续订Let’s Encrypt证书 certificate_id
list_dns_providers 列出支持的DNS提供商 --
test_http_challenge 测试HTTP-01 ACME可达性 domains

访问列表(5个工具)

工具 描述 必需参数
list_access_lists 列出所有访问列表 --
get_access_list 按ID获取访问列表 access_list_id
create_access_list 创建访问列表 name
update_access_list 更新访问列表 access_list_id +任何要更改的字段
delete_access_list 删除访问列表 access_list_id

可选创建/更新参数: satisfy_any, pass_auth

用户(5工具)

工具 描述 必需参数
list_users 列出所有NPM用户 --
get_user 按ID获取用户 user_id
create_user 创建新用户 name, email
update_user 更新用户 user_id +任何要更改的字段
delete_user 删除用户 user_id

可选创建/更新参数: nickname, roles, is_disabled

设置(3个工具)

工具 描述 必需参数
list_settings 列出所有NPM设置 --
get_setting 按ID获取设置 setting_id
update_setting 更新设置 setting_id

可选更新参数: value, meta

审计日志(1个工具)

工具 描述 必需参数
list_audit_log 列出最近的审核日志条目 --

报告(1个工具)

工具 描述 必需参数
get_host_report 获取主机计数报告 --

使用示例

配置后,使用自然语言:

  • “列出我的所有代理主机”
  • “为example.com创建指向192.168.1.100:8080的代理主机”
  • “设置从old.example.com到new.example.com的301重定向”
  • “创建到我的数据库服务器的TCP流转发端口3306”
  • “为api.example.com申请Let's Encrypt证书”
  • “启用ID为5的代理主机”
  • “显示审核日志”

发展

uv sync --dev
uv run pytest

需求

  • Python 3.10+
  • Nginx代理管理器实例
  • 有效的NPM凭据

许可证

麻省理工学院