npm-mcp
Enables creation, deletion, and renewal of Let's Encrypt SSL certificates with DNS challenge support.
Provides tools for managing Nginx Proxy Manager proxy hosts, SSL certificates, streams, access lists, redirection hosts, dead hosts, users, and system settings.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@npm-mcplist my proxy hosts"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
NPM MCP - Nginx Proxy Manager MCP Server
An MCP (Model Context Protocol) server for managing Nginx Proxy Manager through Claude and other MCP-compatible AI assistants.
Features
Proxy Hosts: Create, update, delete, enable/disable proxy hosts
SSL Certificates: Manage Let's Encrypt certificates with DNS challenge support
Streams: Configure TCP/UDP port forwarding
Access Lists: Set up authentication with basic auth and IP rules
Redirection Hosts: Configure URL redirections
Dead Hosts (404): Set up custom 404 pages
Users: Manage NPM user accounts
System: View audit logs, settings, and host reports
Related MCP server: Nginx Proxy Manager MCP
Quick Install (Recommended)
The easiest way to get started is with the automated installer:
# Clone the repository
git clone https://github.com/crogers2287/npm-mcp.git
cd npm-mcp
# Run the installer
./install.shThe installer will:
Check prerequisites (Node.js 18+, npm, jq)
Install dependencies and build the project
Prompt for your NPM connection details
Test the connection to your NPM instance
Automatically configure Claude Code
Installer Options
./install.sh # Run interactive installation
./install.sh --help # Show help
./install.sh --uninstall # Remove NPM MCP configurationManual Installation
If you prefer to configure manually:
# Clone the repository
git clone https://github.com/crogers2287/npm-mcp.git
cd npm-mcp
# Install dependencies
npm install
# Build
npm run buildConfiguration
Set the following environment variables:
Variable | Required | Default | Description |
| Yes | - | NPM server hostname (e.g., |
| No | - | NPM API port (omit for standard 80/443) |
| Yes | - | Admin email for authentication |
| Yes | - | Admin password |
| No |
| Set to |
Claude Desktop Configuration
Add to your Claude Desktop config (~/.config/claude/claude_desktop_config.json on Linux or ~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"npm": {
"command": "node",
"args": ["/path/to/npm-mcp/dist/index.js"],
"env": {
"NPM_HOST": "npm.example.com",
"NPM_HTTPS": "true",
"NPM_EMAIL": "admin@example.com",
"NPM_PASSWORD": "your-password"
}
}
}
}Claude Code Configuration
Add to your MCP settings (~/.claude/settings.json):
{
"mcpServers": {
"npm": {
"command": "node",
"args": ["/path/to/npm-mcp/dist/index.js"],
"env": {
"NPM_HOST": "npm.example.com",
"NPM_HTTPS": "true",
"NPM_EMAIL": "admin@example.com",
"NPM_PASSWORD": "your-password"
}
}
}
}Available Tools
Proxy Hosts
npm_list_proxy_hosts- List all proxy hostsnpm_get_proxy_host- Get proxy host detailsnpm_create_proxy_host- Create a new proxy hostnpm_update_proxy_host- Update a proxy hostnpm_delete_proxy_host- Delete a proxy hostnpm_enable_proxy_host- Enable a proxy hostnpm_disable_proxy_host- Disable a proxy host
SSL Certificates
npm_list_certificates- List all certificatesnpm_get_certificate- Get certificate detailsnpm_create_certificate- Create a Let's Encrypt certificatenpm_delete_certificate- Delete a certificatenpm_renew_certificate- Renew a certificate
Streams (TCP/UDP)
npm_list_streams- List all streamsnpm_get_stream- Get stream detailsnpm_create_stream- Create a new streamnpm_update_stream- Update a streamnpm_delete_stream- Delete a streamnpm_enable_stream- Enable a streamnpm_disable_stream- Disable a stream
Access Lists
npm_list_access_lists- List all access listsnpm_get_access_list- Get access list detailsnpm_create_access_list- Create an access listnpm_update_access_list- Update an access listnpm_delete_access_list- Delete an access list
Redirection Hosts
npm_list_redirection_hosts- List all redirectionsnpm_get_redirection_host- Get redirection detailsnpm_create_redirection_host- Create a redirectionnpm_update_redirection_host- Update a redirectionnpm_delete_redirection_host- Delete a redirectionnpm_enable_redirection_host- Enable a redirectionnpm_disable_redirection_host- Disable a redirection
Dead Hosts (404)
npm_list_dead_hosts- List all 404 hostsnpm_get_dead_host- Get 404 host detailsnpm_create_dead_host- Create a 404 hostnpm_delete_dead_host- Delete a 404 host
Users
npm_list_users- List all usersnpm_get_user- Get user detailsnpm_create_user- Create a usernpm_delete_user- Delete a user
System
npm_list_audit_log- View audit lognpm_list_settings- List settingsnpm_get_setting- Get a setting valuenpm_update_setting- Update a settingnpm_get_hosts_report- Get hosts summary
Resources
The MCP server also exposes these resources:
npm://hosts/summary- Summary of all configured hostsnpm://certificates/summary- Summary of SSL certificates
Usage Examples
Create a Proxy Host
Create a proxy host for app.example.com that forwards to 192.168.1.100:8080Request SSL Certificate
Create a Let's Encrypt certificate for app.example.comSet Up Stream Forwarding
Create a TCP stream to forward port 25565 to minecraft-server:25565Create Access List with Basic Auth
Create an access list called "admin-only" with username "admin" and password "secret123"API Reference
This MCP server wraps the Nginx Proxy Manager API. For detailed API documentation, see:
License
MIT
Contributing
Contributions welcome! Please open an issue or pull request.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/crogers2287/npm-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server