Token导航 LogoToken导航TokenDH.com
Commit Summary MCP logo
开发工具stdio官方级别未说明来源级核验

Commit Summary MCP

MCP Server

一个基于Python的Git提交摘要服务,通过分析本地Git仓库的提交记录和差异,生成易于理解的摘要,帮助开发者快速了解项目变更。

工具数

2

提示词数

0

GitHub Stars

0

资源数

0
代码审查PythonClaude开发工具Claude DesktopClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Riomari1

提供方

Riomari1

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uv run commit-summary-mcp

详细介绍

提交摘要MCP

基于Python的模型上下文协议(MCP)服务器,用于检查本地Git存储库并生成最新工作的人性化摘要。公开了两个工具:

  1. get_recent_commits(limit: int = 5) -列出最近的提交(哈希、作者、ISO日期、一线消息)。
  2. summarize_diff(commit_hash: str) -获取给定提交的差异,清理输出,将其发送到文本模型,并返回一个简洁的摘要,重点关注意图、动机和风险。

需求

  • Python 3.11+
  • PATH上的Git CLI
  • Ollama 0.12+本地跑步(ollama serve)
  • gpt-oss:20b 模型已拉动并准备装载(ollama pull gpt-oss:20b)

安装

# Recommended: create a virtual environment or use uv
uv sync  # or: python -m venv .venv && .venv\Scripts\activate && pip install -e .

这将安装 commit-summary-mcp 中定义的控制台入口点 pyproject.toml.

运行服务器

# From the root of the git repository you want to summarize
uv run commit-summary-mcp

# or explicitly point at another repo
COMMIT_SUMMARY_REPO=C:\path\to\repo uv run commit-summary-mcp

该过程保持与STDIN/STDOUT的连接,因此MCP兼容的客户端(例如,Claude Desktop、Cursor、, npx @modelcontextprotocol/cli)可以将其作为stdio服务器启动。

环境变量

变量描述
COMMIT_SUMMARY_MODEL可选。覆盖默认值 gpt-oss:20b Ollama模型标签。
COMMIT_SUMMARY_OLLAMA_HOST可选。Ollama服务器的HTTP基本URL(回退到 OLLAMA_HOSThttp://127.0.0.1:11434).
COMMIT_SUMMARY_REPO可选。要检查的仓库的绝对路径。默认为第一个 .git 从当前工作目录向上找到的目录。
COMMIT_SUMMARY_HTTP_HOST可选。运行SSE/HTTP服务器时要绑定的主机名(默认为FastMCP的 127.0.0.1).
COMMIT_SUMMARY_HTTP_PORT可选。SSE/HTTP服务器的端口(默认为FastMCP的 8000).
COMMIT_SUMMARY_SSE_PATH可选。SSE路径的覆盖(默认为 /sse).

工具合同

get_recent_commits

  • 参数: limit (int,可选,默认为5,上限为20)。
  • 退货:JSON对象数组 hash, author, date, message.
  • 故障模式:如果Git日志失败(例如,不是仓库),则引发工具错误。

summarize_diff

  • 参数: commit_hash (字符串,必填)。
  • 退货:JSON对象 { "commit": "", "summary": "" }.
  • 哈希值无效:返回 { "error": { "message": "...", "hint": "..." } }.
  • 模型误差:转换为相同的JSON错误形状,并提示如何确保Ollama正在运行并且模型标记在本地存在。

验收标准检查表

  • 通过启动服务器 uv run commit-summary-mcp 注册这两个工具(可通过任何MCP客户端发现)。
  • 召唤 get_recent_commits(3) 生成三个如上所述格式的提交对象。
  • 召唤 summarize_diff("") 返回一个JSON对象,其中包含一个短哈希值和一个自然语言摘要(没有原始差异块)。
  • 传递一个空的、缺失的或无效的哈希值会返回结构化的JSON错误,并给出有用的提示。

手动测试提示

  1. 启动Ollama: ollama serve 并确保 ollama pull gpt-oss:20b 已运行。
  2. uv run commit-summary-mcp (或 python -m commit_summary_server)在git仓库中。
  3. 从另一个终端,使用MCP测试客户端(例如 npx @modelcontextprotocol/cli 在交互模式下)调用工具。
  4. 从管道传输哈希 get_recent_commits 进入 summarize_diff 以验证汇总器路径。

暴露服务器的URL连接器

如果你需要一个公共HTTPS URL(例如用于ChatGPT的URL连接器),请运行HTTP/SSE变体并将其放置在隧道/反向代理后面:

  1. 在本地启动SSE服务器:
   # Optional overrides:
   #   set COMMIT_SUMMARY_HTTP_HOST=0.0.0.0
   #   set COMMIT_SUMMARY_HTTP_PORT=8787
   uv run commit-summary-mcp-sse
  1. 启动一个转发到本地端口的HTTPS隧道。示例:

- Cloudflare隧道: cloudflared tunnel --url http://localhost:8787 - 吸烟: ngrok http 8787

  1. 取隧道打印的HTTPS URL(例如。, https://mcp-demo.ngrok.app)并附加SSE路径(默认 /sse).在MCP客户端的“URL连接器”表单中输入该URL。

隧道终止TLS并将所有SSE/MCP流量转发到本地FastMCP服务器,因此连接器现在满足“公共HTTPS+SSE”要求,而无需更改代码。

故障排除

  • 未找到git仓库:在仓库或集合中启动服务器 COMMIT_SUMMARY_REPO.
  • 模型误差:确保 ollama serve 正在运行,目标模型被拉取,以及 COMMIT_SUMMARY_MODEL/COMMIT_SUMMARY_OLLAMA_HOST 指向正确的值(它们也可以回退到 OLLAMA_HOST).
  • 二进制重提交:diff清洁器会自动丢弃二进制斑点并截断非常大的diff;摘要将提及省略信息的时间。

目录标签

目录标签

代码审查PythonClaude开发工具Git分析本地部署提交摘要自然语言处理

支持客户端

Claude DesktopClaudeCursor

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP