mcpField
G
git-mcp

git-mcp

本地服务
github.com/wricardo版本控制080 周前更新

关于 git-mcp

git-mcp 是用于通过 MCP 与 Git 仓库交互的服务,面向需要查询仓库状态和历史的开发者。它提供提交记录、文件变更、差异和单文件历史查询。

主要功能

  1. 01查看提交记录及作者、日期和消息
  2. 02列出指定提交范围内的变更文件
  3. 03查看文件在提交间的差异
  4. 04查询单个文件的提交历史

适用场景

  1. 01检查仓库近期提交
  2. 02定位指定范围内变更的文件
  3. 03审阅文件差异和历史

MCP 相关

向 MCP 客户端提供 Git 仓库管理及历史、文件变更和差异查询工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

git-mcp

此项目是一个模型上下文协议(MCP)服务,旨在与 Git 仓库交互。它提供了通过 MCP 工具管理和操作 Git 仓库的功能。


🚀 功能

✅ Git 仓库管理:执行 Git 操作并管理仓库。
✅ 仓库历史记录:查看提交历史记录和文件随时间发生的更改。
✅ 文件跟踪:跟踪文件更改并查看文件历史记录。
✅ 差异操作:查看提交之间的详细文件差异。


📋 要求

  • Go 1.23.0 或更高版本
  • 系统中已安装 Git
  • 可以访问 Git 仓库

⚙️ 设置

1️⃣ 安装软件包
go install github.com/wricardo/git-mcp@latest
2️⃣ 配置 MCP 客户端设置

将以下配置添加到 MCP 设置中:

"git-mcp": {
  "command": "git-mcp",
  "env": {
    "WORKDIR": "/path/to/your/git/repository"
  },
  "disabled": false,
  "autoApprove": []
}

▶️ 使用方法

运行 MCP 服务:

git-mcp

🛠️ 工具

🔹 git-log

显示 Git 提交历史记录,包括提交哈希、作者、日期和提交消息。

📌 参数:
  • limit(可选):要显示的提交数量(默认值:10)
📌 示例响应:
[
  {
    "hash": "1234567890abcdef",
    "author": "John Doe",
    "date": "2024-03-20",
    "message": "Initial commit"
  }
]

🔹 git-changed-files

列出 HEAD 与向前指定数量的提交之间发生更改的文件。

📌 参数:
  • commits_back(必填):从 HEAD 向前回溯的提交数量
📌 示例响应:
[
  {
    "path": "README.md",
    "changeType": "modified"
  }
]

🔹 git-file-diff

查看提交之间的详细文件差异。

📌 参数:
  • file_path(必填):要查看差异的文件路径
  • commits_back(必填):从 HEAD 向前回溯的提交数量
📌 示例响应:
{
  "path": "README.md",
  "changes": [
    {
      "type": "add",
      "content": "New line added",
      "lineNumber": 42
    }
  ]
}

🔹 git-file-history

查看特定文件的提交历史记录。

📌 参数:
  • file_path(必填):要查看历史记录的文件路径
  • limit(可选):要显示的提交数量(默认值:10)
📌 示例响应:
[
  {
    "hash": "1234567890abcdef",
    "author": "John Doe",
    "date": "2024-03-20",
    "message": "Update README.md"
  }
]

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。