VS Code MCP server, Copilot and Windsurf setup
Last checked: 2026-10-14
A VS Code MCP server gives GitHub Copilot external tools through the Model Context Protocol. VS Code, Copilot and other compatible clients can connect to a hosted AIPx agent URL, but their configuration locations and interface controls differ. Use a client-specific configuration and OAuth login rather than copying an unrelated editor’s file.
Add an MCP server to VS Code
Start with the Command Palette’s MCP: Add Server flow and choose the remote HTTP endpoint. Alternatively, the documented command-line registration accepts the server declaration:
code --add-mcp '{"name":"aipx","type":"http","url":"https://dash.aipx.run/mcp/AGENT_ID"}'
Replace AGENT_ID with the agent identifier copied from AIPx. The server must represent an agent whose accounts and tools you have reviewed. Registering a reachable URL does not by itself authorize access; complete the supported OAuth sign-in when the client requests it.
For a new portable workspace configuration, the current VS Code guidance prefers .mcp.json at the workspace root. It uses a top-level mcpServers object:
{
"mcpServers": {
"aipx": {
"type": "http",
"url": "https://dash.aipx.run/mcp/AGENT_ID"
}
}
}
VS Code’s server management documentation distinguishes portable configuration from its compatibility formats. Personal portable configuration normally lives in ~/.copilot/mcp-config.json. The older .vscode/mcp.json uses a top-level servers object and remains useful for VS Code-specific features; do not put the portable example under that different schema without adapting it.
- Connect accounts and create an agent in AIPx.
- Register the remote endpoint with the guided flow or command above.
- Inspect the saved file and configuration scope.
- Authenticate and check the available tools in Copilot’s agent workflow.
- Read one known issue before enabling shared changes.
GitHub Copilot MCP
Copilot’s agent can combine repository context with external tool results. A useful first connection is GitHub MCP when the task needs issues or review context outside the local checkout. A tracker or error-monitoring connection can then supply the requirements and failure evidence.
The configuration’s scope matters. A workspace declaration describes that project’s expected tool server. A user declaration makes the connection available across workspaces. OAuth credentials remain personal even when a declaration is checked into source control.
Review a workspace’s MCP declarations before trusting the repository. A local server entry can launch code, and a remote entry can direct the client to an unexpected service. A familiar server name is not proof that its endpoint or command is the intended one.
| VS Code configuration | Top-level key | Intended use |
|---|---|---|
Workspace .mcp.json | mcpServers | Portable project declarations |
User ~/.copilot/mcp-config.json | mcpServers | Personal declarations across workspaces |
Workspace .vscode/mcp.json | servers | VS Code-specific capabilities and compatibility |
After connection, inspect tool selection rather than enabling everything by habit. Keep the tracker and diagnostic tools available for a bug fix; leave financial or personal planning tools out of that coding task.
Windsurf MCP
Windsurf search results often refer to Cascade and historical configuration paths. The current documentation is published under Devin Desktop, so check which product version you are configuring. This guide follows the current Cascade MCP documentation, rather than promising that an old .codeium directory is still the correct destination.
For Cascade, open the panel’s Actions menu and choose Open MCP config file. Current documented locations are ~/.config/devin/mcp_config.json on macOS and Linux, or %APPDATA%\devin\mcp_config.json on Windows. Add the AIPx entry under mcpServers, using the remote URL format supported by that client version, then complete authentication.
Current docs describe remote URL configuration and OAuth. They also state a 100-enabled-tool limit for Cascade. Keep the set small: disable irrelevant operations and hide unnecessary tools in the AIPx agent before exposing a large account collection. This limit should not be generalized to every other client or product variant.
When following a tutorial, verify its configuration location, remote transport and authentication support against your installed version. A renamed product can retain concepts while moving files and menus. The Open MCP config file action is a safer starting point than guessing a directory from an old screenshot.
Other MCP clients
MCP standardizes the exchange with the server, but a compatible client’s installation, credential storage and approval interface remain its own. Gemini-related tool-calling workflows and other agents need an MCP client or adapter; tool calling alone does not prove that the application accepts any MCP URL.
Check three details before assuming compatibility: remote HTTP transport, the endpoint’s authentication method and the client’s handling of tool calls requiring review. A local-only client cannot use a remote OAuth endpoint merely by receiving its URL. If a client supports only API-key-protected HTTP tools, it may need the separate agent API rather than the MCP endpoint.
For established setup paths, compare Claude Code, Cursor, Codex and Claude Desktop. Their commands and file schemas differ; the relevant AIPx agent can still provide the same chosen account boundary.
Choosing tools for another editor
| Integration | Reason to connect | Initial review |
|---|---|---|
| GitHub | External issue and review context | Repository access and write rules |
| Linear | Feature requirements | Relevant team and issue operations |
| Sentry | Production failure evidence | Project access and sensitive payloads |
| PostHog | Usage evidence for a change | Analytics exposure |
| Notion | Supporting project notes | Workspace visibility |
| Supabase | Database context | Project and read-only restrictions |
| Jira | Acceptance criteria | Account and ticket access |
| Confluence | Architectural documentation | Shared document edits |
| Google Sheets | Rollout checklist | Confirmation before modifications |
| Cloudflare | Infrastructure investigation | Administrative operation access |
The MCP server catalog explains the selection rather than assuming every editor needs the same list.
One AIPx URL for every client
Connect accounts once in AIPx, then create agents with the access appropriate to their workflows. Each agent receives its own URL. You can connect a supported client to that endpoint, but separate agents are clearer when two clients or projects should have different privileges.
Rules combine the tool, account and agent. Allow and Confirm are execution hints, with Confirm requesting client review. Actual approval depends on the client; Hide is enforced server-side and withholds access. A work tracker can be visible to a coding agent while a personal mailbox remains hidden. Client tool toggles and approval prompts control the client workflow. Verify how it honors Confirm, and use Hide when the operation must be unavailable.
If tools are absent, inspect configuration scope, authentication, enabled tools and Hide rules. If a provider denies a call, inspect that upstream account connection. Local executable failures require checking runtime and PATH rather than remote OAuth. The shared audit records which agent, account and tool actually ran, with inputs, result and time.
Free includes three connected accounts and one agent. Pro costs $3 per month for unlimited accounts and agents plus Pro integrations. AIPx adds a hosted operator and network dependency; a local or direct official server may fit private systems or a single-service workflow better. The MCP gateway guide covers that tradeoff. Connect free.
Connect your tools to other MCP clients
These additional supported accounts can be useful in a compatible client when the task goes beyond the development shortlist. Choose a small set for the workflow rather than enabling the entire catalog.
- Development and infrastructure: Atlassian Rovo tools, DigitalOcean infrastructure.
- Mail, notes and planning: Gmail mail tools, Google Calendar events, Apple Calendar access, Things 3 tasks, Granola meeting notes, Fireflies transcripts, AgentMail inbox tools.
- Payments: Stripe billing tools, Paddle subscription tools.
- Research and campaign data: Exa web search, Google Maps data, X account tools, Yandex Direct campaigns.
- Personal health and nutrition: WHOOP recovery data, Withings measurements, Hevy workouts, Numon nutrition reports.
FAQ
How do I add an MCP server to VS Code?
Use MCP: Add Server or the code --add-mcp command and register the remote URL. Authenticate, inspect the saved configuration and check the available tools in Copilot's agent workflow.
Where is VS Code MCP configuration stored?
Current portable workspace configuration uses .mcp.json with mcpServers; personal configuration normally uses ~/.copilot/mcp-config.json. The compatibility .vscode/mcp.json format uses servers and supports VS Code-specific features.
Does GitHub Copilot support remote MCP tools?
Yes, supported Copilot agent workflows can use remote MCP tools through the client's configuration. The endpoint must support compatible transport and authentication, and account policies still apply.
Where is the Windsurf MCP config file?
The current Cascade documentation under Devin Desktop lists ~/.config/devin/mcp_config.json on macOS and Linux and %APPDATA%\devin\mcp_config.json on Windows. Use Open MCP config file in the panel to verify your installed version's location.
Can every MCP client use one AIPx URL?
A compatible remote HTTP client with supported OAuth can use the agent endpoint. Each client has its own setup and approval behavior; a local-only MCP client or generic tool-calling API is not automatically compatible.