Custom MCP servers in ~/.claude.json never loaded (v2.1.45)
Summary
Custom MCP servers configured via claude mcp add are written to ~/.claude.json correctly but never loaded at runtime. The /mcp UI only shows first-party connectors (e.g. Supabase). Debug logs show zero spawn/connection attempts for locally-configured servers.
Environment
- Claude Code version: 2.1.45 (latest as of 2026-02-17)
- Platform: macOS Darwin 25.3.0
- Node: v25.4.0
- Install method: native
Reproduction
- Register an HTTP MCP server:
``bash``
claude mcp add --transport http mumo https://example.com/mcp
- Verify it was written:
``bash``
claude mcp list
# Shows: mumo: http - https://example.com/mcp
- Verify
~/.claude.jsonhas the entry underprojects.<path>.mcpServers - Start Claude Code in that project directory
- Run
/mcp— server does not appear - No
mcp__mumo__*tools available - Debug logs (
~/.claude/debug/*.txt) contain zero references to the server — no spawn attempts, no connection attempts, no errors
What was tried
| Approach | Result |
|----------|--------|
| .mcp.json with type: "stdio" | Not loaded |
| .mcp.json with type: "http" | Not loaded |
| claude mcp add at project scope (stdio) | Not loaded |
| claude mcp add at user scope (stdio) | Not loaded |
| claude mcp add --transport http | Not loaded |
| enabledMcpjsonServers: ["mumo"] | Not loaded |
| enableAllProjectMcpServers: true | Not loaded |
| Minimal hello-world MCP server (1 tool) | Not loaded |
| Absolute path to binary (no npx) | Not loaded |
Server verification
The MCP server works correctly when tested independently:
# Streamable HTTP transport (deployed)
curl -X POST https://example.com/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}'
# Returns valid MCP handshake response with tools
Key observation
The only working MCP server is Supabase, configured via the Claude.ai connectors system (first-party integration). No locally-configured servers — stdio or HTTP — are ever loaded, regardless of configuration method.
Expected behavior
Servers registered via claude mcp add or .mcp.json should be discovered and connected at startup.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗