ToolMCP
MCP config generator
Describe the servers once; get the file the client actually reads — a project
.mcp.json, the claude mcp add commands, Claude Desktop’s
claude_desktop_config.json, or Cursor’s .cursor/mcp.json.
It all happens in this page: no upload, no account, tokens included.
{
"mcpServers": {
"filesystem": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/path/to/your/project"
]
}
}
} save as .mcp.json in your project root
Then check it
claude mcp list
Claude Code asks you to approve each server from a project .mcp.json the
first time. claude mcp get <name> shows one server’s status.
How the files relate
Claude Code has three MCP scopes, and the same server name can be defined in more than one of them. It connects once, using the entry from the highest-precedence source — the whole entry, not a merge of the fields.
- 01 Local — the default Stored in
~/.claude.jsonunder that project’s path, so it loads in that project only and stays private to you. This is whatclaude mcp addwrites when you pass no--scope. highest - 02 Project —
.mcp.jsonA file at the project root, meant for version control. Claude Code prompts for approval before it uses a server from this file in an interactive session;claude mcp reset-project-choicesclears those answers. shared - 03 User — every project Also stored in
~/.claude.json, at the top level rather than under a project. Added with--scope user, private to your account, available in all your projects. lowest
Other clients read their own files. Claude Desktop reads
claude_desktop_config.json — on macOS
~/Library/Application Support/Claude/, on Windows
%APPDATA%\Claude\ — and the documented shape there is a local
command/args/env server. A remote server is
added in the app instead: Settings → Connectors → Add custom connector. Cursor reads
.cursor/mcp.json in the project, or ~/.cursor/mcp.json for every
project, and its examples carry no type key.
A url needs a type in Claude Code. An entry with no
type is read as a stdio server, so a URL entry copied from another client’s
docs fails until you add "type": "http" (or "sse" /
"ws"). In JSON, streamable-http is accepted as an alias for
http.
Sources: Claude Code · MCP · MCP · connect local servers · MCP · connect remote servers · Cursor · MCP
Guides that use these files
- 05.01 How to Install an MCP Server in Claude Code Add an MCP server with claude mcp add: -- for local commands, --transport http for hosted ones, --scope to choose who gets it, then /mcp to confirm. 3 min
- 05.03 The Best MCP Servers to Start With Seven MCP reference servers are still maintained — filesystem, fetch, git, memory, time. GitHub, Postgres, Slack and Puppeteer were archived. 4 min
- 05.04 MCP in Claude Code vs Claude Desktop claude mcp add registers a server from the terminal; Claude Desktop edits a JSON config from Settings. Same protocol, two setup flows and one scope trick. 3 min
- 05.05 How to Build an MCP Server in Python Write a one-tool MCP server named word_count with the official Python SDK, run it over stdio, and call it from Claude Code with claude mcp add. Copy-paste. 4 min