Guide

MCP config file locations: Claude, Cursor, VS Code and more

6 min readBy the Delta MCP team

A grid of twelve AI apps, including Claude, Cursor, VS Code and Windsurf, with the Delta MCP icon, next to the configuration keys mcpServers, servers and context_servers.

The short answer

Most AI apps keep their MCP servers in one JSON file, under the key mcpServers. VS Code uses servers, Zed uses context_servers and Codex a TOML table. Find your app below, edit its file, then quit and reopen it. Tool limits are rare: VS Code allows 128 per request and Windsurf 100.

In this guide

Where is each app’s MCP config file?

Most apps have one file for all your projects and one for a single project. The table gives both, how to open them, and the key your servers go under.

Where is each app’s MCP config file?
AppConfig fileKey
Claude Codeclaude mcp add, or /mcp in a session
  • All projects~/.claude.json
  • One project.mcp.json
Your own servers and each project’s are both in ~/.claude.json. A project’s .mcp.json is meant to be shared with your team.
mcpServers
Claude DesktopSettings, Developer, Edit Config
  • macOS~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows%APPDATA%\Claude\claude_desktop_config.json
Local servers only. Claude Desktop is offered on macOS and Windows.
mcpServers
Cursor
  • All projects~/.cursor/mcp.json
  • One project.cursor/mcp.json
mcpServers
VS CodeCommand: MCP: Open User Configuration
  • macOS~/Library/Application Support/Code/User/mcp.json
  • Windows%APPDATA%\Code\User\mcp.json
  • Linux~/.config/Code/User/mcp.json
  • One project.vscode/mcp.json
serversVS Code’s own format. A portable .mcp.json at the project root uses mcpServers.
WindsurfWindsurf’s documentation now lives under Devin Desktop
  • macOS · Linux~/.config/devin/mcp_config.json
  • Windows%APPDATA%\devin\mcp_config.json
  • ~/.codeium/windsurf/mcp_config.json
The first path is the current one, under Devin Desktop. Earlier Windsurf versions use the last.
mcpServers
Gemini CLI
  • All projects~/.gemini/settings.json
  • One project.gemini/settings.json
mcpServers
Codexcodex mcp add <name> -- <command>
  • All projects~/.codex/config.toml
  • One project.codex/config.toml
The project file only applies to trusted projects.
[mcp_servers.<name>]A TOML table per server.
LM StudioProgram tab, Install, Edit mcp.json
  • ~/.lmstudio/mcp.json
mcpServers
ClineMCP Servers icon, Configure tab, Configure MCP Servers
  • ~/.cline/data/settings/cline_mcp_settings.json
  • …/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
Set CLINE_MCP_SETTINGS_PATH to move the file. Inside VS Code it lives in the user settings folder.
mcpServers
Roo CodeMCP settings, Edit Global MCP or Edit Project MCP
  • All projects…/globalStorage/rooveterinaryinc.roo-cline/settings/mcp_settings.json
  • One project.roo/mcp.json
The project file takes precedence over the global one.
mcpServers
Amazon QChat panel, tools icon
  • All projects~/.aws/amazonq/default.json
  • One project.amazonq/default.json
The panel writes default.json. The older ~/.aws/amazonq/mcp.json and .amazonq/mcp.json are still read by default.
mcpServersIn the older mcp.json.
ZedCommand: zed: open settings file
  • macOS · Linux~/.config/zed/settings.json
  • Windows%APPDATA%\Zed\settings.json
context_servers

~ is your home folder: C:\Users\you on Windows.

How do you set up a remote MCP server in each app?

A remote (HTTP) server needs a URL, but every app names the fields differently. The same entry does not paste from one app to another.

How do you set up a remote MCP server in each app?
AppFieldsGood to know
Claude Code
  • "type": "http"
  • "url"
Claude Desktop — Not written in this file. Add it as a custom connector under Connectors in the app’s settings.
Cursor
  • "url"
  • "headers"optional
VS Code
  • "type": "http"
  • "url"
Windsurf
  • "serverUrl"
  • "url"
  • "headers"optional
Either name works for the address.
Gemini CLI
  • "httpUrl"
  • "url"
  • "headers"optional
httpUrl is streamable HTTP, url is SSE.
Codex
  • url
  • bearer_token_env_varoptional
  • http_headersoptional
Written in the server’s TOML table.
LM Studio
  • "url"
  • "headers"optional
Cline
  • "type": "streamableHttp"
  • "url"
  • "headers"optional
Use sse for the older transport.
Roo Code
  • "type": "streamable-http"
  • "url"
  • "headers"optional
Use sse for the older transport.
Amazon Q — Set in the MCP panel: choose http as the transport, then the URL and optional headers.
Zed
  • "url"
  • "headers"optional

What is the MCP tool limit in each app?

Tool limits are rare. Two apps state one. The others deal with long tool lists in their own way.

What is the MCP tool limit in each app?
AppLimitWhat it does about long tool lists
VS Code 128 tools per request Beyond it, VS Code reports Cannot have more than 128 tools per request. Deselect tools or whole servers in the tools picker, or set github.copilot.chat.virtualTools.threshold so VS Code groups similar tools.
Windsurf 100 tools at a time Switch tools off one by one with disabledTools in the server’s entry.
Cursor None stated Often cited at 40 tools. Cursor’s documentation gives no limit, and its January 2026 post describes loading MCP tool descriptions on demand.
Claude Code None stated Tool Search is on by default: only tool names enter your context until a tool is used.
Codex None stated Each server takes enabled_tools and disabled_tools lists.
Amazon Q None stated Each tool is set to Ask, Always allow or Deny.

Claude Desktop, Gemini CLI, LM Studio, Cline, Roo Code and Zed state no tool limit.

A limit is about how many tools fit. The cost of those tools in tokens is a different question, and the guide below answers it. Why MCP burns your tokens

Why does your MCP server not show up?

Work down this list. It follows the MCP project’s troubleshooting guide, written for Claude Desktop. The first four steps apply to any app.

  1. Quit the app completely, then reopen it

    Claude Desktop’s guide says to quit it completely and start it again after you edit its file. Other apps may reload on their own: reopen yours if the server does not appear.

  2. Check the JSON and the key

    A syntax error, such as a missing quote or a stray comma, can stop the app from reading the file. Then check the key: mcpServers in most apps, servers in VS Code, context_servers in Zed.

  3. Use absolute paths

    The paths in args must be absolute, not relative.

  4. Run the command yourself

    Paste the server’s command and arguments into a terminal. If it fails there, the app cannot start it either.

  5. Read the logs

    Claude Desktop writes mcp.log and one mcp-server-NAME.log per server, in ~/Library/Logs/Claude on macOS and %APPDATA%\Claude\logs on Windows.

  6. On Windows, check APPDATA

    If a log shows ${APPDATA} inside a path, add APPDATA to the server’s env with its full value, such as C:\Users\you\AppData\Roaming\.

Do you have to edit these files by hand?

Not to see them all in one place. Delta MCP reads the MCP settings of twelve AI apps, the ones in the tables above, without changing anything, and lists every server it finds.

To use those servers through Delta MCP, it switches an app over by adding one entry, named mcpdelta. It turns off the direct entry of each server it moves and keeps the original, to put back as it was. Ten apps are switched over for you; Codex and Zed are set up by hand for now. Before each change it saves a dated copy of the file.

Supported apps, in detail

Questions

Where is claude_desktop_config.json?

On macOS it is ~/Library/Application Support/Claude/claude_desktop_config.json, and on Windows %APPDATA%\Claude\claude_desktop_config.json. The quickest way is Settings, Developer, Edit Config, which creates the file if it does not exist. Claude Desktop is offered on macOS and Windows.

Where is Cursor’s mcp.json?

~/.cursor/mcp.json holds the servers for all your projects, and .cursor/mcp.json inside a project holds that project’s. Both use the mcpServers key.

Where is VS Code’s mcp.json?

A project’s is .vscode/mcp.json. Your own is in your user profile folder: run MCP: Open User Configuration to open it. VS Code writes servers under servers, not mcpServers.

What is the MCP tool limit in VS Code?

A chat request can have at most 128 tools enabled at a time, and VS Code reports Cannot have more than 128 tools per request when you go over. Deselect tools or servers in the tools picker, or set github.copilot.chat.virtualTools.threshold so VS Code groups similar tools.

Does Cursor have an MCP tool limit?

Its documentation states none; the figure often quoted is 40 tools. In January 2026 Cursor described loading MCP tool descriptions on demand.

Why does my MCP config not work in another app?

The key and the remote-server fields differ. Most apps use mcpServers; VS Code uses servers, Zed context_servers and Codex a TOML table. A remote server is url in Cursor, serverUrl or url in Windsurf, httpUrl or url in Gemini CLI, and type plus url in Claude Code and VS Code.

Can Claude Desktop use remote MCP servers from its config file?

No. Remote servers are added as custom connectors in the app’s settings. Servers in claude_desktop_config.json are a separate mechanism, and they are not available in Cowork or claude.ai.

Where does Claude Code store MCP servers?

Your own servers, and each project’s, are in ~/.claude.json. A project’s .mcp.json at its root is meant to be shared with your team. Add a server with claude mcp add, or with /mcp in a session. Both files use the mcpServers key.

Where is Windsurf’s mcp_config.json?

Windsurf’s documentation now sits under Devin Desktop and gives ~/.config/devin/mcp_config.json on macOS and Linux, and %APPDATA%\devin\mcp_config.json on Windows. Earlier Windsurf versions use ~/.codeium/windsurf/mcp_config.json. Servers go under mcpServers, and Windsurf allows 100 tools at a time.

Sources

  1. Claude Code, Connect Claude Code to tools via MCP (documentation) The ~/.claude.json and .mcp.json files, the mcpServers key, the http type, Tool Search on by default.
  2. Model Context Protocol, Connect to local MCP servers Claude Desktop’s file paths, Edit Config, the restart, the troubleshooting steps and the log folders.
  3. Claude Help Center, Get started with custom connectors using remote MCP Remote servers are custom connectors, separate from claude_desktop_config.json.
  4. Cursor, Model Context Protocol (documentation) The global and project mcp.json files, mcpServers, url and headers; no tool limit stated.
  5. Cursor, Dynamic context discovery (6 Jan 2026) MCP tool descriptions loaded on demand.
  6. Cursor forum, About limitation of the number of MCP tools A user report of a 40-tool limit.
  7. VS Code, Add and manage MCP servers in VS Code (documentation) The workspace and user mcp.json files, the servers key, the portable .mcp.json, the http type.
  8. VS Code, Use tools with agents (documentation) The 128-tool limit and its error, the tools picker, virtual tools.
  9. Windsurf, Cascade MCP Configuration (documentation, now on Devin Desktop’s site) The config path, mcpServers, serverUrl or url, the 100-tool limit, disabledTools.
  10. Gemini CLI, MCP servers with Gemini CLI (documentation) The settings.json files, mcpServers, httpUrl and url.
  11. OpenAI Codex, Model Context Protocol (documentation) config.toml, the mcp_servers table, url, enabled_tools and disabled_tools, codex mcp add.
  12. LM Studio, Use MCP Servers (documentation) Edit mcp.json, mcpServers, url and headers.
  13. Cline, MCP (documentation) cline_mcp_settings.json and its folder, the Configure tab, streamableHttp.
  14. Roo Code, Using MCP in Roo Code (documentation) The global mcp_settings.json and the project .roo/mcp.json, streamable-http.
  15. AWS, MCP configuration for Q Developer in the IDE default.json and the older mcp.json, the http transport, tool permissions.
  16. Zed, Model Context Protocol (documentation) The settings.json paths, context_servers, url and headers.
  17. Delta MCP, Supported AI apps (documentation) The twelve apps Delta MCP recognizes, the files it reads, and how it switches each one over.

Keep reading

Try Delta MCP on your own tasks

Free, two minutes to set up, and you can put everything back in one click.

Free · No account · Apple chip or Intel

Free · No account

Free · No account

Follow the launch

For Mac, Windows and Linux. No account needed.

Coming soon

Delta MCP is almost here

The free app for Mac, Windows and Linux lands soon. Leave your email and you’ll hear the moment it’s out. No account needed.

We use your email only to tell you once when Delta MCP is out. No newsletter. Privacy policy