@yawlabs/caddy-mcp
MCP server for managing Caddy web servers via the admin API
Versions
1.3.1latest1.3.01.2.91.2.81.2.7+ show 15 moreshow less
1.2.61.2.51.2.41.2.31.2.21.2.11.2.01.1.01.0.11.0.00.3.10.3.00.2.00.1.10.1.0Tools 18
caddy_reverse_proxy Add a reverse proxy route. The most common operation — just specify where traffic comes from and where it goes. Example: from=
caddy_add_route Add a route with full control over match conditions and handlers. Supports any Caddy handler (reverse_proxy, file_server, static_response, redirect, encode, headers, etc.).
caddy_list_routes List all routes on a Caddy HTTP server with a human-readable summary of matchers and handlers, followed by the raw route JSON.
caddy_remove_route Remove a route. Target by @id (preferred — stable across reorderings) or by array index on a specific server. Index-based removal is a two-step read-then-delete and can race against concurrent edits; prefer @id when possible.
caddy_tls Get or configure TLS/HTTPS settings. Actions:
caddy_config_get Read Caddy config at any JSON path. Returns the full config when path is empty, or a subtree at a specific path (e.g.,
caddy_config_set Write config at a JSON path. Mode
caddy_config_delete Delete config at a JSON path. Removes the config node at the specified path. Deleting a parent node also deletes every descendant -- e.g. deleting
caddy_load Replace the entire Caddy configuration atomically. Accepts a JSON config object, or a Caddyfile string with format=
caddy_revert Manage config snapshots for rollback. Snapshots are auto-captured before caddy_load and kept in-memory (last 10). Actions:
caddy_config_by_id Access config by @id tag. Any config object with an
caddy_status Check Caddy connectivity and get a config summary: servers, routes, listen addresses, and TLS status.
caddy_list_servers List all configured HTTP servers with their names, listen addresses, route counts, and TLS status. Use this to discover server names before calling route tools.
caddy_upstreams Get the current health status of all reverse proxy upstreams. Shows address, active requests, and failure counts.
caddy_pki Get PKI certificate authority info or the CA certificate chain.
caddy_metrics Get Prometheus metrics from Caddy. Shows request counts, durations, TLS handshake stats, active connections, and more.
caddy_stop Gracefully shut down the Caddy server. Requires confirm=true to prevent accidental shutdown.
caddy_adapt Convert a config in any registered adapter format to Caddy JSON without loading it. Useful for previewing what a Caddyfile produces, or for porting from nginx/yaml configs when Caddy is built with the matching adapter module (
Permissions 4
network medium filesystem low shell high env_vars low