对于广大 VS Code 用户而言,编辑器就是开发世界的中心。但当 AI 助手如 Goose、Claude 等只能在对话窗口中“谈论”代码,却无法直接操控编辑器本身时,一道无形的高墙始终横亘在人与 AI 之间。VS Code MCP Server 的出现正是在拆除这堵墙。它通过模型上下文协议,让 AI 代理获得了与 VS Code 直接交互的能力——打开文件、展示差异、管理项目,使 AI 成为编辑器中一个真正能“动手”的协作者。

项目基本信息

信息项详情
项目名称VS Code MCP Server
GitHub 地址由 Block, Inc. 开发,托管于腾讯云 MCP 广场
项目描述通过 MCP 协议让 AI 代理与 VS Code 交互,支持打开文件、创建差异、管理项目等操作
作者Block, Inc.
开源协议Apache License 2.0
开源状态公开状态
LanguagesTypeScript
支持平台Windows / macOS / Linux
最后更新2025-05-14

一、项目介绍

VS Code MCP Server 是一个由 Block, Inc. 开发的轻量级 MCP 服务器,其核心定位非常清晰:成为 AI 助手操作 VS Code 编辑器的标准协议接口

核心工具集

该项目提供了 6 个 MCP 工具,覆盖了 AI 与编辑器交互的关键场景:

工具功能安全机制
create_diff创建并显示文件修改的差异预览需要在 VS Code 中由用户手动批准后才会应用
open_file在 VS Code 编辑器中打开指定文件用于查看新文件或已修改的文件
open_project在 VS Code 中打开项目文件夹为 AI 代理设置工作目录上下文
check_extension_status检查 MCP 扩展是否安装且响应正常诊断连接问题时的首选工具
get_extension_port获取 VS Code MCP 扩展的端口号用于高级配置和调试
list_available_projects从端口注册文件中显示最近打开的项目列表快速切换工作上下文

项目结构

这是一个典型的 monorepo 架构,包含两个部分:

  • server/:MCP 服务器实现,负责与 AI 客户端通信并处理工具调用。
  • extension/:配套的 VS Code 扩展,运行在编辑器内部,执行实际的编辑器操作。

这种 Server + Extension 的双组件架构保障了安全的沙箱机制:AI 的指令先到达 MCP 服务器,服务器再通过本地 socket 与扩展通信。扩展在编辑器内部执行实际操作,关键操作(如文件修改)会触发用户批准流程。

二、核心优势

安全至上的差异工作流

create_diff 工具是本项目最大的亮点。它避免了 AI 直接、不可见地修改文件的风险,而是先生成一个差异预览显示在 VS Code 中,等待开发者手动审查和批准后才应用更改。这与代码审查流程自然契合,消除了 AI “乱改代码”的安全顾虑。

极简安装,一键启用

通过 npx vscode-mcp-server install 一条命令就能完成服务器安装。配合 VS Code 扩展,整个配置流程极为流畅,几分钟即可完成从零到可用的全过程。

机构级信任背书

项目由 Block, Inc.(前身为 Square, Inc.)开发并以 Apache 2.0 协议开源。与个人或小团队维护的项目相比,这代表了可靠的长期维护承诺和企业级代码质量。

清晰的职责分离

服务器处理协议和通信,扩展负责编辑器操作。这种解耦使得两个组件可以独立更新、独立调试,也方便用户在升级 VS Code 版本时只需要更新扩展部分。

三、适用场景

AI 辅助的代码修改与审查

用户让 AI 优化一段代码。AI 生成修改后,不是直接替换文件,而是调用 create_diff 在 VS Code 中展示变更差异。开发者审查确认后批准应用——整个流程与标准的 Code Review 一致。

跨文件的智能导航

AI 在分析代码时,可以调用 open_file 自动打开它正在讨论的源文件,开发者可以直接在编辑器中查看上下文,不必手动在文件树中查找。

项目上下文的快速切换

在多项目之间切换时,AI 可以调用 list_available_projects 列出最近打开的项目,然后调用 open_project 直接切换工作区。这对于同时维护多个微服务的开发者尤其高效。

扩展诊断与健康检查

当 AI 助手无法正常与编辑器交互时,开发者可以让 AI 运行 check_extension_status 进行自我诊断,快速定位是扩展未安装还是连接端口出了问题。

四、安装教程

环境要求

工具用途下载/安装方式
Node.js运行环境>= 16.x
VS Code代码编辑器需安装配套扩展
npx运行 MCP 服务器通常随 Node.js 一起安装

安装步骤

第一步:安装 MCP 服务器

npx vscode-mcp-server install

第二步:安装 VS Code 扩展
在 VS Code 扩展市场中搜索并安装 VS Code MCP 扩展(项目 README 提供链接)。

第三步:配置 AI 客户端

Claude Desktop 配置:编辑 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS),添加:

{
  "mcpServers": {
    "vscode-mcp-server": {
      "command": "npx",
      "args": ["vscode-mcp-server"],
      "env": {}
    }
  }
}

Goose 桌面配置

  • ID: code-mcp
  • 名称: VS Code
  • 描述: 允许通过模型上下文协议与 VS Code 交互
  • 命令: npx vscode-mcp-server

配置完成后,重启 AI 客户端即可。

五、使用示例

示例一:安全地修改代码

用户:帮我优化 src/utils.js 中的 formatDate 函数,让它处理边界情况更鲁棒。

AI 生成修改后,调用 create_diff 工具。VS Code 中会弹出一个差异视图,清晰地对比旧代码和新代码。开发者审查后点击“批准”,修改才会实际应用到文件中。

示例二:跨文件工作流

用户:我正在排查 PaymentService.ts 中的一个 bug,帮我打开这个文件,然后找出所有依赖它的组件。

AI 调用 open_file 打开 PaymentService.ts,然后结合其他 MCP 工具(如文件搜索)分析依赖关系,返回结果。开发者全程在 VS Code 中跟随 AI 的操作步骤。

示例三:快速切换项目上下文

用户:我今天需要处理两个项目:api-serveradmin-dashboard。先打开 api-server

AI 调用 list_available_projects 列出最近的项目,确认 api-server 在列表中,然后调用 open_project 在 VS Code 中切换工作区。

示例四:诊断连接问题

用户:AI 好像无法和 VS Code 交互了,帮我检查一下 MCP 扩展的状态。

AI 调用 check_extension_status,返回扩展是否已安装、是否正在运行。如果一切正常,还会调用 get_extension_port 确认通信端口。

六、常见问题

问:安装后 AI 提示无法连接到 VS Code 怎么办?

答:这是最常见的连接问题。请按以下步骤排查:

  1. 检查扩展:确保 VS Code MCP 扩展已安装且正在运行(不是禁用状态)。
  2. 运行诊断:在 AI 对话中使用 check_extension_status 工具,检查扩展是否响应。
  3. 检查端口:使用 get_extension_port 确认端口没有被其他程序占用。
  4. 重启 VS Code:偶尔扩展启动时序问题,重启编辑器即可解决。

问:create_diff 生成的修改,我必须手动批准吗?能不能完全自动化?

答:当前的批准机制是设计上的安全特性,非缺陷。它确保了开发者对代码变更拥有最终决定权。目前不支持完全自动化跳过批准,未来是否会提供可选的自动批准模式,取决于项目维护者的安全考量。

问:这个工具只支持本地 VS Code 吗?VS Code Server 或 Codespaces 呢?

答:项目基于本地 socket 通信,主要针对本地 VS Code 实例。在远程开发环境(如 SSH、Codespaces)中使用可能需要额外的网络配置,目前未提供官方支持文档。

问:为什么需要同时安装 MCP 服务器和 VS Code 扩展?

答:两者分工不同。MCP 服务器负责与 AI 客户端通信(理解 AI 的指令),VS Code 扩展负责在编辑器内执行实际操作(打开文件、显示差异)。这种解耦设计让每个组件可以独立更新,也更安全——AI 不能直接调用编辑器 API,必须通过扩展中的安全控制层。

七、总结

VS Code MCP Server 是一个设计精巧、职责清晰的工具。它没有试图做太多事情,而是精准地解决了 AI 协作中的核心痛点:如何让 AI 安全、可控地操作我们每天使用的编辑器。通过差异工作流和手动批准机制,它在效率和安全之间找到了一个务实的平衡点。

对于 VS Code 用户而言,这个项目将 AI 从对话窗口“请进了”编辑器本身,让 AI 真正成为能动手的协作者。花几分钟完成安装,你会立刻感受到那种“AI 终于能直接帮我做事”的流畅感。

标签: 开发者工具

已有 33 条评论

    1. WillZhang WillZhang

      这个工具的设计哲学是“把AI纳入人的工作流”,而不是反过来。

    2. XenaLi XenaLi

      在远程SSH开发机上使用遇到了网络问题,还在调试中。

    3. YaleSun YaleSun

      能显示差异不仅是安全,也是教育——我能从AI的改动中学到优化思路。

    4. ZoeChen ZoeChen

      早会的时候让AI帮我打开昨天修改的文件,一起过进度。

    5. AlexBrown AlexBrown

      Block维护多个开源工具的经验在这个项目的架构上体现出来了。