Skip to main content
Glama
@kognar/nginx-manager-mcp-server

@kognar/nginx-manager-mcp-server

by kognar-ai

@kognar/nginx-manager-mcp-server

MCP server que abstrai chamadas à API do Nginx Proxy Manager.

Instalação

npm install
npm run build

Related MCP server: coolify-mcp

Configuração

Aceita via argumentos de CLI ou variáveis de ambiente (CLI tem precedência):

flag

env

descrição

--base-url (ou --url)

NPM_BASE_URL

URL completa da API do NPM (use como está — não adicione porta)

--email (ou --user)

NPM_EMAIL

email de login

--password (ou --pass)

NPM_PASSWORD

senha

npx @kognar/nginx-manager-mcp-server \
  --base-url https://npm.example.com \
  --email admin@example.com \
  --password changeme

Uso com Claude Code / Desktop

Adicione no claude_desktop_config.json (ou .mcp.json):

{
  "mcpServers": {
    "nginx-manager": {
      "command": "npx",
      "args": [
        "-y",
        "@kognar/nginx-manager-mcp-server",
        "--base-url", "https://npm.example.com",
        "--email", "admin@example.com",
        "--password", "changeme"
      ]
    }
  }
}

Alternativa com env vars:

{
  "mcpServers": {
    "nginx-manager": {
      "command": "npx",
      "args": ["-y", "@kognar/nginx-manager-mcp-server"],
      "env": {
        "NPM_BASE_URL": "https://npm.example.com",
        "NPM_EMAIL": "admin@example.com",
        "NPM_PASSWORD": "changeme"
      }
    }
  }
}

Tools disponíveis

  • Proxy hosts — npm_list_proxy_hosts, npm_get_proxy_host, npm_create_proxy_host, npm_update_proxy_host, npm_delete_proxy_host, npm_enable_proxy_host, npm_disable_proxy_host

  • Redirection hosts — idem com redirection_host

  • 404 hosts — idem com dead_host

  • Streams — idem com stream

  • Certificates — npm_list_certificates, npm_get_certificate, npm_create_certificate_letsencrypt, npm_create_certificate_custom, npm_renew_certificate, npm_test_certificate_http_reach, npm_delete_certificate

  • Access lists — npm_list_access_lists, npm_get_access_list, npm_create_access_list, npm_update_access_list, npm_delete_access_list

  • Users — npm_list_users, npm_get_user, npm_get_me, npm_create_user, npm_update_user, npm_set_user_password, npm_set_user_permissions, npm_delete_user

  • Misc — npm_get_settings, npm_get_setting, npm_update_setting, npm_get_audit_log, npm_get_reports_hosts, npm_health

Desenvolvimento

npm run dev        # executa via tsx
npm run typecheck  # valida tipos sem emitir

Autenticação usa POST /api/tokens com cache em memória e refresh automático 1 min antes da expiração.

Licença

AGPL-3.0

Available Tools

54 tools
npm_create_access_listCreate access listD

Create an access list.

Inputs: name (required), items, clients, pass_auth, +1 more.

npm_create_certificate_customUpload custom certificate (metadata only)B

Create a custom certificate record. File upload must follow via npm_upload_certificate.

Inputs: nice_name (required), domain_names (required).

npm_create_certificate_letsencryptRequest Let's Encrypt certificateC

Request a new Let's Encrypt certificate for the given domain names.

Inputs: meta (required), domain_names (required).

npm_create_dead_hostCreate 404 hostD

Create a 404 host.

Inputs: domain_names (required), meta, ssl_forced, hsts_enabled, +4 more.

npm_create_proxy_hostCreate proxy hostC

Create a new proxy host.

Inputs: domain_names (required), forward_host (required), forward_port (required), forward_scheme (required), +12 more.

npm_create_redirection_hostCreate redirection hostD

Create a redirection host.

Inputs: domain_names (required), forward_scheme (required), forward_domain_name (required), meta, +9 more.

npm_create_streamCreate streamC

Create a TCP/UDP stream.

Inputs: incoming_port (required), forwarding_host (required), forwarding_port (required), meta, +3 more.

npm_create_userCreate userC

Create a new user.

Inputs: name (required), email (required), nickname (required), auth, +2 more.

npm_delete_access_listDelete access listC

Delete an access list.

Inputs: id (required).

npm_delete_certificateDelete certificateC

Delete a certificate by ID.

Inputs: id (required).

npm_delete_dead_hostDelete 404 hostC

Delete a 404 host.

Inputs: id (required).

npm_delete_proxy_hostDelete proxy hostC

Delete a proxy host by ID.

Inputs: id (required).

npm_delete_redirection_hostDelete redirection hostC

Delete a redirection host.

Inputs: id (required).

npm_delete_streamDelete streamC

Delete a stream.

Inputs: id (required).

npm_delete_userDelete userD

Delete a user.

Inputs: id (required).

npm_disable_dead_hostDisable 404 hostC

Disable a 404 host.

Inputs: id (required).

npm_disable_proxy_hostDisable proxy hostD

Disable a proxy host.

Inputs: id (required).

npm_disable_redirection_hostDisable redirection hostC

Disable a redirection host.

Inputs: id (required).

npm_disable_streamDisable streamD

Disable a stream.

Inputs: id (required).

npm_enable_dead_hostEnable 404 hostC

Enable a 404 host.

Inputs: id (required).

npm_enable_proxy_hostEnable proxy hostC

Enable a proxy host.

Inputs: id (required).

npm_enable_redirection_hostEnable redirection hostC

Enable a redirection host.

Inputs: id (required).

npm_enable_streamEnable streamC

Enable a stream.

Inputs: id (required).

npm_get_access_listGet access listB

Get an access list by ID.

Inputs: id (required), expand.

npm_get_audit_logGet audit logB

Fetch the audit log.

Inputs: no named parameters.

npm_get_certificateGet certificateB

Get a certificate by ID.

Inputs: id (required), expand.

npm_get_dead_hostGet 404 hostC

Get a 404 host by ID.

Inputs: id (required), expand.

npm_get_meGet current userA

Get the currently authenticated user.

Inputs: no named parameters.

npm_get_proxy_hostGet proxy hostC

Get a proxy host by ID.

Inputs: id (required), expand.

npm_get_redirection_hostGet redirection hostC

Get a redirection host by ID.

Inputs: id (required), expand.

npm_get_reports_hostsHosts reportB

Aggregate hosts report (counts by type/status).

Inputs: no named parameters.

npm_get_settingGet settingC

Get a setting by name.

Inputs: name (required).

npm_get_settingsList settingsA

List all NPM settings.

Inputs: no named parameters.

npm_get_streamGet streamC

Get a stream by ID.

Inputs: id (required), expand.

npm_get_userGet userA

Get a user by ID. Pass 'me' via id=0 is not supported; use the numeric ID.

Inputs: id (required), expand.

npm_healthAPI healthA

Check NPM API health/version.

Inputs: no named parameters.

npm_list_access_listsList access listsC

List all access lists.

Inputs: expand.

npm_list_certificatesList certificatesB

List all SSL certificates.

Inputs: expand.

npm_list_dead_hostsList 404 hostsC

List all 404 (dead) hosts.

Inputs: expand.

npm_list_proxy_hostsList proxy hostsB

List all proxy hosts configured in Nginx Proxy Manager.

Inputs: expand.

npm_list_redirection_hostsList redirection hostsC

List all redirection hosts.

Inputs: expand.

npm_list_streamsList streamsB

List all TCP/UDP streams.

Inputs: expand.

npm_list_usersList usersC

List all NPM users.

Inputs: expand.

npm_renew_certificateRenew certificateC

Renew a Let's Encrypt certificate.

Inputs: id (required).

npm_set_user_passwordSet user passwordC

Set a user's password.

Inputs: id (required), secret (required), current.

npm_set_user_permissionsSet user permissionsC

Set a user's permissions.

Inputs: id (required), streams (required), dead_hosts (required), visibility (required), +4 more.

npm_test_certificate_http_reachTest HTTP reachabilityA

Test whether domains are HTTP-reachable before requesting a cert.

Inputs: domains (required).

npm_update_access_listUpdate access listD

Update an access list.

Inputs: id (required), name, items, clients, +2 more.

npm_update_dead_hostUpdate 404 hostC

Update a 404 host.

Inputs: id (required), meta, ssl_forced, domain_names, +5 more.

npm_update_proxy_hostUpdate proxy hostC

Update an existing proxy host (partial fields allowed).

Inputs: id (required), meta, locations, ssl_forced, +13 more.

npm_update_redirection_hostUpdate redirection hostC

Update a redirection host.

Inputs: id (required), meta, ssl_forced, domain_names, +10 more.

npm_update_settingUpdate settingC

Update a setting by name.

Inputs: name (required), meta, value.

npm_update_streamUpdate streamD

Update a stream.

Inputs: id (required), meta, incoming_port, certificate_id, +4 more.

npm_update_userUpdate userD

Update a user.

Inputs: id (required), name, email, roles, +2 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    C2.7/5.0

    Scored across 54 tools

    Disambiguation5/5

    Each tool has a unique combination of action and resource (e.g., npm_create_proxy_host vs npm_delete_proxy_host). Actions like create, delete, get, list, update, enable, disable are clearly distinct across resource types (proxy_host, redirection_host, stream, etc.), leaving no ambiguity for an agent.

    Naming Consistency5/5

    All tools follow a consistent 'npm_<verb>_<noun>' pattern. Verbs are standard CRUD plus enable/disable, and nouns are resource names. No mixing of camelCase or snake_case, and the pattern is predictable across all 54 tools.

    Tool Count2/5

    With 54 tools, this server has a very high tool count for a single domain. While each tool serves a distinct purpose, the number exceeds the 25+ threshold for 'too many', potentially overwhelming an agent or requiring excessive navigation.

    Completeness5/5

    The tool set covers full CRUD for all major Nginx Proxy Manager resources (proxy hosts, redirection hosts, streams, certificates, access lists, users, settings) plus enabling/disabling, certificate testing and renewal, audit log, and reports. No obvious gaps exist for core proxy management tasks.

    Maintenance

    ActivityStale
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      D
      maintenance
      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.
      50
      3
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      MCP server for managing SWAG reverse-proxy configurations, including config generation, backups, logs, and health checks. Enables managing nginx subdomain configs for SWAG through a unified action router.
      7
      MIT