Claude Desktop
Wire acf-mcp into Claude Desktop in under a minute. Local stdio config, no API key required.
acf-mcp runs there over stdio: Claude spawns it for you via npx, no HTTP endpoint to provision.Prerequisites
- Node.js ≥ 18 (check with
node --version) - Claude Desktop — claude.ai/download (macOS or Windows)
Install
Open the config file
The file is created on first launch. If it’s missing, create it.
bash~/Library/Application Support/Claude/claude_desktop_config.jsonShortcut in-app: Claude → Settings → Developer → Edit Config.
Paste the configuration block
If the file already has MCP servers, add the acf entry to the existing mcpServers object.
claude_desktop_config.jsonjson{ "mcpServers": { "acf": { "command": "npx", "args": ["-y", "acf-mcp"] } } }Quit and relaunch Claude Desktop
Cmd+Q on macOS, close all windows then quit via the system tray on Windows. A window refresh does not reload the MCP config.
Verify
Look for the MCP icon at the bottom of the chat
A small hammer/tool icon appears under the input box. Click it: you should see acf listed with its tools (acf.advisor, acf.search, etc).
Ask for a signed smoke test
Type: “Use acf.advisor to assess governance of a B2B lead-qualification agent”.
The reply must contain a signed footer with doctrine_hash, doctrine_signature and generated_at.
Advanced config
Environment variables
Pass variables through the env field. All optional.
{
"mcpServers": {
"acf": {
"command": "npx",
"args": ["-y", "acf-mcp"],
"env": {
"ACF_LOG_LEVEL": "info"
}
}
}
}ACF_LOG_LEVEL— log verbosity (debug | info | warn | error). Defaults to info.
Transport
Claude Desktop only supports stdio transport. For HTTP (multi-user, API-key auth), deploy acf-mcp behind a proxy and use another client (Cursor, Continue) — see /docs/authentication.
Troubleshooting
- MCP icon does not appear. The JSON is invalid. Lint it with jq or any validator; a missing comma silently disables ALL MCP servers.
- “Server disconnected” in Developer logs. npx cannot find Node. On macOS, launch Claude from Finder (not from a terminal that overrides PATH) and check that /usr/local/bin/node exists.
- Tail the MCP logs. macOS:Windows:bash
tail -f ~/Library/Logs/Claude/mcp*.logpowershellGet-Content -Path "$env:APPDATA\Claude\logs\mcp*.log" -Wait - The agent ignores the tool. Name the tool explicitly in the prompt (“use acf.advisor…”). Claude picks its tools; sometimes it needs a nudge on the first try.
- First run is slow. npx downloads the package on first run (~3–10 s). Subsequent runs hit the cache.