你是否曾经希望AI能够直接操作你的Git仓库,自动提交代码、创建分支、查看差异,甚至帮你解决合并冲突?今天要介绍的开源项目Git MCP服务器,正是为了实现这个目标而设计的。它由模型上下文协议官方团队开发,提供了与Git仓库交互和自动化的工具集。
项目基本信息
| 信息项 | 详情 |
|---|---|
| 项目名称 | Git |
| GitHub地址 | https://github.com/modelcontextprotocol/servers/tree/main/src/git |
| 项目描述 | 用于Git仓库交互与自动化的MCP服务器,借助大语言模型实现对Git仓库的读取、搜索和操作。 |
| 作者 | modelcontextprotocol |
| 开源协议 | MIT License |
| 开源状态 | 公开状态 |
| Languages | Python |
| 支持平台 | Windows / macOS / Linux |
| 最后更新 | 2026-04-23 |
一、项目介绍
Git MCP服务器是MCP官方提供的Git集成工具,让AI能够通过标准化协议与Git仓库交互。它提供了13个工具,覆盖了Git操作的常见场景。
这个服务器提供了以下工具:
- 状态与差异:
git_status、git_diff_unstaged、git_diff_staged、git_diff - 暂存与提交:
git_add、git_commit、git_reset - 日志与查看:
git_log、git_show - 分支管理:
git_create_branch、git_checkout - 仓库管理:
git_init
请注意,该项目目前仍处于早期开发阶段,功能和工具可能会发生变化和扩展。
二、核心优势
官方维护
由MCP官方团队开发维护,与MCP协议同步更新,稳定可靠。
功能完整
覆盖Git核心操作:
- 查看状态和差异
- 暂存和提交更改
- 查看提交日志
- 创建和切换分支
- 初始化仓库
多部署方式
支持uvx、pip、Docker等多种安装和运行方式。
简单易用
工具参数设计直观,AI可以轻松理解和使用。
开源免费
MIT许可证,可自由使用和修改。
三、适用场景
AI辅助版本控制
让AI帮你查看代码变更、生成提交信息、创建分支。
自动化Git工作流
在CI/CD流程中,AI可以自动提交代码、合并分支。
代码审查辅助
AI可以查看差异,分析变更内容。
项目初始化
AI可以自动初始化Git仓库并进行首次提交。
四、安装教程
系统要求
| 工具 | 用途 | 下载/安装方式 |
|---|---|---|
| Python | 运行环境 | [https://python.org/] (版本要求:3.8 或以上) |
| Git | 版本控制工具 | [https://git-scm.com/] |
| MCP客户端 | 如Claude Desktop、Cursor等 | 根据客户端官网下载 |
安装步骤
方式一:使用uvx(推荐)
无需安装,直接配置即可。
对于Claude Desktop:
找到配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
添加配置:
{
"mcpServers": {
"git": {
"command": "uvx",
"args": ["mcp-server-git", "--repository", "/path/to/git/repo"]
}
}
}方式二:使用pip安装
pip install mcp-server-git然后在配置中使用:
{
"mcpServers": {
"git": {
"command": "python",
"args": ["-m", "mcp_server_git", "--repository", "/path/to/git/repo"]
}
}
}方式三:使用Docker
{
"mcpServers": {
"git": {
"command": "docker",
"args": ["run", "--rm", "-i", "--mount", "type=bind,src=/Users/username,dst=/Users/username", "mcp/git"]
}
}
}对于VS Code:
在用户设置(JSON)中添加:
{
"mcp": {
"servers": {
"git": {
"command": "uvx",
"args": ["mcp-server-git"]
}
}
}
}五、使用示例
配置完成后,你就可以在MCP客户端中使用自然语言来操作Git仓库了。
示例1:查看状态
用户指令:“查看当前Git仓库的状态”
AI会调用git_status工具:
{
"repo_path": "/path/to/repo"
}示例2:查看未暂存的更改
用户指令:“显示工作目录中尚未暂存的更改”
AI会调用git_diff_unstaged工具。
示例3:暂存文件
用户指令:“将src/main.py和README.md添加到暂存区”
AI会调用git_add工具:
{
"repo_path": "/path/to/repo",
"files": ["src/main.py", "README.md"]
}示例4:提交更改
用户指令:“提交暂存的更改,提交信息为‘添加主程序文件和文档’”
AI会调用git_commit工具:
{
"repo_path": "/path/to/repo",
"message": "添加主程序文件和文档"
}示例5:查看提交日志
用户指令:“显示最近5次提交记录”
AI会调用git_log工具:
{
"repo_path": "/path/to/repo",
"max_count": 5
}示例6:创建分支
用户指令:“从main分支创建名为feature-login的新分支”
AI会调用git_create_branch工具:
{
"repo_path": "/path/to/repo",
"branch_name": "feature-login",
"start_point": "main"
}示例7:切换分支
用户指令:“切换到feature-login分支”
AI会调用git_checkout工具:
{
"repo_path": "/path/to/repo",
"branch_name": "feature-login"
}示例8:查看提交内容
用户指令:“显示提交abc123的内容”
AI会调用git_show工具:
{
"repo_path": "/path/to/repo",
"revision": "abc123"
}示例9:比较分支差异
用户指令:“比较feature-login分支和main分支的差异”
AI会调用git_diff工具:
{
"repo_path": "/path/to/repo",
"target": "main"
}示例10:取消暂存
用户指令:“取消所有已暂存的更改”
AI会调用git_reset工具:
{
"repo_path": "/path/to/repo"
}六、常见问题
问题1:提示“repository path not found”
解决方案:
- 确认
--repository参数指定的路径正确 - 确认该路径是一个有效的Git仓库(有.git目录)
问题2:uvx命令找不到
解决方案:
- 安装uv:
pip install uv - 或使用pip安装方式替代
问题3:Docker方式挂载路径问题
解决方案:
- 确保挂载的路径在容器内可访问
- 使用绝对路径,不要使用相对路径
问题4:git_log的max_count默认值
解决方案:默认显示10条提交记录,可以通过参数调整。
问题5:git_diff的target参数格式
解决方案:可以是分支名、提交哈希、标签等任何Git引用的格式。
七、总结
Git MCP服务器是MCP官方提供的Git集成工具,让AI能够通过标准化协议操作Git仓库。它提供了13个工具,覆盖了日常Git操作的核心功能。
这个项目的最大价值在于:
- 官方维护:由MCP官方团队开发,稳定可靠
- 功能完整:覆盖状态、差异、暂存、提交、分支等核心操作
- 多部署方式:支持uvx、pip、Docker
- 简单易用:工具参数设计直观
- MIT许可证:可自由使用和修改
如果你是Git用户,并且希望用AI来辅助版本控制操作,Git MCP服务器是一个非常实用的工具。
git_diff可以比较分支和提交差异。
git_show可以查看指定提交的内容。
git_add支持批量暂存多个文件。
git_reset可以取消所有暂存的更改。
--repository参数要指定正确的路径。