You can manage a Panelica web server with Claude Code by running a single claude mcp add command with your panel's API credentials as environment variables. Once added, Claude Code can create accounts, provision domains, manage databases, deploy applications and read logs on your server directly from the terminal.
Before you start
You need two things: a running Panelica panel reachable at its External API URL, and Claude Code installed locally. Everything else — the tool catalogue, the API calls, the authentication — is handled by the Panelica MCP server, which Claude Code will fetch on demand via npx.
Step 1: Generate an API key
In your panel, go to Developer > API Keys and create a new key. Choose the scopes deliberately — nothing is preselected. For a first connection, a reasonable starting set is read access across domains, databases and logs, plus write access to whatever you intend Claude Code to actually manage for you. You can always create a second, more permissive key later once you trust the workflow. The panel gives you an API key and a matching secret exactly once; store the secret somewhere safe, as it is not retrievable afterward.
Step 2: Add the MCP server to Claude Code
From your terminal, run:
claude mcp add panelica \
-e PANELICA_BASE_URL=https://your-panel:8443/api/external \
-e PANELICA_API_KEY=pk_... \
-e PANELICA_API_SECRET=sk_... \
-- npx -y panelica-mcp
Replace your-panel with your panel's hostname or IP address, and the key and secret with the values from Step 1. This one command registers the Panelica MCP server with Claude Code, tells it how to reach your specific panel, and how to authenticate.
Step 3: Confirm the connection
Start a new Claude Code session and ask it something read-only first, to confirm the connection without risking any change to your server:
List the domains on my Panelica server and show their SSL certificate expiry dates.
If the credentials and URL are correct, Claude Code calls the relevant tools from the 404-tool catalogue and returns real data pulled live from your panel — not a guess, not cached documentation.
What you can do once it is connected
From here, Claude Code has access to the same 406 endpoints that drive the panel's own dashboard, organized as MCP tools across accounts, domains, DNS, databases, email, FTP, SSL, backups, files, Cloudflare, Docker, application hosting, Git, logs, security and server control. In practice that means requests like:
- "Create a new hosting account for a client named acme-corp with a 10GB quota."
- "Provision a MySQL database for the staging environment and hand me the credentials."
- "Check why example.com's certificate has not auto-renewed and fix it."
- "Deploy the latest commit on the main branch to the production app."
- "Show me the last hour of error logs for the Python application."
Each of these resolves through real API calls with real side effects, so treat a Claude Code session connected to a production panel the way you would treat SSH access — deliberately, and with a key scoped to what the session actually needs. For a deeper look at how scoping and the read-only / mutating / destructive tool labels protect you here, see Is It Safe to Give an AI Access to Your Server?
A full example: WordPress in one conversation
Domain creation, database provisioning, WordPress installation and SSL issuance are all separate API calls under the hood, but they read as one request to Claude Code. We recorded a full walkthrough of exactly this in Create a WordPress Site by Talking to an AI — the same MCP connection described above, doing real provisioning work end to end.
Not using Claude Code?
The same MCP server works with any MCP-compatible client. If your workflow runs through Codex CLI or another assistant instead, the setup differs only in where the configuration lives — see How to Connect Codex CLI to Your Hosting Panel via MCP.
Troubleshooting
Claude Code says the server failed to start
Confirm npx can reach the internet and that panelica-mcp resolves on npm; the container image at ghcr.io/panelica/panelica-mcp:latest is an alternative if your environment restricts npx.
Tool calls return authentication errors
Double-check the API key and secret were copied without trailing whitespace, and that the key has not been revoked from Developer > API Keys.
A tool call is rejected as out of scope
This is expected behavior, not a bug — the key you generated does not include that permission. Edit the key's scopes in the panel and reconnect.
Connect Claude Code to your own server today. Generate a scoped key, run the claude mcp add command above, and start managing your server in plain English. Source and issues: github.com/Panelica/panelica-mcp. New to Panelica? See features and pricing.