PlugWiki
Claude Desktop logo

How to add an MCP server to Claude Desktop

Add local MCP servers to Claude Desktop in claude_desktop_config.json, and hosted ones as custom connectors in Customize, then Connectors.

Local servers
Yes
runs stdio servers
Hosted servers
Yes
connects by URL
Config
JSON
how servers are added
Picks
7
ranked

Claude Desktop has two ways in. Programs that run on your computer go in claude_desktop_config.json (Settings, Developer, Edit Config), and you must fully quit and reopen the app after each change. Hosted servers with a web address are added as custom connectors, which work on every plan, though Free allows only one. Custom connectors connect from Anthropic's cloud, so the server must be reachable on the public internet.

Good for

  • Claude Desktop users who want Claude to work with files and apps on their computer
  • People connecting a hosted service like Notion or Linear by its web address
  • Anyone whose server will not show up after editing the config file
  • Team and Enterprise owners setting up connectors for their organization

Install Claude Desktop

Claude Desktop

  1. 1

    Download and install it.

    Download
  2. 2

    Quit and reopen Claude Desktop to load it.

Local MCP servers that run with npx also need Node.js.

From the vendor's docs. Source.

At a glance

One-click local servers
Desktop extensions (.mcpb)

Add a local MCP server to Claude Desktop

Claude

  1. 1

    Install Node.js if the server uses npx

    Many servers start with npx. Check with node --version; if it fails, install the LTS version from nodejs.org.

  2. 2

    Open the config file

    Click the Claude menu in your system menu bar (not the settings inside the chat window), choose Settings..., open Developer and click Edit Config. The file is:

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

    Add the server under mcpServers

    Each server gets a name, a command and its args. Keys go in env. Use full paths, not relative ones.

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

    To add a second server, add another entry inside the same mcpServers object.

  4. 4

    Quit Claude Desktop completely and reopen it

    Closing the window is not enough. Quit the app (on macOS, Claude menu, Quit) and open it again so it reads the file and starts the server.

  5. 5

    Check that it loaded

    Click Add files, connectors, and more (the + at the bottom left of the message box), point to Connectors, choose Manage connectors and select your server to see its tools.

  6. 6

    Ask Claude to use it

    Claude asks for your approval before each action the server takes.

    Prompt
    What files are in my Desktop folder? Group them by type.

Add a remote MCP server to Claude Desktop

Claude

  1. 1

    Get the server address

    Hosted servers have an address like https://mcp.linear.app/mcp. The server must be reachable from the public internet, because Claude connects to it from Anthropic's cloud, not from your computer.

    Uses Linear

  2. 2

    Open Connectors

    Go to Customize, then Connectors. On Team and Enterprise plans an owner adds the connector first under Organization settings, then Connectors, and members click Connect on it.

  3. 3

    Add a custom connector

    Click + Add, then Add custom connector. Enter a name and the server URL, then click Continue.

  4. 4

    Choose how it signs in

    Review the settings Claude detected. Under Authentication pick Sign in now, Sign in when needed or No sign in. If the service uses an API key instead, add it under Request headers. Click Add.

  5. 5

    Turn it on in a chat

    In a conversation, click +, then Connectors, and switch the connector on. Use the Search and tools menu to turn off any tools you do not want Claude to use in that chat.

    Prompt
    Using Linear, list my open issues due this week, highest priority first.

    Uses Linear

Best MCP servers for Claude Desktop

MCP servers that work in Claude Desktop

40 · official first, then servers with a page, then by stars

Show all 40

Common errors and fixes

  • Server does not show up after editing the config

    Cause: The app was not fully restarted, the JSON has a mistake, or a path is relative.

    Fix: Fix the JSON, use absolute paths, then quit Claude Desktop completely and reopen it.

    claude-desktop Source

  • Server shows up but its tools fail

    Cause: The server program itself errors when it starts or runs.

    Fix: Run the same command in a terminal and read mcp-server-NAME.log in the logs folder.

    claude-desktop Source

  • ENOENT error with ${APPDATA} in the path on Windows

    Cause: The variable is not expanded for the server.

    Fix: Add "APPDATA": "C:\\Users\\you\\AppData\\Roaming\\" to the server's env, and make sure npm is installed globally.

    claude-desktop Source

  • Custom connector will not connect though the URL opens in your browser

    Cause: Connectors reach the server from Anthropic's cloud, not your computer.

    Fix: Host the server publicly, or allow Anthropic's IP addresses in your firewall.

    claude-desktop Source

  • Extension installed but its tools are missing

    Cause: The extension list did not refresh, or a required setting is empty.

    Fix: Restart Claude Desktop and fill in every required field in the extension's settings.

    claude-desktop Source

Verdict

Claude Desktop runs both local servers from its config file and hosted servers as custom connectors, on every plan. The main limit is the hand-edited JSON file, which needs a full restart after each change, while custom connectors connect from Anthropic's cloud and cannot reach private networks.

Claude Desktop runs both local servers from its config file and hosted servers as custom connectors, on every plan. The main limit is the hand-edited JSON file, which needs a full restart after each change, while custom connectors connect from Anthropic's cloud and cannot reach private networks.

Best for

  • Non-developers who want Claude to work with files and apps on their computer
  • Anyone connecting a hosted service through Customize, then Connectors

Skip it if

  • Your hosted server sits behind a VPN or firewall you cannot open to Anthropic
  • You need more than one custom connector on the free plan

Questions

How do I add an MCP server to Claude Desktop?

For a program that runs on your computer, add it to claude_desktop_config.json through Settings, Developer, Edit Config, then quit and reopen the app. For a hosted server, add a custom connector in Customize, then Connectors.

Where is claude_desktop_config.json?

On macOS it is ~/Library/Application Support/Claude/claude_desktop_config.json, on Windows %APPDATA%\Claude\claude_desktop_config.json, and on Linux ~/.config/Claude/claude_desktop_config.json. Edit Config in the Developer settings creates it if it does not exist.

How do I add a remote MCP server to Claude Desktop?

Add it as a custom connector: Customize, Connectors, + Add, Add custom connector, then paste the URL. The config file is for local programs; remote connectors run through your Claude account.

Why is my MCP server not showing up in Claude Desktop?

Quit Claude Desktop fully and reopen it, then check the file for a JSON mistake and make sure every path is absolute. Run the server command in a terminal to see its error, and read mcp.log in the logs folder.

Where are the Claude Desktop MCP logs?

macOS ~/Library/Logs/Claude, Windows %APPDATA%\Claude\logs, Linux ~/.config/Claude/logs. mcp.log covers connections, and mcp-server-NAME.log holds each server's own output.

Is there an easier way than editing JSON?

Yes, desktop extensions. Open Settings, Desktop app, and Manage next to Extensions, then Browse extensions and click Install. A custom .mcpb file installs from Advanced settings, Extension Developer.

Can I add custom connectors on the free plan?

Yes, one. Custom connectors work on Free, Pro, Max, Ultra, Team and Enterprise, and Free users are limited to one.

Why will my custom connector not connect when the URL works in my browser?

Claude connects from Anthropic's cloud, not from your computer. A server on a private network or behind a VPN needs Anthropic's IP addresses allowed in its firewall.

Can I move my Claude Desktop servers into Claude Code?

Yes. On macOS or WSL, run claude mcp add-from-claude-desktop and pick the servers to copy.

Information

updated Nov 1, 2026

Transports
stdio, Streamable HTTP
Config file (macOS)
~/Library/Application Support/Claude/claude_desktop_config.json
Config file (Windows)
%APPDATA%\Claude\claude_desktop_config.json

WebsiteDocs

Sources

Docs, issue trackers and discussions this page is built from.

Show all 5
  1. Connect to local MCP servers · modelcontextprotocol.io
  2. Get started with custom connectors using remote MCP · support.claude.com
  3. Get started with local MCP servers on Claude Desktop · support.claude.com
  4. Connect to remote MCP servers · modelcontextprotocol.io
  5. Connect Claude Code to tools via MCP · code.claude.com

Updated Nov 1, 2026.