Set up MCP servers in Claude Desktop
Which configuration file format Claude Desktop reads, what it is called and where it belongs – from the vendor’s own documentation, with source and collection date.
| File format | JSON with the root key "mcpServers". |
|---|---|
| File name | claude_desktop_config.json |
Location
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
|---|---|
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
Source: modelcontextprotocol.io, „Connect to local MCP servers", retrieved on 2026-08-27
In three steps
- Create the file claude_desktop_config.json – for Claude Desktop it lives at ~/Library/Application Support/Claude/claude_desktop_config.json. The full table per operating system is above.
- Put the server block under the key mcpServers. That key is what tells the clients apart.
Example from today’s directory, produced by the setup builder of this site. Entry: io.github.transloadit/mcp-server
{ "mcpServers": { "io-github-transloadit-mcp-server": { "command": "npx", "args": [ "-y", "@transloadit/mcp-server" ], "env": { "TRANSLOADIT_SECRET": "" } } } } - Completely quit Claude Desktop and restart it. The application reads the file at start; closing the window is not enough. This is what the source named above states.
- Check that the file stays valid and that you fill in the values of the secret variables yourself: the registry does not know them and writes only their names.
The root key
A file with the wrong root key is read and does nothing – without an error message. That is why the format is stated here next to the location.
Other clients read a different format: Claude Code, Visual Studio Code, Codex CLI. All clients side by side
Build a configuration for Claude Desktop
The builder forms the block from the registry data of a chosen server and prints it in exactly the format Claude Desktop reads.
Build a configuration for Claude Desktop
What the builder can produce a file for
16,884 of the 47,245 published entries carry a package coordinate from which a published start template forms a block. The remaining 30,361 name no package or a source without a published template; for those the builder produces nothing and says why.
When it does not work
| The client reads the file and does nothing | Check the file location and root key together. The file generated here for Claude Desktop uses mcpServers. Valid JSON alone does not establish that its format matches the chosen location. |
|---|---|
| The server starts and reports missing credentials | The generated variables carry their name and an empty value. Which values belong there is stated by the vendor – the registry does not collect them. |
| No block is produced for an entry at all | Then the registry entry carries no package, its package registry has no disclosed template here, or its identifier does not look like a package name. The builder names the reason; nothing is invented. |
Setup and connections
What is NOT stated here
This registry holds no statement about which server works with which client. No manifest declares a client list, and the registry invents none. What is stated here is the file format and its location according to the client’s own documentation – not a claim about a server.
Client knowledge version: 1
tracevero · https://tracevero.com/klient/claude-desktop