The best MCP servers for coding are one well-scoped server per workflow: GitHub for repos, Playwright or Chrome DevTools for the browser, Context7 for docs, Figma for designs, Supabase for a development database, and the reference Filesystem and Git servers for local work. Every server here has an official repo or vendor docs page, and every config snippet follows the client's own MCP docs, checked October 2026.
The best MCP servers for coding are the ones that cover a gap in your workflow with an official, maintained server: GitHub for repos and pull requests, Playwright or Chrome DevTools for the browser, Context7 for current docs, Figma for designs, Supabase for a development database, and the reference Filesystem and Git servers for local work. Add one per workflow, scope its token and tools, and leave the rest off. This page lists only servers with an official repository or vendor docs page, organised by the job they do, with config for each coding client taken from that client's own docs.
Checked October 2026 against each server's repository or docs and the MCP docs for Claude Code, Cursor, OpenAI Codex, OpenCode and Google Antigravity. This is a docs-based list, not a benchmark: we do not rank servers by speed or accuracy.
New to the protocol? Our MCP explainer covers hosts, clients and servers. For the models behind these assistants and what they cost per token, see the LLM API pricing comparison.
The best MCP servers for coding, by workflow
The table groups servers by the coding job they support, what they give the agent, and the one setting that keeps each one narrow. Sources and install strings follow below it.
| Workflow | Server | What it gives the agent | Scope it down |
|---|---|---|---|
| Git and GitHub | GitHub MCP Server | Issues, pull requests, repos and Actions from the agent | Choose toolsets; use read-only mode for review tasks |
| Git (local) | Git reference server | Read and act on a local repository history | Point it at one repository path |
| Browser | Playwright MCP | Drive a browser using accessibility snapshots, not pixels | Use for test flows and UI checks |
| Browser | Chrome DevTools MCP | Inspect pages, network and performance traces in Chrome | Avoid pages with personal data |
| Docs | Context7 | Current, version-specific library docs in the prompt | Use an API key for higher limits |
| Design | Figma MCP server | Design context from Figma frames for code generation | Remote server recommended by Figma |
| Database | Supabase MCP | Schema, queries and project tools for Supabase | Use project_ref and read_only=true |
| Filesystem | Filesystem reference server | Read and write files inside allowed directories | List only the folders it needs |
| Server | Official source | Endpoint or command from the docs |
|---|---|---|
| GitHub MCP Server | github.com/github/github-mcp-server | https://api.githubcopilot.com/mcp/ (remote) or Docker image (local) |
| Playwright MCP | github.com/microsoft/playwright-mcp | npx @playwright/mcp@latest |
| Chrome DevTools MCP | github.com/ChromeDevTools/chrome-devtools-mcp | npx -y chrome-devtools-mcp@latest |
| Context7 | github.com/upstash/context7 | https://mcp.context7.com/mcp |
| Figma MCP server | developers.figma.com | https://mcp.figma.com/mcp |
| Supabase MCP | supabase.com/docs | https://mcp.supabase.com/mcp |
| Filesystem and Git | github.com/modelcontextprotocol/servers | npx -y @modelcontextprotocol/server-filesystem PATH; uvx mcp-server-git |
- 01Read the task
GitHub issue or pull request
- 02Check the docs
Context7 for current library APIs
- 03Match the design
Figma frame context
- 04Write and query
Filesystem, Git, Supabase dev project
- 05Verify in a browser
Playwright or Chrome DevTools
Git and GitHub
The GitHub MCP Server is maintained by GitHub. Its README gives the remote endpoint https://api.githubcopilot.com/mcp/ and a local Docker option that reads a GITHUB_PERSONAL_ACCESS_TOKEN. Without configuration it loads the default toolsets: context, issues, pull requests, repos and users. You can choose toolsets with the X-MCP-Toolsets header or the --toolsets flag, and the README documents a read-only mode, which suits review and triage work. For history in a local repository without GitHub, the MCP reference servers include a Git server that you point at one repository.
Browser testing and debugging
Playwright MCP from Microsoft drives a browser through Playwright's accessibility tree rather than screenshots, which its README describes as fast, lightweight and deterministic. The same README notes that coding agents may prefer the Playwright CLI with skills because it uses fewer tokens, so check both before you settle. Chrome DevTools MCP from the Chrome team adds DevTools-level inspection, including recording performance traces and extracting insights. Its README warns that it exposes the browser's content to the MCP client and advises against sharing sensitive or personal information; it also collects usage statistics by default, which you can turn off with --no-usage-statistics.
Current library docs
Context7 from Upstash fetches up-to-date documentation for a library into the conversation, which helps when a model's training data predates the version you use. The docs give a hosted server at https://mcp.context7.com/mcp with an optional API key sent as a bearer token, and a local npx package. Many vendors also publish docs servers of their own: Claude Code's docs, for example, use https://code.claude.com/docs/mcp as their example, and Codex docs use https://developers.openai.com/mcp.
Design to code
Figma's MCP server docs recommend the remote server at https://mcp.figma.com/mcp, with a desktop server at http://127.0.0.1:3845/mcp as the alternative. Figma lists seat and plan requirements and rate limits on its plans and permissions page; some tools are provided by the remote server only. Figma's own setup steps include claude mcp add --transport http figma https://mcp.figma.com/mcp for Claude Code and codex mcp add figma --url https://mcp.figma.com/mcp for Codex.
Database
The Supabase MCP server lives at https://mcp.supabase.com/mcp and accepts URL parameters to narrow it: project_ref limits it to one project, read_only=true allows only read queries, and features picks tool groups. Supabase's own guidance is direct: the server is designed for development and should not be connected to production databases. Use it against a development project or a branch with test data.
Filesystem
Most coding clients already read and edit files in your project, so a filesystem server matters most in clients or agents that lack that. The reference Filesystem server restricts every operation to the allowed directories you pass when starting it, and needs at least one. It is maintained by the MCP steering group as one of a small set of reference servers; for a wider catalogue, the README points to the MCP Registry.
- Ten servers enabled in every project
- Personal token with full repo and admin scopes
- Database server pointed at production
- Always approve every tool call
- Servers copied from unofficial lists
- Two or three servers per project
- Fine-grained token, read-only where possible
- Development project with read_only=true
- Manual approval for writes
- Official repos or vendor docs only
Adding servers in Claude Code
Claude Code's MCP docs use claude mcp add. Remote servers take --transport http; local servers take --transport stdio, and everything after -- is passed to the server unchanged. Servers default to local scope, private to you in the current project. --scope user registers a server for all your projects and --scope project writes a shared .mcp.json that teammates approve on first use. Inside a session, /mcp checks and manages servers.
# Remote server (HTTP)
claude mcp add --transport http github https://api.githubcopilot.com/mcp/
# Local server (stdio): everything after -- is the server command
claude mcp add --transport stdio playwright -- npx @playwright/mcp@latest
# Share with your team via .mcp.json
claude mcp add --scope project --transport http figma https://mcp.figma.com/mcpOur Claude Code desktop app guide covers the app side, and Claude Code access options covers plans.
How do you add MCP servers for Cursor?
Cursor's MCP docs read servers from mcp.json: ~/.cursor/mcp.json applies to all your projects, and .cursor/mcp.json in a project can be committed so teammates share the same tools. Local servers use command, args and env; remote servers use url and headers. Cursor supports ${env:NAME} interpolation, so tokens can stay in your environment instead of the file. It also offers one-click installs from its marketplace.
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["@playwright/mcp@latest"]
},
"github": {
"url": "https://api.githubcopilot.com/mcp/",
"headers": { "Authorization": "Bearer ${env:GITHUB_PAT}" }
}
}
}If you are setting Cursor up from scratch, our Cursor tutorial walks through the editor itself.
Adding servers in OpenAI Codex
Codex's MCP docs use codex mcp add or an [mcp_servers.name] table in ~/.codex/config.toml. Project-level .codex/config.toml files load only when you trust the project. Useful options include bearer_token_env_var for a token held in an environment variable, enabled_tools and disabled_tools to allow or deny tools, and startup_timeout_sec and tool_timeout_sec.
# CLI
codex mcp add context7 -- npx -y @upstash/context7-mcp
codex mcp add figma --url https://mcp.figma.com/mcp
# ~/.codex/config.toml
[mcp_servers.github]
url = "https://api.githubcopilot.com/mcp/"
bearer_token_env_var = "GITHUB_PAT"
enabled_tools = ["get_file_contents", "list_pull_requests"]The tool names in enabled_tools above are an illustrative example; list the tools a server exposes in your client before you filter them.
What are the best MCP servers for OpenCode?
The same servers work in OpenCode, because they speak the same protocol. What changes is the config shape. OpenCode's MCP docs define servers under mcp in opencode.json, with type set to local (a command array plus optional environment) or remote (a url plus optional headers), and an enabled flag to switch a server off without deleting it. The docs warn that MCP servers add to context and name the GitHub server as one that can add a lot of tokens, which favours a short list: Context7 and Playwright cover docs and testing with little setup.
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"playwright": {
"type": "local",
"command": ["npx", "@playwright/mcp@latest"],
"enabled": true
},
"context7": {
"type": "remote",
"url": "https://mcp.context7.com/mcp",
"enabled": true
}
}
}What are the best MCP servers for Antigravity?
Google Antigravity's MCP docs describe an MCP Store reached through Add MCP, plus Manage MCP Servers and View raw config to edit mcp_config.json directly. Servers sit under mcpServers, and remote servers use a serverUrl key rather than url. The workflow picks do not change: GitHub, a browser server, Context7 and Figma are all standard MCP servers, so use each vendor's endpoint with Antigravity's key names.
- 1Find the official source
Vendor repo or docs page, not a copied snippet.
- 2Pick the transport
Remote URL if offered, local command otherwise.
- 3Create a scoped token
Least privilege, stored in an environment variable.
- 4Add it at the narrowest scope
One project before all projects.
- 5Filter tools
Toolsets, read-only modes or allow lists.
- 6Test with a harmless prompt
A read-only request before any write.
Security checklist from the official docs
We did not run a failure test across these servers, so instead of war stories here is what the vendors themselves tell you to do. Claude Code's docs say to verify you trust each server before connecting it, because servers that fetch outside content can expose you to prompt injection. Supabase advises non-production data, keeping manual approval on, and caution with always-approve settings. Codex ignores project config in untrusted folders, and Claude Code asks you to approve servers from a project's .mcp.json.
- Source is the vendor repo or official docs page
- Token is fine-grained, scoped to the repos or project needed
- Token lives in an environment variable, not a committed file
- Read-only mode or tool filters are on where available
- Database servers point at development data only
- Manual approval stays on for tools that write, send or delete
- Project config files from others are reviewed before you approve them
- Browser servers are kept away from logged-in personal accounts
- Unused servers are disabled per project
If you want to package this kind of tooling into a product, our AI SaaS program covers building and selling AI tools end to end.
Best MCP servers for coding: FAQ
What are the best MCP servers for coding?
Pick one per workflow rather than installing many. Vendor-maintained options with official docs include the GitHub MCP Server for repos and pull requests, Playwright MCP or Chrome DevTools MCP for the browser, Context7 for current library docs, the Figma MCP server for designs, Supabase MCP for a development database, and the reference Filesystem and Git servers for local files and history.
How do I add MCP servers to Cursor?
Cursor reads MCP servers from mcp.json: ~/.cursor/mcp.json applies to all your projects and .cursor/mcp.json in a project folder can be committed for your team. Each entry under mcpServers has either a command with args and env for a local server, or a url with headers for a remote one. Cursor also offers one-click installs from its marketplace.
How do I add an MCP server to Claude Code?
Use claude mcp add. Remote servers take --transport http with a name and URL; local servers take --transport stdio, a name, then two dashes and the command. Servers default to local scope, private to you in the current project; --scope user makes them available in all projects and --scope project writes a shared .mcp.json file.
How do I add an MCP server to OpenAI Codex?
Run codex mcp add with a name followed by --url for a remote server, or two dashes and the command for a local one, or edit ~/.codex/config.toml and add an [mcp_servers.name] table. Codex docs list options such as bearer_token_env_var for tokens, enabled_tools and disabled_tools to limit tools, and startup and tool timeouts.
Are MCP servers safe to use?
An MCP server can read data and take actions with whatever access you give it, and servers that fetch outside content can carry prompt injection. Claude Code docs say to verify you trust each server before connecting it, and Supabase advises using its server with non-production data and keeping manual approval on. Limit tokens and tools to what each task needs.
Do too many MCP servers slow a coding assistant down?
They add to the context the model has to read. OpenCode docs warn that MCP servers add to context and that some, naming the GitHub server, can add a lot of tokens. Enable only the servers a project needs, and use tool filters such as GitHub toolsets or Codex enabled_tools to expose fewer tools.
Set up your stack once, then build faster with it.
The AI SaaS program, included in All Access, covers AI coding tools, automation and building sellable AI products, with the other three programs, live coaching and the private community in one subscription.
Free MCP setup help
Join the free Discord to share configs, ask setup questions and see which servers others run.