loading…
Search for a command to run...
loading…
Enables management of Nginx Proxy Manager instances for configuring proxy hosts, requesting Let's Encrypt SSL certificates, and managing access lists. It allows
Enables management of Nginx Proxy Manager instances for configuring proxy hosts, requesting Let's Encrypt SSL certificates, and managing access lists. It allows users to control their web proxy infrastructure through natural language commands in MCP-compatible environments.
MCP server for managing Nginx Proxy Manager (NPM) instances via Claude/AI assistants. 50 tools covering the full NPM API.
Version tracks NPM releases — v2.14.0 targets Nginx Proxy Manager v2.14.0.
# Install via uvx (recommended)
uvx nginx-proxy-manager-mcp
# Or install from source
uv sync
uv run nginx-proxy-manager-mcp
Add to your Claude Desktop config (~/.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": "[email protected]",
"NPM_PASSWORD": "your-password"
}
}
}
}
| Tool | Description | Required Params |
|---|---|---|
list_proxy_hosts |
List all proxy hosts | — |
get_proxy_host |
Get proxy host by ID | host_id |
create_proxy_host |
Create a new proxy host | domain_names, forward_host, forward_port |
update_proxy_host |
Update a proxy host | host_id + any fields to change |
delete_proxy_host |
Delete a proxy host | host_id |
enable_proxy_host |
Enable a proxy host | host_id |
disable_proxy_host |
Disable a proxy host | host_id |
Optional create/update params: forward_scheme, certificate_id, ssl_forced, block_exploits, advanced_config
| Tool | Description | Required Params |
|---|---|---|
list_redirection_hosts |
List all redirection hosts | — |
get_redirection_host |
Get redirection host by ID | host_id |
create_redirection_host |
Create HTTP redirect | domain_names, forward_http_code, forward_domain_name |
update_redirection_host |
Update a redirection host | host_id + any fields to change |
delete_redirection_host |
Delete a redirection host | host_id |
enable_redirection_host |
Enable a redirection host | host_id |
disable_redirection_host |
Disable a redirection host | host_id |
Optional create/update params: forward_scheme (auto/http/https), preserve_path, certificate_id, ssl_forced, block_exploits, advanced_config
| Tool | Description | Required Params |
|---|---|---|
list_streams |
List all TCP/UDP streams | — |
get_stream |
Get stream by ID | stream_id |
create_stream |
Create a TCP/UDP stream proxy | incoming_port, forwarding_host, forwarding_port |
update_stream |
Update a stream | stream_id + any fields to change |
delete_stream |
Delete a stream | stream_id |
enable_stream |
Enable a stream | stream_id |
disable_stream |
Disable a stream | stream_id |
Optional create/update params: tcp_forwarding, udp_forwarding, certificate_id
| Tool | Description | Required Params |
|---|---|---|
list_dead_hosts |
List all 404 dead hosts | — |
get_dead_host |
Get dead host by ID | host_id |
create_dead_host |
Create a 404 dead host | domain_names |
update_dead_host |
Update a dead host | host_id + any fields to change |
delete_dead_host |
Delete a dead host | host_id |
enable_dead_host |
Enable a dead host | host_id |
disable_dead_host |
Disable a dead host | host_id |
Optional create/update params: certificate_id, ssl_forced, hsts_enabled, hsts_subdomains, http2_support, advanced_config
| Tool | Description | Required Params |
|---|---|---|
list_certificates |
List all SSL certificates | — |
get_certificate |
Get certificate by ID | certificate_id |
request_certificate |
Request a Let's Encrypt cert | domain_names, nice_name |
delete_certificate |
Delete a certificate | certificate_id |
renew_certificate |
Renew a Let's Encrypt cert | certificate_id |
list_dns_providers |
List supported DNS providers | — |
test_http_challenge |
Test HTTP-01 ACME reachability | domains |
| Tool | Description | Required Params |
|---|---|---|
list_access_lists |
List all access lists | — |
get_access_list |
Get access list by ID | access_list_id |
create_access_list |
Create an access list | name |
update_access_list |
Update an access list | access_list_id + any fields to change |
delete_access_list |
Delete an access list | access_list_id |
Optional create/update params: satisfy_any, pass_auth
| Tool | Description | Required Params |
|---|---|---|
list_users |
List all NPM users | — |
get_user |
Get user by ID | user_id |
create_user |
Create a new user | name, email |
update_user |
Update a user | user_id + any fields to change |
delete_user |
Delete a user | user_id |
Optional create/update params: nickname, roles, is_disabled
| Tool | Description | Required Params |
|---|---|---|
list_settings |
List all NPM settings | — |
get_setting |
Get a setting by ID | setting_id |
update_setting |
Update a setting | setting_id |
Optional update params: value, meta
| Tool | Description | Required Params |
|---|---|---|
list_audit_log |
List recent audit log entries | — |
| Tool | Description | Required Params |
|---|---|---|
get_host_report |
Get host count report | — |
Once configured, use natural language:
uv sync --dev
uv run pytest
MIT
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"nginx-proxy-manager-mcp": {
"command": "npx",
"args": []
}
}
}