Skip to content

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
File formatJSON with the root key "mcpServers".
File nameclaude_desktop_config.json

Location

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

  1. 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.
  2. 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": ""
          }
        }
      }
    }

    download as claude_desktop_config.json

    To the entry behind this example

  3. 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.
  4. 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

When it does not work
The client reads the file and does nothingCheck 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 credentialsThe 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 allThen 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

All posts

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