Is `claude mcp serve` meant to also serve its own configured MCP tools?

Resolved 💬 9 comments Opened Mar 27, 2025 by sjourdan Closed Jan 5, 2026

Here's my situation: I want to expose to Claude Desktop my claude config, including its MCP configuration and the tools, while Claude Desktop has no other MCP configuration.

When I try this, using the following claude_desktop_config.json, I just have access to the standard claude tools (_Bash, dispatch_agent, Edit, GlobTool, GrepTool, LS, Replace, View_), but not the MCP servers available in the very same claude session if not run as MCP server:

{
  "mcpServers": {
    "claude": {
      "command": "claude",
      "args": [
        "mcp",
        "serve"
      ],
      "env": {
        "CLAUDE_CONFIG_DIR": "/path/to/my/special/claudeconfig"
      }
    }
  }
}

Here's the output of the very same claude session if not run as MCP server:

✗ CLAUDE_CONFIG_DIR=/path/to/my/special/claudeconfig claude mcp get anyshift
anyshift:
  Scope: Local (private to you in this project)
  Type: stdio
  Command: npx
  Args: -y @anyshift/anyshift-mcp-server
  Environment:
    API_TOKEN=redacted

Is claude mcp serve meant to also serve its own configured MCP tools?

Using v0.2.55

View original on GitHub ↗

This issue has 9 comments on GitHub. Read the full discussion on GitHub ↗