VS Code MCP服务器

一个全面的模型上下文协议(MCP)服务器,为AI助手提供强大的VS Code集成功能,提供29种专业工具,用于文件操作、命令执行、项目分析和开发工作流自动化。

  • by aditya-technophile-06
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 aditya-technophile-06/vs-code_mcp-server

使用说明

VS代码MCP服务器

一个全面的模型上下文协议(MCP)服务器,旨在为AI助手提供强大的VS代码集成功能,为文件操作、命令执行、项目分析和开发工作流自动化提供29个专用工具。

🚀 特性

  • 📁 文件操作:完整的文件和目录管理(8个工具)
  • ⚡ 高级文件编辑:精确的线级编辑和验证(6个工具)
  • 🖥️ 命令执行:系统命令执行和流程管理(8个工具)
  • 📊 项目分析:代码库洞察和依赖关系发现(3个工具)
  • 🔍 VS代码集成:符号搜索、定义和诊断(4个工具)

📦 安装

先决条件

  • Node.js 18.0.0或更高版本
  • Claude Desktop(或任何兼容MCP的客户端)

设置

  1. 克隆存储库:

    git clone <your-repo-url>
    cd vs-code-mcp-server
    
  2. 安装依赖项:

    npm install
    
  3. 构建服务器:

    npm run build
    

配置

将服务器添加到MCP客户端配置中。对于Claude Desktop,编辑配置文件:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 窗户: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "vs-code-mcp-server": {
      "command": "node",
      "args": ["/path/to/your/vs-code-mcp-server/dist/index.js"],
      "env": {}
    }
  }
}

注: 替换 /path/to/your/vs-code-mcp-server 使用克隆存储库的实际路径。

🛠️ 可用工具

📁 文件操作(8个工具)

工具 说明
list_files_code 使用可选的递归列表列出文件和目录
read_file_code 使用编码和行范围选项读取文件内容
create_file_code 创建具有覆盖保护的新文件
delete_file_code 使用递归选项删除文件和目录
copy_file_code 将文件和目录复制到新位置
move_file_code 移动或重命名文件和目录
create_directory_code 使用递归父级创建创建目录
search_files_code 使用正则表达式支持跨文件搜索文本模式

⚡ 高级文件操作(6个工具)

工具 说明
replace_lines_code 用内容验证替换特定行
insert_lines_code 在特定行位置插入内容
delete_lines_code 从文件中删除特定行范围
append_to_file_code 将内容附加到文件末尾
prepend_to_file_code 将内容预置到文件开头
find_and_replace_code 高级查找/替换正则表达式支持

🖥️ 命令执行(8个工具)

工具 说明
execute_shell_command_code 执行带有超时控制的shell命令
execute_streaming_command_code 使用实时输出流执行命令
kill_process_code 按PID或名称终止进程
list_processes_code 列出正在运行的进程并进行筛选
kill_all_processes_code 杀死多个匹配模式的进程
check_command_code 检查系统上的命令可用性
get_system_info_code 获取全面的系统信息
run_script_code 使用适当的解释器执行脚本文件

📊 项目分析(3个工具)

工具 说明
analyze_project 分析项目结构并提供见解
get_project_stats 获取详细的代码库统计信息
find_dependencies 发现和分析项目依赖关系

🔍 VS代码集成(4个工具)

工具 说明
search_symbols_code 使用模糊匹配在工作空间中搜索符号
get_symbol_definition_code 获取具有类型信息的符号定义
get_document_symbols_code 获取文件的分层符号轮廓
get_diagnostics_code 分析代码中的错误和警告

🔧 发展

脚本

  • npm run build -构建TypeScript源代码
  • npm run start -启动MCP服务器
  • npm run dev -构建并启动开发模式
  • npm run watch -监视更改并自动重建
  • npm run test -运行测试套件

项目结构

src/
├── index.ts              # Main server implementation
├── tools/                # Tool definitions and handlers
│   ├── file-tools.ts     # Basic file operations
│   ├── advanced-file-tools.ts # Advanced file editing
│   ├── command-tools.ts  # Command execution
│   ├── project-tools.ts  # Project analysis
│   └── vscode-integration-tools.ts # VS Code features
├── types/                # TypeScript type definitions
├── utils/                # Utility functions
│   ├── file-utils.ts     # File operation utilities
│   ├── command-utils.ts  # Command execution utilities
│   ├── file-watcher.ts   # File watching capabilities
│   └── logger.ts         # Logging utilities

🔒 安全

此MCP服务器仅用于防御开发任务。它包括:

  • 输入验证和净化
  • 安全文件操作边界
  • 流程执行控制
  • 错误处理和日志

🤝 贡献

  1. 分叉存储库
  2. 创建要素分支(git checkout -b feature/amazing-feature)
  3. 提交您的更改(git commit -m 'Add amazing feature')
  4. 推到分支(git push origin feature/amazing-feature)
  5. 打开拉取请求

📝 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

🐛 问题与支持

如果您遇到任何问题或有疑问:

  1. 检查 问题 章节
  2. 创建包含详细信息的新问题
  3. 包括错误日志和配置详细信息

🙏 致谢