Home › Learn › Claude Desktop MCP configuration

Claude Desktop MCP configuration

Updated 2026-11-01

Claude Desktop has two separate ways to add an MCP server: a JSON config file for local servers, and custom connectors in Settings for remote ones. The details below come from the MCP project's connection guides as read on 2026-11-01.

This page is about the desktop app. If you are looking for the claude mcp list or claude mcp add commands, those belong to Claude Code, a different product with its own configuration; see Add an MCP server to Claude Code.

Where the config file lives

OSPath
macOS~/Library/Application Support/Claude/claude_desktop_config.json
Windows%APPDATA%\Claude\claude_desktop_config.json
Linux~/.config/Claude/claude_desktop_config.json

The simplest way to open it: click the Claude menu in your system's menu bar (not the settings inside the Claude window), choose Settings..., go to the Developer tab and click Edit Config. That creates the file if it doesn't exist.

Add a local server

Each entry under mcpServers tells Claude Desktop how to start a server. This is the guide's example, using the reference Filesystem server:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/username/Desktop",
        "/Users/username/Downloads"
      ]
    }
  }
}

On Windows, escape the backslashes in paths: "C:\\Users\\username\\Desktop".

If you already have servers configured, add the new entry alongside them rather than replacing the file's contents.

Then quit Claude Desktop completely and restart it, because the file is read at startup. To confirm the server loaded, open the connectors list in the app and select the server to see its tools.

Node.js is required for servers started with npx. The guide warns that a local server runs with your user account's permissions, so grant it only the directories you are comfortable with Claude reading and modifying. See the security checklist.

Add a remote server

Remote servers don't go in this file in the guide's flow. They are added as custom connectors:

  1. Open Settings and click Connectors in the sidebar.
  2. Click Add, then Add custom connector.
  3. Enter the server's URL, including the protocol and any path. The guide's example server is https://example-server.modelcontextprotocol.io/mcp.
  4. Click Add, then complete the server's authentication prompts.

Browse hosted options in mcpnav's remote MCP servers list, and see remote vs local MCP servers for what changes when a server is a URL.

When a server doesn't show up

The guide's checklist:

  1. Restart Claude Desktop completely.
  2. Check the config file's JSON syntax.
  3. Make sure file paths in the config are valid and absolute, not relative.
  4. Read the logs.
  5. Run the server's command manually in a terminal to see any errors.

Read the logs

OSLog directory
macOS~/Library/Logs/Claude
Windows%APPDATA%\Claude\logs
Linux~/.config/Claude/logs

mcp.log holds general connection logging. Files named mcp-server-SERVERNAME.log hold that server's stderr, and since stdio servers may log everything there, those files aren't limited to errors. To follow them on macOS:

tail -n 20 -f ~/Library/Logs/Claude/mcp*.log

To test a server outside Claude Desktop, use the MCP Inspector. If it works there, the problem is likely in your config.

Where mcpnav fits

mcpnav's Connect block prints an mcpServers JSON snippet for servers with a stdio package in the Registry. Copy the entry inside mcpServers into your config file, then replace any <YOUR_VALUE> placeholders with your own values. The filesystem servers category is a good place to start.

What is not covered here

The guides above use Claude Desktop as their example and don't list every config option. Anthropic's own support articles on custom connectors weren't read for this page; check them for plan availability and admin controls.

Sources

Sources