Skip to main content

MCP server for managing Nginx Proxy Manager instances

Project description

npm-mcp

MCP server for managing Nginx Proxy Manager (NPM) instances via Claude/AI assistants. 50 tools covering the full NPM API.

Installation

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

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

Configuration

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": "admin@example.com",
        "NPM_PASSWORD": "your-password"
      }
    }
  }
}

Available Tools (50)

Proxy Hosts (7 tools)

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

Redirection Hosts (7 tools)

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

Streams (7 tools)

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

Dead Hosts / 404 Hosts (7 tools)

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

SSL Certificates (7 tools)

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

Access Lists (5 tools)

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

Users (5 tools)

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

Settings (3 tools)

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

Audit Log (1 tool)

Tool Description Required Params
list_audit_log List recent audit log entries

Reports (1 tool)

Tool Description Required Params
get_host_report Get host count report

Usage Examples

Once configured, use natural language:

  • "List all my proxy hosts"
  • "Create a proxy host for example.com pointing to 192.168.1.100:8080"
  • "Set up a 301 redirect from old.example.com to new.example.com"
  • "Create a TCP stream forwarding port 3306 to my database server"
  • "Request a Let's Encrypt certificate for api.example.com"
  • "Enable the proxy host with ID 5"
  • "Show me the audit log"

Development

uv sync --dev
uv run pytest

Requirements

  • Python 3.10+
  • Nginx Proxy Manager instance
  • Valid NPM credentials

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nginx_proxy_manager_mcp-0.1.0.tar.gz (127.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nginx_proxy_manager_mcp-0.1.0-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

Details for the file nginx_proxy_manager_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: nginx_proxy_manager_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 127.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for nginx_proxy_manager_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e5202cda34e388c2204496a82e898797caf9ec31b7d8864cffa17618371d8fc4
MD5 7c807bd2b20554c222cc873426df5565
BLAKE2b-256 9652bb588e966e0c69c464330122e6e968b49cc121c52f6fb07faf2e6c80122e

See more details on using hashes here.

File details

Details for the file nginx_proxy_manager_mcp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: nginx_proxy_manager_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 10.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for nginx_proxy_manager_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 45d049dd12820148a310ed0dff3a95facf315458ffdd0874cafdced49e5feaf1
MD5 7bd1f27d59ed5a607daebf7706df0159
BLAKE2b-256 9cf52e287e8bb4ee026ad90bae34655819840fce206b4b1933d461d1fc2b4e63

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page