mcp-caddy
Provides tools for inspecting routes, upstream health, certificates, and reloading configuration via the Caddy admin API.
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., "@mcp-caddyshow me the upstream health"
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.
mcp-caddy
MCP server for Caddy web server management. Exposes 7 tools for inspecting routes, upstream health, certificates, and reloading configuration via the Caddy admin API.
Quick Start
With uvx (recommended):
CADDY_HOST=http://10.0.0.31:2019 uvx mcp-caddyWith Docker:
docker run -i \
-e CADDY_HOST=http://10.0.0.31:2019 \
ghcr.io/aaronckj/mcp-caddy:latestAdd to Claude Code:
claude mcp add caddy -s user -e CADDY_HOST=http://10.0.0.31:2019 -- uvx mcp-caddyRelated MCP server: Identity Admin MCP Server
Configuration
Variable | Required | Default | Description |
| No |
| Caddy admin API URL |
| No |
| HTTP timeout in seconds |
Finding Your CADDY_HOST
The Caddy admin API binds to localhost:2019 by default. Depending on your setup:
MCP server on same host as Caddy → use the default
http://localhost:2019Caddy in Docker, MCP server on the same Docker host → add
ports: ["127.0.0.1:2019:2019"]to your Caddy compose service, then usehttp://localhost:2019Remote Caddy host → SSH tunnel:
ssh -L 2019:localhost:2019 user@caddy-host, then usehttp://localhost:2019Caddy exposes admin via reverse proxy → set
CADDY_HOST=https://caddy-admin.example.com
The Caddy admin API has no authentication by default. If you expose it beyond localhost, add Caddy basic auth to that route.
Tools
Tool | Description |
| Caddy version and loaded modules |
| Full configuration as JSON |
| All virtual hosts with upstream targets |
| Upstream proxy health status |
| TLS automation policies and ACME issuers |
| Convert a Caddyfile snippet to JSON |
| Reload config from a JSON string or file path |
Development
git clone https://github.com/aaronckj/mcp-caddy
cd mcp-caddy
uv sync --extra dev
uv run pytest -vMaintenance
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
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- 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/aaronckj/mcp-caddy'
If you have feedback or need assistance with the MCP directory API, please join our Discord server