Skip to main content
Most problems come down to the config file, the API key, or a client that needs a full restart. Work through the section that matches your symptom.

Server not connecting

The hosted server needs no local install and sidesteps Node.js version issues. If the local npx server won’t start, switch to the hosted config while you debug.
The local server needs Node.js 20+. Check with:
If it’s older, install Node 20+ from nodejs.org or use the hosted server instead.
The file must be in the exact place your client reads. For Claude Desktop see Config file locations; Cursor uses .cursor/mcp.json and Claude Code manages config via claude mcp.
A stray trailing comma or a curly “smart quote” breaks the whole config. Paste it into a JSON validator and confirm every quote is a straight ".
Closing the window is not enough — quit the app completely (Claude Desktop: Cmd/Ctrl+Q) and reopen it so it reloads the MCP config.

Authentication errors

Confirm the key exists and is enabled under Workspace settings → API keys. Copy it fresh rather than retyping it.
A leading/trailing space, a newline, or a curly quote around the key will fail auth. Paste it as plain text with no surrounding characters.
For the hosted server the header must be exactly X-API-Key: your_api_key (or X-API-Key: ${CALIBRATE_API_KEY} with the env var set). For the local server the key goes in CALIBRATE_API_KEY_AUTH or the --api-key-auth flag.

Tools not appearing

Your client logs MCP connection and auth errors — Claude Desktop writes them under ~/Library/Logs/Claude/ (macOS). Look for a failed connection or a 401.
Test the local server directly and watch the output:
Or list the tools over the hosted endpoint:
A tool that reads works but a write fails? Check the key is allowed to perform that action in your workspace.

Permission denied errors

Fix config-file permissions and create the directory if it’s missing:
Run your editor as Administrator and make sure the config file isn’t marked Read-only in its file properties.
Clear the npx cache if a stale download blocks startup:

Firewall or proxy issues

The server needs outbound HTTPS to the Calibrate API and, for the hosted setup, to the MCP endpoint on *.run.app. Behind a proxy, set HTTPS_PROXY before launching:

Still stuck?

Gather your client’s MCP logs and the exact config you used (with the key redacted), then open an issue on github.com/dalmia/calibrate-mcp.