mcpField
G
Gitrama Mcp

Gitrama Mcp

本地服务
github.com/ahmaxdev版本控制031 周前更新

关于 Gitrama Mcp

Gitrama Mcp 通过 15 个 MCP 工具向 AI 助手开放 Git 和仓库工作流操作,面向使用兼容 MCP 的 IDE 和客户端的开发者。功能涵盖仓库分析、代码审查、差异查看、提交、分支、推送、PR 描述、变更日志及工作流流管理。

主要功能

  1. 01提供 15 个 Git 工作流工具
  2. 02生成提交信息和分支名称
  3. 03仓库问答与结构扫描
  4. 04风险标注差异和代码审查
  5. 05生成 PR 描述和变更日志
  6. 06管理工作流流

适用场景

  1. 01推送前审查代码变更
  2. 02根据暂存内容生成提交
  3. 03根据任务描述创建分支
  4. 04准备 PR 描述和变更日志

MCP 相关

通过 MCP 向客户端提供 Gitrama CLI 的 15 个工具,涵盖 Git 操作、仓库分析、审查和工作流管理。支持 stdio 与 streamable HTTP 传输。

配置

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

暂未收录安装方式

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

代码仓库

工具

还没有获取到工具列表

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

详细介绍

🌿 Gitrama MCP 服务

为 IDE 提供 AI 驱动的 Git 智能功能——智能提交、分支名称、PR 描述、差异、代码审查、推送和工作流管理。

PyPI Python License: Proprietary

这是什么?

Gitrama MCP 服务将 Gitrama 的 CLI 封装为 15 个 MCP 工具,供任何 AI 助手使用。无需在终端中输入 gtr commit,你的 AI 助手会直接调用工具——分析代码变更、生成提交消息、建议分支名称、审查代码等。

适用于: Cursor · Claude Desktop · Claude Code · Windsurf · VS Code · Zed · 任何兼容 MCP 的客户端


v1.3.2 新功能

  • 新增 5 个工具——gitrama_scan、gitrama_diff、gitrama_review、gitrama_status 和 gitrama_push
  • 健康检查显示版本——gitrama_health 现在会返回 MCP 服务版本,方便你确认当前运行的具体版本
  • 交互式 HTML 差异面板——gitrama_diff 会启动浏览器面板,展示风险标注的差异、变更率、耦合上下文,以及叠加在每个变更文件上的贡献者信息
  • 在聊天中推送——gitrama_push 支持上游跟踪、force-with-lease,并自动解析当前分支
  • 工具数量从 10 更新至 15

安装(< 60 秒)

步骤 1:安装软件包
pip install gitrama-mcp

也可以使用 uv:

uv pip install gitrama-mcp

此操作会同时安装 MCP 服务和 gitrama CLI。

步骤 2:连接到 IDE
Cursor

将以下内容添加到项目中的 .cursor/mcp.json(或全局设置):

{
  "mcpServers": {
    "gitrama": {
      "command": "gitrama-mcp"
    }
  }
}
Claude Desktop

添加到 claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "gitrama": {
      "command": "gitrama-mcp"
    }
  }
}
Claude Code
claude mcp add gitrama gitrama-mcp
VS Code

添加到 .vscode/mcp.json:

{
  "mcpServers": {
    "gitrama": {
      "command": "gitrama-mcp"
    }
  }
}
Windsurf

添加到 ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "gitrama": {
      "command": "gitrama-mcp"
    }
  }
}
Zed

添加到 Zed 设置中(⌘,):

{
  "context_servers": {
    "gitrama": {
      "command": {
        "path": "gitrama-mcp"
      }
    }
  }
}
步骤 3:完成。

向 AI 提问:“提交我暂存的变更”——然后看它调用 gitrama_commit。


工具(15 个)

健康与诊断
工具描述
gitrama_health检查 AI 服务健康状况并确认 MCP 服务版本
仓库智能
工具描述
gitrama_ask提出任何关于仓库的问题——所有权、历史、风险、变更
gitrama_scan全面的结构健康扫描——连续性风险、边界熵、复现模式
gitrama_status显示工作树状态并提供 AI 解读
代码审查与差异
工具描述
gitrama_diff带交互式 HTML 面板的风险标注差异——变更率、耦合关系、贡献者上下文
gitrama_review推送前的 AI 代码审查——安全性、正确性、风险、耦合关系
提交智能
工具描述
gitrama_commit为暂存的变更生成 AI 提交消息
gitrama_stage_and_commit一步暂存文件并提交
gitrama_unstage从暂存区移除文件,但不丢弃变更
分支与推送管理
工具描述
gitrama_branch根据自然语言描述创建分支
gitrama_push将当前分支推送到远程,并支持上游跟踪和 force-with-lease
PR 与变更日志
工具描述
gitrama_pr根据分支差异生成 PR 描述
gitrama_changelog生成两个引用之间的变更日志
工作流流管理
工具描述
gitrama_stream_status显示当前工作流流
gitrama_stream_switch切换到其他流
gitrama_stream_list列出仓库中的所有流

工具详情

gitrama_health

检查 AI 服务的连接状态,并确认正在运行的 MCP 服务版本。

示例提示词: "运行 gitrama 健康检查"

示例输出:

✅ AI server is healthy!
   🤖 Model: grok-4.20-reasoning
   🌐 Connected to: https://api.x.ai/v1
 
🔖 Gitrama MCP Server: v1.3.2

gitrama_scan

对仓库进行全面的结构健康扫描。为每个文件评估连续性风险、边界熵和重复模式。扫描结果会缓存到 last_scan.json,供 gtr diff 和 gtr review 使用。

示例提示词: "对我的仓库运行完整的 gitrama 扫描"


gitrama_diff

显示带风险注释的当前更改差异。打开一个交互式 HTML 浏览器面板,叠加显示 Gitrama 的结构智能分析结果——每个已更改文件的风险评分、变更率、耦合缺口和贡献者背景。

参数:

参数类型默认值描述
targetstring""用于比较差异的分支或提交
stagedboolfalse仅比较已暂存的更改

示例提示词:

  • "显示我已暂存更改的差异"
  • "比较我的分支与 main 的差异"

gitrama_review

在提交前对当前更改运行 AI 代码审查。返回按严重程度分级的发现结果——安全性、正确性、风险和耦合——以及审查结论和建议的提交消息。

参数:

参数类型默认值描述
modestring"staged""staged"、"uncommitted"、"quick"、"full"

示例提示词:

  • "审查我已暂存的更改"
  • "全面审查我所有尚未提交的更改"

gitrama_push

将当前分支推送到远程仓库。安全强制推送时使用 --force-with-lease;如果未指定分支,则自动解析当前分支。

参数:

参数类型默认值描述
remotestring"origin"要推送到的远程仓库
branchstring""要推送的分支(默认:当前分支)
forceboolfalse使用 --force-with-lease 强制推送
set_upstreamboolfalse设置上游跟踪分支(-u)

示例提示词:

  • "推送我的更改"
  • "推送此分支并设置上游分支"
  • "强制推送当前分支"

gitrama_status

显示工作区状态,并使用 AI 解读已暂存、未暂存和未跟踪的文件。

示例提示词: "我当前的 git 状态是什么?"


gitrama_ask

用自然语言询问有关仓库的问题。Gitrama 会分析提交历史、文件结构、归责数据和差异并给出回答。

参数:

参数类型默认值描述
questionstring必填有关仓库的任意问题
streamstring""可选的流上下文覆盖值
deepboolfalse启用完整的仓库历史访问权限

示例提示词:

  • "谁负责 auth 模块?"
  • "这个仓库中风险最高的文件是什么?"
  • "过去 3 天有哪些更改?"
  • "解释 src/utils/retry.py 的用途"

gitrama_commit

为已暂存的更改生成 AI 驱动的提交消息。

参数:

参数类型默认值描述
messagestring""可选的自定义消息(跳过 AI 生成)

示例提示词: "提交我已暂存的更改"


gitrama_stage_and_commit

暂存文件并一步完成提交。

参数:

参数类型默认值描述
filesstring"."要暂存的文件(. 表示全部,或以空格分隔的路径)
messagestring""可选的自定义消息

示例提示词: “暂存并提交我的所有更改”


gitrama_unstage

从暂存区移除文件,但不丢弃更改。

参数:

参数类型默认值描述
filesstring""以空格分隔的待取消暂存文件路径
all_filesboolfalse取消暂存当前暂存区中的所有内容

示例提示词: “取消暂存 src/auth.py”


gitrama_branch

根据描述生成由 AI 驱动的分支名称,并可选择创建该分支。

参数:

参数类型默认值描述
descriptionstring必填你正在处理的内容
createbooltrue创建并切换到该分支

示例提示词:

  • “创建一个用于添加 OAuth2 支持的分支”
  • “建议一个用于修复支付超时的分支名称,但不要创建”

gitrama_pr

根据当前分支与基准分支之间的差异生成 PR 描述。

参数:

参数类型默认值描述
basestring""目标分支(默认:main/master)

示例提示词: “为此分支撰写 PR 描述”


gitrama_changelog

生成两个引用之间的变更日志。

参数:

参数类型默认值描述
sincestring""起始引用(标签、分支、哈希)
untilstring""结束引用(默认:HEAD)
formatstring"markdown""markdown" 或 "json"

示例提示词: “生成从 v1.1.4 开始的变更日志”


流工具
工具参数示例提示词
gitrama_stream_statusnone“我当前在哪个流上?”
gitrama_stream_switchname, description“切换到 hotfix 流”
gitrama_stream_listnone“列出我的所有 gitrama 流”

v1.3.2 工作流

连接全部 15 个工具后,你可以通过聊天完成整个开发循环:

describe intent  →  stream switch
write code
ask gitrama what changed  →  diff (HTML panel)
review before push
commit with AI message
push
PR description generated

无需终端。无需手动执行 git 命令。


配置

环境变量
变量默认值描述
GTR_CWDos.getcwd()git 操作的工作目录
GTR_MCP_TRANSPORT"stdio"传输方式:"stdio" 或 "streamable-http"
GTR_MCP_HOST"0.0.0.0"HTTP 主机(使用 streamable-http 时)
GTR_MCP_PORT"8765"HTTP 端口(使用 streamable-http 时)
HTTP 传输(用于 CI/CD)
GTR_MCP_TRANSPORT=streamable-http GTR_MCP_PORT=8765 gitrama-mcp

然后将客户端连接到 http://localhost:8765/mcp。


要求

  • Python 3.10+
  • 已安装 Git,且位于 PATH 中
  • Gitrama API 密钥或本地 Ollama 实例

设置你的 API 密钥:

gtr config --key YOUR_API_KEY

或使用本地模型:

gtr config --provider ollama --model llama3

开发

git clone https://github.com/ahmaxdev/gitrama-mcp.git
cd gitrama-mcp
pip install -e ".[dev]"
 
# Test with MCP Inspector
mcp dev src/gitrama_mcp/server.py

许可证

专有许可——参见 LICENSE。


由 Alfonso Harding 构建 · gitrama.ai

🌿

评论

支持 Markdown

第一次接触 MCP?

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

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