Guide: Installera och konfigurera MCP i VS Code
Steg-för-steg-guide för att sätta upp MCP-servrar i VS Code — .vscode/mcp.json, exempelinställningar, verifiering i Copilot Chat Agent Mode och felsökning.
VS Code fick förstklassigt MCP-stöd via GitHub Copilot Chat under 2025 och har sedan dess blivit ett av de mest använda sätten att köra Model Context Protocol i vardagen. Den här guiden tar dig från noll till en fungerande MCP-server i VS Code på under tio minuter — inklusive workspace-config för teamet, konkreta JSON-exempel och verifiering i Agent Mode.
Vad du behöver
- VS Code 1.99+ (rekommenderat: senaste stable — MCP-UI:t har vuxit snabbt).
- GitHub Copilot-tillägget installerat och inloggat — MCP-verktyg exponeras via Copilot Chat Agent Mode.
- Node.js 18+ för npx-baserade servrar, alternativt Python 3.10+ med uv/uvx.
- Ev. API-nycklar för de servrar du vill koppla in (t.ex. GitHub PAT, DATABASE_URL).
Hitta mcp.json i VS Code
VS Code stöder två scope: workspace (checkas in i git och delas med teamet) och user (personlig, gäller alla dina projekt). Configen ligger i mcp.json i båda fallen.
- Öppna Command Palette (Cmd/Ctrl + Shift + P).
- Kör MCP: Open Workspace Configuration — VS Code skapar .vscode/mcp.json i projektroten om den saknas.
- För personlig config: kör MCP: Open User Configuration istället — VS Code öppnar din globala mcp.json.
- Alternativt: kör MCP: Add Server och välj typ (npx, uvx, docker, HTTP) — VS Code skriver in ett giltigt block åt dig.
Konfig-filen steg-för-steg
VS Codes format skiljer sig något från Cursor/Claude: nyckeln heter servers (inte mcpServers) och du kan deklarera inputs som VS Code frågar efter vid första start — perfekt för API-nycklar som inte ska ligga i git.
{
"inputs": [
{
"id": "github-pat",
"type": "promptString",
"description": "GitHub personal access token",
"password": true
}
],
"servers": {
"filesystem": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"${workspaceFolder}"
]
},
"github": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github-pat}"
}
},
"postgres": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-postgres",
"${env:DATABASE_URL}"
]
},
"linear-remote": {
"type": "http",
"url": "https://mcp.linear.app/mcp"
}
}
}- type — stdio för lokala kommandon, http eller sse för fjärrservrar.
- command + args — hur den lokala servern startas. Använd absoluta sökvägar, inte ~/.
- env — miljövariabler som skickas till processen.
- ${workspaceFolder} — expanderas till projektroten. ${env:VAR} läser från shell-miljön. ${input:id} frågar användaren vid första start och cachas säkert.
Workspace vs user
Workspace-config (.vscode/mcp.json) checkas in i git och ger teamet identisk verktygsuppsättning. Hemligheter läggs aldrig direkt i filen — använd inputs eller ${env:VAR}. User-config är personlig och passar för verktyg du alltid vill ha (GitHub, filesystem). Vid konflikt vinner workspace-configen.
Verifiera anslutningen
- Spara mcp.json. VS Code startar servrarna automatiskt och visar en Start/Restart-knapp ovanför varje server-block.
- Öppna Copilot Chat (Cmd/Ctrl + Alt + I) och växla läge till Agent längst upp.
- Klicka på verktygs-ikonen (tools) i chattens verktygsrad — dina MCP-servrar ska listas med tool-count.
- Kör MCP: List Servers i Command Palette för att se status, logg och senaste fel per server.
- Testa med en prompt som tvingar användning: ”Lista filerna i workspace och sammanfatta README.” Agent Mode ska be om godkännande att köra list_directory.
Felsökning
Servern startar inte / röd status i MCP: List Servers
- Validera JSON — en saknad komma räcker för att VS Code ska hoppa över hela filen. VS Code visar syntaxfel i editorn; åtgärda dem först.
- Kör kommandot manuellt i integrerad terminal (t.ex. npx -y @modelcontextprotocol/server-filesystem .) och verifiera att det startar utan fel.
- Klicka Show Output i MCP: List Servers-vyn — stderr från servern skrivs där.
- På macOS: VS Code ärver inte alltid full PATH. Ange absolut sökväg till binären (t.ex. /opt/homebrew/bin/npx) eller starta VS Code från terminalen med code .
Servern körs men verktygen syns inte
- Kontrollera att du är i Agent Mode — Ask/Edit exponerar inte MCP-tools.
- Klicka Refresh i tools-panelen — VS Code cachar tool-listan tills servern startas om.
- Vissa servrar exponerar tools först efter att en resurs valts (t.ex. GitHub kräver repo-kontext). Läs serverns README.
Inputs frågas inte / gamla värden fastnar
- Kör MCP: Reset Cached Inputs i Command Palette för att tvinga fram ny prompt.
- Inputs lagras i OS-nyckelringen (Keychain/Credential Manager) — rensa där om värdet inte kan uppdateras.
- Använd promptString med password: true för hemligheter så att de maskas i UI:t.
HTTP-server ansluter inte
- Kontrollera URL:en — spec kräver Streamable HTTP-endpoint (POST + SSE på samma URL).
- Om servern kräver OAuth: VS Code öppnar auth-flödet automatiskt i webbläsaren. Godkänn och gå tillbaka.
- Bakom företagsproxy: sätt http.proxy i VS Code settings, annars blockeras utgående anrop.
FAQ
Vanliga frågor
Behöver jag GitHub Copilot för att använda MCP i VS Code?+
Ja — MCP-verktyg exponeras via Copilot Chat Agent Mode. Utan Copilot-tillägget läses configen inte in. Andra AI-tillägg som Continue har egen MCP-hantering med separat config.
Var ligger mcp.json i VS Code?+
Workspace: .vscode/mcp.json i projektroten. User (macOS): ~/Library/Application Support/Code/User/mcp.json. User (Windows): %APPDATA%\Code\User\mcp.json. Enklaste vägen är kommandot MCP: Open Workspace Configuration eller MCP: Open User Configuration.
Behöver jag starta om VS Code efter att jag ändrat mcp.json?+
Nej. VS Code visar Start/Restart-knappar direkt ovanför varje server-block när filen sparas. Vid större problem: kör Developer: Reload Window.
Fungerar samma config i VS Code, Cursor och Claude Desktop?+
Nästan. Fältnamn och variabelsyntax skiljer sig: VS Code använder servers, inputs och type-fältet. Cursor/Claude använder mcpServers utan type. Command/args/env är i princip identiska så du kan portera med små justeringar.
Kan jag ha olika MCP-servrar per projekt?+
Ja. Lägg .vscode/mcp.json i projektet — det scopet gäller bara det workspace:t och slår user-configen vid konflikt.
Hur delar jag configen med teamet utan att läcka nycklar?+
Committa .vscode/mcp.json med inputs-definitioner för varje hemlighet. VS Code frågar användaren första gången och lagrar värdet krypterat i OS-nyckelringen — filen i git innehåller aldrig själva nyckeln.
Läs vidare
- BloggGuide: Sätt upp MCP i Cursor steg-för-stegSå sätter du upp MCP i Cursor från noll: hitta mcp.json, redigera JSON korrekt, verifiera i Composer och lös vanliga fel.
- BloggGuide: Så använder du MCP med Claude DesktopKomplett svensk guide för att koppla MCP-servrar till Claude Desktop: hitta config-filen, redigera JSON korrekt och verifiera att verktygen fungerar.
- BloggBygg din första MCP-serverSteg för steg — från noll till fungerande MCP-server som Claude kan anropa.
- BloggSäkerhet i MCP: allt du behöver vetaOAuth, verifierade badges, prompt injection och best practices för säker MCP-drift.
- SidaFullständig klientguide för VS Code →
Utforska verifierade MCP-servrar
Alla servrar i katalogen är verifierade mot GitHub och npm — bara officiella och underhållna projekt listas.
Öppna katalogen →