Best MCP Servers for VS Code and GitHub Copilot in 2026
VS Code added MCP support mid-2025 via GitHub Copilot. The setup is different from Claude Desktop and Cursor. Here are the 10 best servers with exact configs.
VS Code became the last major editor to ship MCP support, and in some ways, it did it best. Since going GA in VS Code 1.102 (July 2025), the implementation has matured into the most enterprise-ready MCP client available: built-in sandboxing, OAuth authentication, Settings Sync across devices, and a curated MCP marketplace in the Extensions panel. Toolradar data: Our developer tools catalog runs to 1,627 entries with 594 of them completely free, the kind of open ecosystem that makes MCP servers easy to bolt onto VS Code and Copilot.
But the setup is different from Cursor or Claude Desktop. VS Code uses mcp.json (not settings.json), the root key is "servers" (not "mcpServers"), and MCP tools only work in Copilot's Agent mode. Get any of these wrong and your servers silently fail to load.
This guide covers how MCP works in VS Code, the 10 servers worth installing, and the VS Code-specific features that other clients lack.
How MCP Works in VS Code
MCP in VS Code runs through GitHub Copilot. Servers register as tools that Copilot's Agent mode can call during conversations. This is the key difference from Cursor and Claude Code, where MCP tools are available in all chat modes.
Three things to know upfront:
-
Agent mode is required. MCP tools are invisible in Ask or Edit mode. Open Copilot Chat, click the mode dropdown, select "Agent." Update to VS Code 1.99+ if you do not see it.
-
Config lives in
mcp.json. Open the Command Palette (Cmd+Shift+P) and run MCP: Open User Configuration. For per-project configs, create.vscode/mcp.jsonin your workspace root. -
The root key is
"servers", not"mcpServers". Cursor and Claude Desktop use"mcpServers". Copy-pasting a Cursor config without changing this key is the number-one setup mistake.
{
"servers": {
"server-name": {
"command": "npx",
"args": ["-y", "@package/mcp-server"],
"env": { "API_KEY": "your_key" }
}
}
}
Transports: stdio (local subprocess, most servers), HTTP (remote endpoints like GitHub MCP), and SSE (streaming remote servers). Workspace vs. user config: Put team servers (Context7, Playwright) in .vscode/mcp.json and commit it. Put servers with personal API keys in your user config, which syncs across devices via Settings Sync.
Setup: Your First MCP Server in 3 Minutes
Prerequisites: VS Code 1.99+, Node.js 18+, GitHub Copilot subscription (free tier works).
Step 1: Command Palette → MCP: Open User Configuration.
Step 2: Add Context7 (no API key needed):
{
"servers": {
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"]
}
}
}
Step 3: Save. VS Code prompts you to start the server. Click Start (or run MCP: List Servers to verify).
Step 4: Open Copilot Chat in Agent mode and ask a question. Copilot shows a confirmation dialog before calling any MCP tool. Click Allow.
Alternative: Open the Extensions panel (Cmd+Shift+X), search @mcp, and install servers from VS Code's curated marketplace. VS Code writes the config entry for you.
10 Best MCP Servers for VS Code and Copilot
Tier 1: Install These First
1. GitHub MCP Server
Search repos, manage issues, create PRs, review code, authenticated via Copilot's built-in OAuth. No token, no local process. The tightest integration in the VS Code MCP ecosystem.
"github": {
"url": "https://api.githubcopilot.com/mcp/"
}
Remote servers from Supabase and Neon (below) also sign you in with OAuth, but this MCP server reuses the GitHub account Copilot already knows, so there is nothing to configure.
2. Context7 MCP
Injects current, version-specific documentation into the prompt. Copilot writes Next.js 15 code using actual Next.js 15 docs, not stale patterns from its training data. No API key.
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"]
}
3. Playwright MCP
Browser automation and E2E testing from Copilot chat. "Write a test for the login flow", Copilot generates it, Playwright runs it, results return inline. Microsoft-maintained, so VS Code integration is polished.
"playwright": {
"command": "npx",
"args": ["-y", "@playwright/mcp@latest"]
}
Tier 2: Add Based on Your Stack
4. Filesystem MCP
Controlled read/write access to files. Scoped to directories you allow, pair with VS Code's built-in sandboxing (macOS/Linux) for defense in depth.
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "${workspaceFolder}"],
"sandboxEnabled": true,
"sandbox": { "filesystem": { "allowWrite": ["${workspaceFolder}"] } }
}
5. Sentry MCP
Pulls errors, stack traces, and performance data from Sentry into Copilot. Uses VS Code's ${input:} syntax to prompt for the token at startup, secrets stay out of config files.
"sentry": {
"command": "npx",
"args": ["-y", "@sentry/mcp-server"],
"env": { "SENTRY_ACCESS_TOKEN": "${input:sentryToken}" }
}
Define the input variable alongside the server:
{
"inputs": [{ "type": "promptString", "id": "sentryToken", "description": "Sentry API Token", "password": true }],
"servers": { ... }
}
6. Supabase MCP
Query your database, explore schemas, run SQL, manage migrations. Essential for any Supabase backend. Supabase now runs it as a hosted server at mcp.supabase.com with an OAuth login, so there is no token to paste. Two URL parameters matter: project_ref scopes it to one project, and read_only=true runs every query as a read-only Postgres user.
"supabase": {
"type": "http",
"url": "https://mcp.supabase.com/mcp?project_ref=your-project-ref&read_only=true"
}
7. Firecrawl MCP
Scrapes any URL into clean Markdown, documentation, reference material, competitor pages. Handles JavaScript-rendered sites and batch processing.
"firecrawl": {
"command": "npx",
"args": ["-y", "firecrawl-mcp"],
"env": { "FIRECRAWL_API_KEY": "${input:firecrawlKey}" }
}
8. Postgres via MCP Toolbox for Databases
Connects Copilot to any PostgreSQL database: schema exploration, SQL, and diagnostics such as locks, indexes and slow queries. MCP Toolbox for Databases is Google's open-source, actively maintained MCP server, and the same --prebuilt flag also covers MySQL, SQL Server, BigQuery, AlloyDB and more. Its execute_sql tool runs whatever SQL it is given, so connect with a read-only database role. Never commit credentials, use ${input:} or "envFile".
"postgres": {
"command": "npx",
"args": ["-y", "@toolbox-sdk/server", "--prebuilt=postgres", "--stdio"],
"env": {
"POSTGRES_HOST": "localhost",
"POSTGRES_DATABASE": "${input:pgDatabase}",
"POSTGRES_USER": "${input:pgUser}",
"POSTGRES_PASSWORD": "${input:pgPassword}"
}
}
On Neon, use Neon's own hosted MCP server instead: point VS Code at https://mcp.neon.tech/mcp, sign in with OAuth, and add ?readonly=true to block writes. Neon itself recommends it for development, not production.
Avoid the old reference Postgres server. @modelcontextprotocol/server-postgres, which many older guides (including an earlier version of this one) recommend, now lives in the archived modelcontextprotocol/servers-archived repository, labeled no longer maintained, and npm marks the package as unsupported. Datadog Security Labs showed that its read-only mode can be bypassed with stacked SQL statements, and the last npm release (0.6.2) never received the fix. If it is in your mcp.json, replace it.
9. Linear MCP
Issue tracking from Copilot. Create, update, and search Linear issues inline. "Create a bug ticket for the auth regression", Copilot handles labels, projects, and assignment.
"linear": {
"command": "npx",
"args": ["-y", "@mcp-devtools/linear"],
"env": { "LINEAR_API_KEY": "${input:linearKey}" }
}
10. Memory MCP
Persistent memory across sessions. Stores architectural decisions, conventions, and project context in a local file. Commit it to source control so the team shares context.
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"],
"env": { "MEMORY_FILE_PATH": "${workspaceFolder}/.copilot-memory.json" }
}
VS Code-Specific Tips
Input variables keep secrets safe. The ${input:variableId} syntax prompts for values at server startup. Set "password": true to mask input. This feature is exclusive to VS Code, Cursor and Claude Desktop have no equivalent.
Settings Sync covers MCP. User-level configs sync across devices automatically. Enable/disable state is stored separately, so toggling a server off on your laptop does not affect your desktop.
Sandboxing restricts untrusted servers. VS Code is the only MCP client with built-in sandboxing (macOS/Linux). Restrict filesystem paths and network domains per server via the "sandbox" config key.
Dev Containers work too. Define MCP servers in devcontainer.json under customizations.vscode.mcp. Servers start automatically when the container launches.
Quick commands: MCP: List Servers (status check), MCP: Add Server (guided setup), Extensions panel @mcp (marketplace), code --add-mcp '{...}' (CLI).
VS Code MCP vs. Cursor vs. Claude Code
| Feature | VS Code + Copilot | Cursor | Claude Code |
|---|---|---|---|
| Config file | mcp.json ("servers") | mcp.json ("mcpServers") | ~/.claude.json ("mcpServers") |
| Transports | stdio, HTTP, SSE | stdio, SSE, Streamable HTTP | stdio, SSE |
| Auth | OAuth + input variables | API keys only | API keys, OAuth via CLI |
| Sandboxing | Built-in (macOS/Linux) | None | Filesystem permissions |
| Settings Sync | Yes | No | No |
| MCP marketplace | Yes | Curated list | None |
| Tool limit | No hard limit | 40 tools | No hard limit |
| Agent mode required | Yes | No (all modes) | No (always on) |
| Enterprise policies | IT admin toggle | None | None |
Choose VS Code if you use GitHub Copilot, need Settings Sync and shared workspace configs, or require enterprise policy controls. The GitHub MCP Server's zero-config OAuth is unmatched.
Choose Cursor if you want MCP in every chat mode without switching to Agent, or prefer one-click setup. Full Cursor MCP guide.
Choose Claude Code if you work in the terminal and need deep filesystem access without sandboxing. Full Claude Code MCP guide.
Bottom Line
VS Code's MCP implementation prioritizes security and team workflows. Sandboxing, input variables, Settings Sync, and enterprise policies make it the strongest choice for professional teams on GitHub Copilot.
Start with GitHub MCP Server (zero config), Context7 (no API key), and Playwright (Microsoft-maintained). Add Supabase, Sentry, or Linear as your stack demands, and for databases use a maintained server (MCP Toolbox, Supabase or Neon) rather than the archived Postgres reference server. Server status checked on GitHub and vendor docs in September 2026. For a broader overview, see our complete guide to the best MCP servers in 2026.
From the team behind Toolradar
Show up when someone asks ChatGPT
ChatGPT, Claude, and Perplexity already retrieve Toolradar. We run the content and the 6 newsletters that keep you in those answers.
See how we work- mcp
- vscode
- github-copilot
- mcp-servers
- developer-tools

Written by
Louis Corneloup
Related Articles
IDE and code editor statistics 2026
First-party data on the 125 IDEs and code editors Toolradar tracks: 90% free tier, the highest in this wave, and Turbopack at 3.00 from 4,912 reviews against Notepad++ at 4.60.
API tools statistics 2026
First-party data on the 462 API tools Toolradar tracks: 4.4% of the catalog, 74% free tier, and only 71,974 reviews. APIs are used more than they are rated.
Developer tools statistics 2026
First-party data on the 1,746 developer tools Toolradar tracks: 16.4% of the entire catalog, and 81% still give you a free way in. This is the largest unpaid category we publish.