MCP clients — Claude Desktop · Cursor · Cline · Roo Code · Continue · VS Code · Zed
If MCP is the standard, the clients are the entry points that actually expose it to users. Multi-client environments, where multiple clients share the same server simultaneously, are the reality.
Table of contents
If MCP is the standard, the clients are the entry points that actually expose it to users. Multi-client environments, where multiple clients share the same server simultaneously, are the reality.
1. About clients
An MCP client is both an LLM host and the part that maintains a 1:1 connection to one MCP server. From the user's perspective, an MCP client is recognized as "an app that can register MCP servers and use the tools."
| Client | Form | Origin |
|---|---|---|
| Claude Desktop | Desktop app | Anthropic. |
| Cursor | AI-first IDE (VS Code based) | Anysphere. |
| Cline | VS Code extension | saoudrizwan. |
| Roo Code | VS Code extension (fork of Cline) | RooVetGit / Roo Code team. |
| Continue | VS Code · JetBrains extension | Continue Dev. |
| VS Code (Copilot Chat) | Editor + extension | Microsoft. |
| Zed | Editor | Zed Industries. |
| Goose | Desktop · CLI | Block. |
New clients keep emerging, so the table above is partial.
2. Configuration format
Most clients share an mcpServers key structure. The differences are file location and additional fields.
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "."],
"env": { "EXTRA": "1" }
},
"remote": {
"url": "https://example.com/mcp",
"headers": { "Authorization": "Bearer ..." }
}
}
}
Configuration file locations (subject to change over time):
| Client | Location |
|---|---|
| Claude Desktop (macOS) | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Claude Desktop (Windows) | %APPDATA%\Claude\claude_desktop_config.json |
| Cursor | Project or ~/.cursor/mcp.json |
| Cline / Roo Code | VS Code settings or workspace .mcp.json |
| VS Code | .vscode/mcp.json or user settings |
| Zed | context_servers in ~/.config/zed/settings.json |
3. Transport · permissions
Transports:
- STDIO — supported by virtually all clients. The most common shape.
- HTTP / Streamable HTTP — added relatively late, gradually becoming standard.
Tool permission models:
- Auto-execute — some clients allow automatic calls for safe tools.
- Per-call approval — ask the user on each call.
- Per-session approval — pass once at the start, then through the session.
- Allow-list — pre-allow by tool/server name.
Even with the same server, the user experience differs sharply depending on the client's permission model.
4. Notes per client
Claude Desktop — one of the original MCP implementations. macOS and Windows desktop app, Claude as the host model. Supports all three primitives — resources, tools, prompts.
Cursor — an AI-first IDE based on a VS Code fork. Manages MCP server registration at project and user levels; tools and resources flow into the agent mode's context.
Cline — a VS Code extension maintained by saoudrizwan. Started as an autonomous coding agent; MCP support was added later. The user approval steps are clearly defined.
Roo Code — a variant extension that started as a fork of Cline. Multiple modes (Code · Architect · Debug) and user-defined modes, plus MCP server integration.
Continue — an open-source coding assistant extension. Supports both VS Code and JetBrains. MCP integration was added relatively early.
VS Code (Copilot Chat) — Microsoft added MCP integration to VS Code from late 2024 onward. Supports .vscode/mcp.json, settings sync, and discovery.
Zed — a collaborative editor written in Rust. Registers MCP servers under the name context_servers.
Goose — an open-source agent (desktop · CLI) released by Block. Acts as an MCP-compatible client and supports various model backends.
5. Multi-client
The same filesystem server can be used by Claude Desktop · Cursor · VS Code at the same time. Each client either spawns its own child process (STDIO) or opens separate sessions to the same HTTP endpoint (HTTP).
6. Environment variables and credentials
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_..." }
}
}
}
Putting keys directly in the config file risks exposure during backup or sync. OS keychain and secret-manager integration is offered by some clients.
7. Workspace vs user settings
- Workspace settings — per-project servers. Suited for team sharing.
- User settings — common to all projects. Personal credentials.
- Global / system — some clients add an extra layer.
When the same name conflicts, the precedence varies by client. Follow each client's documented rule.
Windows vs Unix differences:
- Windows —
%APPDATA%·%USERPROFILE%, backslash paths. - macOS · Linux —
~, slash paths. - If executables like
npxare not on PATH, STDIO server startup fails.
8. Common pitfalls
Client version drift — the same server works on client A but partially on B. Differences in SDK or spec version.
Config file location changes — client updates may move the file location or rename keys. Read the release notes.
JSON comments — mcp.json accepting standard JSON only fails on comments. Some clients support JSONC.
Permission overload — when one server exposes too many tools the model picks the wrong one. Split servers per task.
Plain-text credentials — keys leak via config-file backup or sync. Use environment variables and secret managers.
Conflicting server names — when the same name exists at multiple layers (user, workspace), it's unclear which one applies.
Insufficient logging — some clients don't expose MCP traffic logs by default. Find the debug option's location.
Closing thoughts
MCP clients are growing fast, and the multi-client environment, where the same server is shared by multiple clients, is becoming the norm. Separating credentials into environment variables and defaulting tool permissions to per-call approval reduces operational incidents.
Next
- mcp-context7
- mcp-figma
We refer to MCP Quickstart · Cursor MCP · VS Code MCP · Zed Context Servers · Cline · Roo Code · Continue.
More in agent-tooling
All in this category →- Google Stitch — UI design from natural language (Gemini 2.5)
- AI Web IDEs — Replit · Bolt.new · v0 · Lovable · Google AI Studio Build
- AI browser assistants — Atlas · Comet · Edge Copilot · Dia · Brave Leo · Chrome Gemini
- AI workflow tools — n8n · Dify · LangFlow · Flowise · Make · Zapier
- AI coding CLIs — Claude Code · Gemini CLI · Codex CLI · Aider · Plandex · OpenCode
- AI coding IDEs — Cursor · Windsurf · Kiro · Trae · Antigravity, etc.
Related posts
Claude Code and Skills — reusable command bundles
Claude Code is Anthropic's terminal-based coding assistant CLI, released in February 2025 (research preview at the time). It later moved to general availability and gained features like IDE integration, GitHub Actions,…
AI coding IDEs — Cursor · Windsurf · Kiro · Trae · Antigravity, etc.
Around the time Cursor went GA in 2023, IDEs where "AI is the main interaction" multiplied fast. Various attempts have been made, either as VS Code forks or new editors. Capability evaluations change quickly with time,…