项目简介

'mcp-devtools' 是一个基于 Model Context Protocol (MCP) 构建的强大后端服务器,旨在为大型语言模型(LLM)客户端(如AI助手)提供一套全面的软件开发工具。它以标准化的方式暴露各种开发功能作为可调用的“工具”,允许AI助手进行代码编写、文件管理和版本控制等操作,从而实现自动化和智能化的开发工作流。

主要功能点

  • AI 代理式编辑 ('ai_edit'): 通过集成 Aider AI 工具,LLM 客户端能够以自然语言指令进行代码修改、功能实现、bug 修复和代码重构。此工具不自动提交更改,而是提供详细的修改报告(包含 Aider 的计划、实际修改的 Diff 等),由用户审查后决定是否提交,确保人工在循环中的控制权。
  • 文件管理 ('read_file', 'write_to_file'): 允许 AI 助手读取文件内容,或将指定内容写入文件(可创建新文件或覆盖现有文件),并支持 TypeScript/JavaScript 文件编辑时的类型检查。
  • Git 版本控制 ('git_status', 'git_diff', 'git_stage_and_commit', 'git_log', 'git_branch', 'git_show'): 提供完整的 Git 操作能力,包括检查仓库状态、查看文件差异、暂存并提交更改、查看提交历史、分支管理(创建、切换、重命名、列出)以及查看特定提交的详情和差异。
  • 终端集成 ('execute_command'): 允许 AI 助手执行任意的 Shell 命令,以处理其他工具未覆盖的复杂任务,例如运行构建脚本、安装依赖或执行自定义脚本。
  • 会话管理: 支持AI编辑会话的管理和清理,可以列出活动会话或获取特定会话的状态,并根据TTL(生存时间)自动清理过期会话,同时支持实验性的Git工作区隔离,确保每次AI编辑操作的独立性。

安装步骤

  1. 安装 Python 和 uv:

    • 确保您的系统安装了 Python 3.12
    • 安装 'uv',这是一个高效的 Python 包安装和解析器(类似 pip 和 virtualenv)。
      • Linux/macOS:
        curl -LsSf https://astral.sh/uv/install.sh | sh
      • Windows:
        powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
  2. 安装 Aider:

    • 如果需要使用 'ai_edit' AI 代码编辑工具,则需要安装 Aider。
      python -m pip install aider-install && aider-install
    • 根据需要配置 Aider (例如 '.aider.conf.yml' 文件,设置模型、API 密钥等)。
  3. 运行服务器:

    • 通过 PyPI 包运行:
      uvx mcp-devtools -p 1337
    • 通过 GitHub 仓库运行:
      • Linux/macOS:
        git clone "https://github.com/daoch4n/mcp-devtools/"
        cd mcp-devtools
        ./server.sh -p 1337
      • Windows:
        git clone "https://github.com/daoch4n/mcp-devtools/"
        cd mcp-devtools
        .\server.ps1 -p 1337
    • ('-p 1337' 指定服务器监听的端口,您可以根据需要更改。)

服务器配置

您的MCP客户端需要配置连接此 'mcp-devtools' 服务器。如果您的客户端支持直接启动MCP服务器进程,可以使用以下信息进行配置:

  • 服务器名称 (name): 'devtools'
  • 服务器描述 (description): 提供Git仓库管理、文件操作、命令执行及AI代码编辑能力的开发工具服务器。
  • 启动命令 (command): 'uvx' (推荐,因为已安装uv)
  • 命令参数 (args): '["mcp-devtools", "-p", "1337"]' (其中 '-p' 指定服务器监听的端口,可根据实际运行端口调整)

示例配置(请根据您的MCP客户端的具体配置格式调整):

{
  "mcpServers": {
    "devtools": {
      "name": "MCP开发工具服务器",
      "description": "提供Git仓库管理、文件操作、命令执行及AI代码编辑能力的开发工具服务器。",
      "command": "uvx",
      "args": ["mcp-devtools", "-p", "1337"]
    }
  }
}

如果您的MCP客户端仅支持连接已运行的服务器(而不是直接启动),则您需要在服务器启动后,将客户端配置为连接到服务器的URL。例如,如果服务器在 'localhost:1337' 上运行,客户端配置应包含 '"url": "http://localhost:1337/sse"'。

基本使用方法

启动 'mcp-devtools' 服务器后,您的AI助手(MCP客户端)可以通过 JSON-RPC 协议与其通信,调用其提供的各种工具。例如,一个支持 MCP 协议的 AI 助手框架(如 RooCode、Kiroo 或 Rooroo 代理),可以通过配置连接到此服务器,并利用其提供的工具集来执行以下操作:

  1. 代码修改: AI 助手可以通过调用 'ai_edit' 工具,传入详细的修改指令和目标文件列表,让 Aider AI 执行代码修改,并获得修改报告进行审查。
  2. Git 操作: 调用 'git_status' 查看仓库状态,'git_diff' 查看修改,'git_stage_and_commit' 提交更改,'git_branch' 进行分支管理等。
  3. 文件读写: 调用 'read_file' 读取文件内容,'write_to_file' 写入或更新文件。
  4. 执行 Shell 命令: 调用 'execute_command' 执行任意的 Shell 命令来处理复杂的系统级任务。

通过这种方式,AI 助手可以实现从需求分析、计划、编码、测试到部署的整个软件开发生命周期的自动化协作。

信息

分类

开发者工具