servers / vscode-mcp

vscode-mcp

communitystdiolocalwrite capablehealthy

MCP server for Claude Code/VSCode/Cursor/Windsurf to use editor self functionality. ⚡ Get real-time LSP diagnostics, type information, and code navigation for AI coding agents without waiting for slow tsc/eslint checks.


01Tools · 8
ToolRiskSide effectsApproval
health_check
Test connection to VSCode MCP Bridge extension. Troubleshoot when other VSCode MCP tools return connection errors or timeouts
unknownunknownunknown
get_diagnostics
Get diagnostic information from vscode language servers. Ideal quality-check tool for AI coding agents, much faster than 'tsc --noEmit' and 'eslint .' **Parameter Examples:** - Check modified files: workspace_path: '/path/to/open-vscode-workspace', __NOT_RECOMMEND__filePaths: [] (auto-detects git changes, including submodules) - Check submodule files explicitly: keep workspace_path at the open VSCode workspace root and pass file paths relative to that root, for example ['submodule/path/src/file.ts'] - Filter to ESLint findings only: sources: ['eslint'] - Errors only (rarely useful): __NOT_RECOMMEND__severities: ['error'] **Return Format:** Structured diagnostic results with severity levels, positions, and detailed error messages. Severity levels: 0=ERROR, 1=WARNING, 2=INFO, 3=HINT (matches VSCode DiagnosticSeverity enum) **Note:** - workspace_path selects the VSCode instance/socket, not the repository whose files you want to inspect. Use list_workspaces if unsure, and do not pass a child project or submodule path unless VSCode is opened there. - In most cases, pass __NOT_RECOMMEND__filePaths: [] to auto-detect git modified files. If the open workspace contains git submodules, modified files inside those submodules are included. - __NOT_RECOMMEND__severities defaults to all four levels. Narrowing it almost always hides real ESLint/TS findings (many rules surface at info or hint) — leave it alone unless you have a specific reason.
readfalseunknown
get_symbol_lsp_info
Retrieve comprehensive LSP information for a symbol, including type definitions, documentation, and usage details. Essential for fixing type errors and understanding symbol declarations. Typical use cases: - Fix TypeScript type checking errors - Extract function parameters and return types from symbols when encapsulating code blocks into functions - Obtain variable types from nearby code symbols when declaring variables or type assertions, avoiding the use of 'any'
unknownunknownunknown
get_references
Find all reference locations of a symbol (variable, function, class, etc.) across the codebase **Return Format:** Array of reference locations with file paths and exact positions
readfalseunknown
execute_command
Execute VSCode commands with arguments **Common Use Cases:** - Format code: 'editor.action.formatDocument' with args: '[]' - Open files: 'vscode.open' with args: '["file:///absolute/path/to/file.ts"]' - Save all files: 'workbench.action.files.saveAll' with args: '[]' - Auto-fix issues: 'editor.action.fixAll' with args: '[]' - Restart TypeScript: 'typescript.restartTsServer' with args: '[]' - Restart ESLint: 'eslint.restart' with args: '[]' **Important Notes:** - Commands and arguments may change with VSCode updates, it's recommended to search in the VSCode official repository to confirm the command and arguments are correct before use - Commands like 'reloadWindow', 'reloadExtensionHost' will interrupt conversation - ⚠️ WARNING: May cause irreversible changes, use with caution
writetrueunknown
open_files
Open files in vscode
unknownunknownunknown
rename_symbol
Rename a symbol with VSCode F2 ability Advantages over search and replace: - Faster - More accurate - Automatically updates imports and reference locations **Important Notes:** - Some symbols may not be renameable (e.g., built-in types, external libraries)
writetrueunknown
list_workspaces
List all available VSCode workspaces that can be connected to use vscode mcp tools **Return Format:** Array of workspace objects with paths, names, status, and optional details. Includes summary statistics about discovered workspaces. **Important Notes:** - **Active status** means successfully connected and verified - **Available status** means socket exists but not tested
readfalseunknown

02Install & source
npx -y @vscode-mcp/vscode-mcp-server@latest
npx
npx -y @vscode-mcp/vscode-mcp-cli
npx

03Access granted
Manage GitHub · writeExecute code · write

The access this server can exercise, inferred from its verified tools — not a declared OAuth scope.


05Provenance & freshness
sourcesGitHub repo search [p4]
last_checked2026-07-04 07:48Z
next_check2026-07-05 12:29Z
cadenceevery 29h
verifiedtools_list:passed handshake:passed metadata:passed
index_statusindex9 unique facts >= 5

06Badge

Add the “as seen on MCPExplorer” badge to your README. vscode-mcp MCP — as seen on mcpexplorer.com

[![vscode-mcp MCP — as seen on mcpexplorer.com](https://mcpexplorer.com/badge/vscode-mcp.svg)](https://mcpexplorer.com/servers/vscode-mcp)

Next step

Want agents that act within guardrails? Apex is the live governed-agent product — paced, capped, and fully-logged actions with approval queues before anything runs.

Explore Apex →
vscode-mcp — MCPExplorer