vscode-mcp-server
Enables GitHub Copilot CLI to perform VS Code operations such as file management and extension control.
Enables Google Gemini CLI to perform VS Code operations such as file management and extension control.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@vscode-mcp-server List all installed extensions"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
VS Code MCP Server
一個可攜式的 Model Context Protocol (MCP) 伺服器,讓 AI 助手能夠操作 VS Code - 支援檔案管理、擴充套件控制和工作區自動化。
繁體中文
🌟 特色
檔案操作: 讀取、寫入、建立、刪除檔案和目錄
擴充套件管理: 安裝、列出、啟用/停用 VS Code 擴充套件
可攜式設計: 使用 uvx/pipx 全域執行,無需絕對路徑
多客戶端支援:
✅ GitHub Copilot CLI
✅ Claude Desktop
✅ Google Gemini CLI
✅ 任何支援 MCP 的客戶端
📦 安裝
方法 1: 使用 uvx (推薦)
# 從專案目錄
git clone https://github.com/chaworld/vscode-mcp-server.git
cd vscode-mcp-server
uvx --from . vscode-mcp-server方法 2: 全域安裝
# 使用 uv
git clone https://github.com/chaworld/vscode-mcp-server.git
cd vscode-mcp-server
uv tool install --editable .
# 或使用 pipx
pipx install --editable .
# 之後可直接執行
vscode-mcp-server方法 3: 開發模式
git clone https://github.com/chaworld/vscode-mcp-server.git
cd vscode-mcp-server
uv pip install -e .
python -m vscode_mcp_server🔧 客戶端配置
GitHub Copilot CLI
{
"mcpServers": {
"vscode_local": {
"command": "uvx",
"args": ["--from", "/path/to/vscode-mcp-server", "vscode-mcp-server"]
}
}
}Claude Desktop
檔案位置: %APPDATA%\Claude\claude_desktop_config.json (Windows)
{
"mcpServers": {
"vscode_local": {
"command": "uvx",
"args": ["--from", "/path/to/vscode-mcp-server", "vscode-mcp-server"]
}
}
}Google Gemini CLI
{
"name": "vscode-mcp",
"version": "0.1.0",
"mcpServers": {
"vscode_local": {
"command": "uvx",
"args": ["--from", "/path/to/vscode-mcp-server", "vscode-mcp-server"]
}
}
}🛠️ 可用工具
read_file - 讀取檔案內容
write_file - 寫入檔案內容
create_directory - 建立目錄
list_directory - 列出目錄內容
install_extension - 安裝 VS Code 擴充套件
list_extensions - 列出已安裝的擴充套件
📖 文件
可攜式設定指南 - 詳細的可攜式安裝說明
全域安裝指南 - 5 種全域安裝方法比較
Claude Desktop 設定 - Claude Desktop 完整設定
Copilot CLI 設定 - GitHub Copilot CLI 設定
檔案結構說明 - 專案結構文件
🧪 測試
# 安裝開發依賴
uv pip install -e .
# 執行測試
pytest
# 執行測試並顯示詳細輸出
pytest -v🤝 貢獻
歡迎提交 Issues 和 Pull Requests!
📄 授權
MIT License
Related MCP server: Code MCP Server
English
🌟 Features
File Operations: Read, write, create, delete files and directories
Extension Management: Install, list, enable/disable VS Code extensions
Portable Design: Run globally with uvx/pipx, no absolute paths needed
Multi-Client Support:
✅ GitHub Copilot CLI
✅ Claude Desktop
✅ Google Gemini CLI
✅ Any MCP-compatible client
📦 Installation
Method 1: Using uvx (Recommended)
# From project directory
git clone https://github.com/chaworld/vscode-mcp-server.git
cd vscode-mcp-server
uvx --from . vscode-mcp-serverMethod 2: Global Installation
# Using uv
git clone https://github.com/chaworld/vscode-mcp-server.git
cd vscode-mcp-server
uv tool install --editable .
# Or using pipx
pipx install --editable .
# Then run directly
vscode-mcp-serverMethod 3: Development Mode
git clone https://github.com/chaworld/vscode-mcp-server.git
cd vscode-mcp-server
uv pip install -e .
python -m vscode_mcp_server🔧 Client Configuration
GitHub Copilot CLI
{
"mcpServers": {
"vscode_local": {
"command": "uvx",
"args": ["--from", "/path/to/vscode-mcp-server", "vscode-mcp-server"]
}
}
}Claude Desktop
File location: %APPDATA%\Claude\claude_desktop_config.json (Windows)
{
"mcpServers": {
"vscode_local": {
"command": "uvx",
"args": ["--from", "/path/to/vscode-mcp-server", "vscode-mcp-server"]
}
}
}Google Gemini CLI
{
"name": "vscode-mcp",
"version": "0.1.0",
"mcpServers": {
"vscode_local": {
"command": "uvx",
"args": ["--from", "/path/to/vscode-mcp-server", "vscode-mcp-server"]
}
}
}🛠️ Available Tools
read_file - Read file contents
write_file - Write file contents
create_directory - Create directories
list_directory - List directory contents
install_extension - Install VS Code extensions
list_extensions - List installed extensions
📖 Documentation
Portable Setup Guide - Detailed portable installation guide
Global Install Guide - Comparison of 5 global installation methods
Claude Desktop Setup - Complete Claude Desktop configuration
Copilot CLI Setup - GitHub Copilot CLI configuration
File Structure - Project structure documentation
🧪 Testing
# Install dev dependencies
uv pip install -e .
# Run tests
pytest
# Run tests with verbose output
pytest -v🤝 Contributing
Issues and Pull Requests are welcome!
📄 License
MIT License
🔗 Links
Available Tools
6 toolscreate_fileA
Creates a new file with the given content. Fails if the file already exists.
Inputs: path (required), content (required). Returns: result
install_extensionB
Installs a VSCode extension by its ID.
Inputs: extension_id (required). Returns: result
list_extensionsA
Lists all installed VSCode extensions.
Inputs: no named parameters. Returns: result
overwrite_fileA
Overwrites an existing file or creates a new one with the given content.
Inputs: path (required), content (required). Returns: result
read_fileB
Reads and returns the content of a file.
Inputs: path (required). Returns: result
uninstall_extensionA
Uninstalls a VSCode extension by its ID.
Inputs: extension_id (required). Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 6 tools
Each tool targets a distinct action on a specific resource: file operations (create, overwrite, read) and extension operations (install, uninstall, list). The descriptions clearly differentiate create_file from overwrite_file, so there is no ambiguity.
Tool names follow a consistent verb_noun pattern (create_file, read_file, install_extension, list_extensions). There is a minor inconsistency with 'extension' singular in install/uninstall and 'extensions' plural in list, but the overall pattern is predictable.
With 6 tools, the set is well-scoped and each tool earns its place. It covers two distinct functional areas without redundancy, fitting comfortably within the ideal 3-15 range.
The domain is a VSCode-focused server covering file and extension management. File operations include create, read, and update (via overwrite) but lack a delete operation. Extension management is complete with list, install, and uninstall. This is a minor gap that agents can work around.
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
MCP server that lets your AI assistant build and deploy apps, hosting each one at a live URL.
Shared memory MCP server for Claude Code, Codex, Gemini CLI and Cursor. Cited, editable.
Remote MCP server exposing your Node Command fleet (files, shell, processes, browser) to AI hosts.
Related MCP Servers
- AlicenseAqualityDmaintenanceMCP server to expose VS Code editing features to an LLM for AI coding9561 npm392MIT
- AlicenseCqualityDmaintenanceAn experimental MCP server that enables AI assistants to interact with VS Code workspaces through file operations, code execution, and Git management. It also provides tools for Docker integration, project scaffolding, and secure command execution using project-specific configurations.7622 npm3MIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol (MCP) server that provides VSCode context and filesystem operations for AI assistants.9MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with VS Code's language server protocol features (definitions, references, diagnostics) and debugger (breakpoints, stepping, variable inspection) via an MCP server.7 npm1MIT