Git读取服务

一个用于读取Git状态、差异、日志和文件历史的模型上下文协议(MCP)服务器,为代码审查代理提供只读访问Git仓库的优化服务。

  • by yryuu
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 yryuu/mcp-git-read

使用说明

MCP Git读取服务器

用于读取git状态、差异、日志和检查文件历史的模型上下文协议(MCP)服务器。此服务器提供对git存储库的只读访问,针对代码审查代理进行了优化。

使用Claude Desktop

要将此服务器与Claude Desktop一起使用,请将以下配置添加到您的 claude_desktop_config.json:

选项1:直接从GitHub运行(推荐)

此方法需要 npx 安装。

{
  "mcpServers": {
    "git-read": {
      "command": "npx",
      "args": [
        "-y",
        "github:yryuu/mcp-git-read"
      ],
      "env": {
        "MCP_ROOT_PATH": "/path/to/your/git/repository"
      }
    }
  }
}

选项2:在本地运行

克隆存储库,构建它,并指向它。

git clone https://github.com/yryuu/mcp-git-read.git
cd mcp-git-read
npm install
npm run build

然后配置:

{
  "mcpServers": {
    "git-read": {
      "command": "node",
      "args": [
        "/absolute/path/to/mcp-git-read/dist/index.js"
      ],
      "env": {
        "MCP_ROOT_PATH": "/path/to/your/git/repository"
      }
    }
  }
}

工具

git_status

返回存储库的状态(已修改、暂存、未跟踪的文件)。

git_diff

返回存储库的差异。

  • staged (布尔值,可选):如果为true,则显示缓存(暂存)的更改。
  • target (string,可选):要比较的目标分支/提交。
  • source (string,可选):源代码分支/提交。
  • files (字符串数组,可选):要包含在差异中的文件列表。

git_log

返回提交日志。

  • max_count (数字,可选):默认值10。

git_blame

显示每行最后修改的版本和作者。

  • path (字符串,必填)

git_show

显示特定修订版的对象或文件内容。

  • object (string,必填):提交哈希或“ref:path”。

配置环境变量

  • MCP_ROOT_PATH:(必选)要读取的git存储库的绝对路径。如果省略,则默认为启动进程的目录(这可能对npx没有帮助)。

发展

npm install
npm test