首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
首页
学习
活动
专区
圈层
工具
MCP广场
MCP广场 >详情页
mcp-server-auto-commit2025-05-210分享
github
分析Git仓库中的更改,并使用OpenAI的GPT模型生成规范的提交信息,支持对已暂存和未暂存的更改进行详细总结。
By jatinsandilya
2025-05-210
github
详情内容

MCP Server 自动提交更改 🛠️

此实现提供了一个 Git 变更分析器,使用 OpenAI 的 GPT 模型生成提交信息。

Git Auto Commit Server MCP server

演示

特性

  • 分析仓库中的 Git 变更(包括暂存和未暂存的变更)
  • 使用 GPT-4o-mini 生成符合规范的提交信息
  • 提供详细的摘要:
    • 📝 修改的文件
    • ✨ 新增的文件
    • 🗑️ 删除的文件
    • 📄 详细变更(每个文件最多 10 行)
  • 使用 @modelcontextprotocol/sdk 构建
  • 为每次提交添加自动提交签名

项目结构

mcp-server-auto-commit/
├── index.ts        # Main server implementation with git analysis tool
├── package.json    # Project dependencies
├── tsconfig.json   # TypeScript configuration
└── build/         # Compiled JavaScript output

前提条件

  • 安装 Node.js
  • OpenAI API 密钥
  • 需要分析的 Git 仓库
  • pnpm 包管理器

开始使用

  1. 克隆此仓库:
git clone https://github.com/jatinsandilya/mcp-server-auto-commit.git
cd mcp-server-auto-commit
  1. 安装依赖项:
pnpm install
  1. 通过以下方法之一设置您的 OpenAI API 密钥:

    • 设置为环境变量:OPENAI_API_KEY=your-api-key
    • 作为命令行参数传递:--key your-api-key
    • 添加到项目根目录的 .env 文件中
  2. 构建项目:

pnpm run build

这将生成 /build/index.js 文件——您的编译后的 MCP 服务器脚本。

与 Cursor 一起使用

  1. 转到 Cursor 设置 -> MCP -> 添加新的 MCP 服务器
  2. 配置您的 MCP:
    • 名称:git-auto-commit
    • 类型:command
    • 命令:node ABSOLUTE_PATH_TO_MCP_SERVER/build/index.js --key your-api-key
      (如果未在环境中设置,请将 your-api-key 替换为您的实际 OpenAI API 密钥)

与 Claude Desktop 一起使用

将以下 MCP 配置添加到您的 Claude Desktop 配置中:

{
  "mcpServers": {
    "git-auto-commit": {
      "command": "node",
      "args": ["ABSOLUTE_PATH_TO_MCP_SERVER/build/index.js", "--key", "your-api-key"]
    }
  }
}

可用工具

git-changes-commit-message

此工具分析您仓库中的当前 Git 变更,并使用 OpenAI 的 GPT-4o-mini 模型生成提交信息。它提供:

  • 带有状态指示符的修改文件列表
  • 新增文件列表
  • 删除文件列表
  • 每个文件的详细变更(为了可读性,每个文件限制为 10 行)
  • 符合规范的提交信息
  • 自动提交签名

使用参数:

  • autoCommitPath:可选路径,用于分析特定目录/文件。如果未提供,则使用当前工作目录。

开发

index.ts 中的实现展示了:

  1. 使用适当的配置设置 MCP 服务器
  2. 处理命令行参数和环境变量
  3. 使用 GPT-4o-mini 模型集成 OpenAI 的 API
  4. 使用子进程进行 Git 操作
  5. 错误处理和回退机制
  6. 详细的变更分析和格式化

要修改或扩展实现:

  1. 更新 index.ts 中的服务器配置:
const server = new McpServer({
  name: "git-auto-commit",
  version: "0.0.1",
});
  1. 该工具使用 server.tool() 定义,并通过 Zod 模式进行适当的参数验证。

  2. 构建和测试您的更改:

pnpm run build

贡献

欢迎提交问题和增强请求!

许可证

MIT

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档