Local Git MCP Server 使用说明

项目简介

Local Git MCP Server 是一个基于 Model Context Protocol (MCP) 构建的后端服务器,它允许LLM客户端通过标准化的MCP协议与本地Git仓库进行交互。该服务器提供了一系列工具,使得LLM能够创建、管理和操作Git仓库,例如查看仓库状态、提交更改、拉取和推送代码等。

主要功能点

  • 资源管理: 将本地Git仓库作为资源进行管理,允许LLM客户端发现和访问Git仓库。
  • Git操作工具: 提供丰富的Git操作工具,包括:
    • 创建新的Git仓库 (create_repository)
    • 将文件添加到暂存区 (git_add)
    • 提交更改 (git_commit)
    • 从远程仓库拉取代码 (git_pull)
    • 推送代码到远程仓库 (git_push)
    • 生成Diff (git_diff)
  • 仓库名校验: 对仓库名称进行严格校验,确保符合命名规范和安全要求。

安装步骤

  1. 克隆仓库:
    git clone https://github.com/okdshin/local-git-mcp-server.git
    cd local-git-mcp-server
  2. 安装依赖: 确保你的Python环境中已安装 'pip',然后运行以下命令安装项目依赖:
    pip install -r requirements.txt

服务器配置

为了让MCP客户端能够连接到 Local Git MCP Server,你需要提供以下配置信息。这些信息通常配置在MCP客户端的应用设置中。

{
  "serverName": "git-server",  // MCP服务器名称,与git_server.py中Server("git-server")定义一致
  "command": "python",       // 启动服务器的命令,这里使用python
  "args": [                 // 启动服务器命令的参数
    "git_server.py",        // 服务器脚本文件名
    "--repositories-dir",   // 指定Git仓库存放目录的参数
    "./repositories"      // Git仓库存放目录,默认为当前目录下的repositories文件夹,可自定义修改
  ]
}

参数注释:

  • 'serverName': MCP服务器的唯一标识名称,客户端通过此名称识别和连接服务器。
  • 'command': 用于启动服务器进程的可执行命令,通常是Python解释器。
  • 'args': 传递给启动命令的参数列表。
    • '"git_server.py"': 指定要执行的服务器脚本文件。
    • '"--repositories-dir"': 指定存放Git仓库的根目录的参数。
    • '"./repositories"': Git仓库根目录的路径。你可以根据需要修改此路径,例如 '"/path/to/your/git/repos"'。请确保MCP服务器进程对该目录有读写权限。

注意: 'repositories-dir' 参数用于指定Git仓库存储的根目录。服务器会在该目录下创建和管理Git仓库。请确保该目录存在并且服务器进程有相应的读写权限。

基本使用方法

  1. 启动服务器: 在安装步骤完成后,使用MCP客户端配置中提供的命令和参数启动 Local Git MCP Server。
  2. MCP客户端交互: 使用支持MCP协议的LLM客户端连接到该服务器。客户端可以通过以下方式与服务器交互:
    • 列出资源 (List Resources): 客户端可以请求服务器列出所有可用的Git仓库资源。资源URI以 'git://仓库名' 的形式表示。
    • 读取资源 (Read Resource): 客户端可以根据资源的URI读取Git仓库的详细信息,例如仓库名称、当前分支、最近提交等。
    • 列出工具 (List Tools): 客户端可以请求服务器列出所有可用的Git操作工具,例如 'create_repository', 'git_add', 'git_commit' 等,并查看每个工具的描述和输入参数Schema。
    • 调用工具 (Call Tool): 客户端可以调用特定的Git操作工具,并根据工具的输入参数Schema提供相应的参数,例如调用 'create_repository' 工具并提供仓库名称来创建一个新的Git仓库。

示例: 使用create_repository工具创建仓库 假设客户端要调用 'create_repository' 工具创建一个名为 'my-new-repo' 的仓库,客户端需要构造一个包含工具名称和参数的MCP请求,并发送给 Local Git MCP Server。服务器执行工具后,会将操作结果以MCP响应的形式返回给客户端。

{
  "tool_name": "create_repository",
  "arguments": {
    "name": "my-new-repo"
  }
}

通过以上步骤,LLM应用即可利用 Local Git MCP Server 提供的Git操作能力,实现与本地Git仓库的集成。

信息

分类

开发者工具