mcp-1panel-plus
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PANEL_HOST | No | Direct http(s):// 1Panel URL when not using PANEL_SSH_HOST. | |
| PANEL_KEY_ID | No | Optional 1Panel-Key-ID header. | |
| MCP_HTTP_ADDR | No | Listen address for Streamable HTTP transport (/mcp). | 127.0.0.1:8000 |
| MCP_TRANSPORT | No | MCP transport: stdio or http (streamable-http). | stdio |
| PANEL_API_KEY | No | Alias for PANEL_ACCESS_TOKEN; 1Panel API Key. | |
| MCP_AUTH_TOKEN | No | Required Bearer token for Streamable HTTP transport. | |
| PANEL_SSH_HOST | No | SSH config alias or user@host for the auto-reconnecting loopback tunnel. | |
| PANEL_SSH_PORT | No | Optional custom SSH port. | |
| MCP_ALLOW_REMOTE | No | Allow remote connections when using the Streamable HTTP transport. | |
| PANEL_BIND_DOMAIN | No | Optional HTTP Host header override when 1Panel Domain Binding is active. | |
| PANEL_REMOTE_PORT | No | Remote 1Panel port forwarded over SSH. | 20005 |
| PANEL_ACCESS_LEVEL | No | Access level: readonly, readwrite, or full (admin). | readwrite |
| PANEL_ACCESS_TOKEN | No | 1Panel API Key. Required. Alias: PANEL_API_KEY. | |
| PANEL_SSH_KEY_PATH | No | Optional SSH identity key file. | |
| PANEL_TLS_INSECURE | No | Skip TLS certificate verification on self-signed PANEL_HOST. | false |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_nodesA | List the Main Node ("local") and all connected X-Pack Child Nodes (numeric string IDs) managed by this 1Panel cluster. Use the returned |
| get_system_infoA | Read operating system, platform, kernel architecture/version, and total disk size (in bytes) on the selected node. |
| get_dashboard_infoA | Read dashboard resource counts (websites, apps, databases, cronjobs) and real-time CPU, load, memory, swap, network, and disk utilization on the selected node. |
| list_websitesA | List websites on the selected node with optional name filter. Internal filesystem paths are excluded. |
| get_websiteA | Get website metadata by explicit website ID on the selected node. Filesystem paths and raw Nginx configuration are excluded. |
| list_website_domainsA | List recorded domains and ports bound to an explicit website ID on the selected node. |
| get_website_httpsA | Read HTTPS status, TLS protocols, HSTS, HTTP/3, and certificate metadata for a website ID. Private keys and PEM certificate contents are stripped. |
| create_websiteA | Create a static or reverse-proxy website in the default website group on the selected node. Optionally bind an existing SSL certificate ID ( |
| enable_website_httpsA | Bind an existing 1Panel SSL certificate ( |
| list_website_proxiesA | List configured reverse-proxy rules on a website ID on the selected node. Raw Nginx file paths and config snippets are excluded. |
| upsert_website_proxyB | Create ( |
| delete_website_proxyB | Delete a named reverse-proxy rule from a website on the selected node. |
| operate_websiteB | Start or stop an existing website ( |
| list_sslsA | List SSL certificates on the selected node. Private keys and PEM certificate contents are strictly excluded. |
| get_ssl_metadataB | Read safe metadata for a single SSL certificate ID on the selected node. Private keys, PEM contents, and DNS provider secrets are excluded. |
| create_sslA | Submit asynchronous ACME certificate issuance for a domain (or bare IP with HTTP validation) using configured ACME and DNS accounts on the selected node. Credentials and private keys are never returned. |
| list_installed_appsA | List installed App Store applications on the selected node, including |
| get_installed_appA | Read status, version, and ports for a specific installed application ID on the selected node. Environment variables and compose files are excluded. |
| list_app_versionsA | List available catalog versions for an exact App Store application key (e.g. |
| sync_app_storeB | Trigger remote App Store catalog synchronization on the selected node (and optionally refresh X-Pack child-node app update status) so newly published app versions become visible. |
| get_app_update_versionsA | List target upgrade versions ( |
| operate_installed_appA | Perform lifecycle operations ( |
| check_panel_upgradesA | Inspect current 1Panel versions on the Main Node and all X-Pack Child Nodes, check available upstream 1Panel releases, and report which nodes have pending upgrades. |
| get_child_node_upgrade_logsA | List historical upgrade records ( |
| list_containersB | List Docker containers (including both App Store and custom Compose/standalone containers) on the selected node. |
| operate_containerB | Execute a safe container lifecycle operation ( |
| get_container_logsA | Fetch recent tail logs from a Docker container on the selected node (bounded to at most 500 lines / 64 KiB, ANSI-stripped, with inline secret redaction). |
| list_mysql_instancesA | List local MySQL/MariaDB server instances on the selected node. Remote database connections and credentials are excluded. |
| list_databasesA | List databases inside an explicitly named local MySQL instance on the selected node. Passwords are never returned. |
| get_mysql_statusA | Read connection, thread, traffic, and uptime counters from a local MySQL instance on the selected node. |
| create_databaseA | Create a UTF8MB4 database in a local MySQL instance on the selected node. Access defaults to |
| list_postgresql_instancesA | List local PostgreSQL instances managed by 1Panel on the selected node. Remote instances and credentials are excluded. |
| list_postgresql_databasesA | List databases in an explicitly named local PostgreSQL instance on the selected node. Credentials are excluded. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 33 tools
Each tool has a distinct resource-and-action purpose, and even potentially close pairs (system info vs dashboard info, installed apps vs containers, MySQL instances vs databases) are clearly separated by explicit descriptions. No true duplicate or overlapping operations are apparent.
Names consistently use snake_case with predictable verb_noun phrasing such as list_websites, get_website, create_ssl, and operate_container. Longer names like get_child_node_upgrade_logs are still readable and follow the same convention.
The server exposes 33 tools, which is heavy for an agent-facing surface and exceeds the well-scoped range. Although the domain is broad, several website, app, and database operations could be consolidated or scoped more tightly to reduce selection cost.
The surface covers many reads and some lifecycle operations across websites, SSL, apps, containers, databases, nodes, and upgrades. However, it lacks notable operations such as website/database/SSL deletion, app install/uninstall, and cronjob management, leaving gaps for full 1Panel administration.