返回市场
MCP服务器Git管理

MCP服务器Git管理

作者:FradSer2 星标更新:2025-06-26

项目介绍

Git Commit Message Generator MCP Server

Python 3.10+ License: MIT MCP Compatible

一个智能的MCP服务器,使用像DeepSeek和Groq这样的大语言模型提供商自动生成符合常规提交风格的提交信息。

特性

  • AI驱动: 利用大语言模型提供商(如DeepSeek、Groq)进行智能提交信息生成
  • 常规提交: 遵循行业标准的提交信息规范
  • 多提供商支持: 支持多个大语言模型提供商,并可轻松切换
  • MCP兼容: 无缝与Claude、Cursor、Gemini CLI和其他MCP客户端配合工作
  • 简单设置: 通过环境变量进行简单配置

目录

快速开始

  1. 克隆并安装

    git clone https://github.com/FradSer/mcp-server-git-cz.git
    cd mcp-server-git-cz
    uv venv && uv pip install -r requirements.txt
    
  2. 配置环境

    cp .env.example .env
    # 编辑.env文件以添加您的API密钥
    
  3. 运行服务器

    uv run mcp-server-git-cz
    

安装

先决条件

分步安装

  1. 克隆仓库

    git clone https://github.com/FradSer/mcp-server-git-cz.git
    cd mcp-server-git-cz
    
  2. 创建虚拟环境并安装依赖项

    uv venv
    uv pip install -r requirements.txt
    
  3. 设置环境变量

    cp .env.example .env
    

    编辑.env文件:

    DEEPSEEK_API_KEY=your_deepseek_api_key
    GROQ_API_KEY=your_groq_api_key
    LLM_PROVIDER=deepseek  # 或者 groq
    

配置

环境变量

变量描述默认值是否必需
DEEPSEEK_API_KEYDeepSeek API密钥-是(如果使用DeepSeek)
GROQ_API_KEYGroq API密钥-是(如果使用Groq)
LLM_PROVIDER要使用的LLM提供商deepseek

运输选项

服务器支持多种传输方式:

# STDIO传输(推荐)
uv run mcp-server-git-cz

# SSE传输
uv run mcp-server-git-cz --transport sse --port 8000

使用方法

服务器暴露了一个工具:generate_commit_message,该工具分析您的git差异并生成常规提交信息。

基本示例

import asyncio
from mcp.client.session import ClientSession
from mcp.client.stdio import StdioServerParameters, stdio_client

async def main():
    async with stdio_client(
        StdioServerParameters(command="uv", args=["run", "mcp-server-git-cz"])
    ) as (read, write):
        async with ClientSession(read, write) as session:
            await session.initialize()
            
            # 生成提交信息
            result = await session.call_tool("generate_commit_message", {})
            print(result)

asyncio.run(main())

MCP客户端设置

注意:在以下所有配置中,请将/path/to/mcp-server-git-cz替换为您实际的项目目录路径。

Claude Code

# 项目范围(团队推荐)
claude mcp add git-cz -s project -- uv run --python /path/to/mcp-server-git-cz/.venv/bin/python -m mcp_server_git_cz

# 用户范围(个人使用)
claude mcp add git-cz -s user -- uv run --python /path/to/mcp-server-git-cz/.venv/bin/python -m mcp_server_git_cz

Cursor

添加到Cursor设置:

{
  "mcpServers": {
    "git-cz": {
      "command": "uv",
      "args": ["run", "--python", "/path/to/mcp-server-git-cz/.venv/bin/python", "-m", "mcp_server_git_cz"],
      "env": {},
      "transport": "stdio"
    }
  }
}

Gemini CLI

添加到~/.gemini/settings.json

{
  "mcpServers": {
    "git-cz": {
      "command": "uv",
      "args": ["run", "--python", "/path/to/mcp-server-git-cz/.venv/bin/python", "-m", "mcp_server_git_cz"],
      "env": {}
    }
  }
}
<details> <summary>详细设置说明</summary>

查找您的路径

  1. 获取虚拟环境路径

    cd mcp-server-git-cz
    uv venv
    which python  # 复制此路径
    
  2. 获取项目目录

    pwd  # 复制此路径
    
  3. 更新配置 使用您实际的路径

高级配置

使用环境变量

{
  "mcpServers": {
    "git-cz": {
      "command": "uv",
      "args": ["run", "--python", "/path/to/mcp-server-git-cz/.venv/bin/python", "-m", "mcp_server_git_cz"],
      "env": {
        "DEEPSEEK_API_KEY": "your_key_here",
        "LLM_PROVIDER": "deepseek"
      }
    }
  }
}

使用工作目录

{
  "mcpServers": {
    "git-cz": {
      "command": "uv",
      "args": ["run", "--python", "/path/to/mcp-server-git-cz/.venv/bin/python", "-m", "mcp_server_git_cz"],
      "cwd": "/path/to/mcp-server-git-cz",
      "env": {}
    }
  }
}
</details>

示例

使用MCP客户端

一旦配置完成,您可以使用自然语言与工具交互:

  • "为我当前的更改生成提交信息"
  • "基于我的git差异创建常规提交信息"
  • "帮助我编写遵循常规提交规范的提交信息"

服务器将:

  1. 分析您的当前git差异
  2. 使用AI生成常规提交信息
  3. 返回格式化的消息供审查

示例输出

feat(auth): 添加GitHub的OAuth2集成

- 实现OAuth2认证流程
- 添加GitHub提供程序配置
- 更新用户模型以支持外部认证
- 为认证端点添加测试

关闭#123

贡献指南

我们欢迎贡献!请遵循以下指南:

开发设置

  1. 分叉仓库
  2. 创建功能分支:git checkout -b feature/amazing-feature
  3. 进行更改
  4. 运行测试:make test
  5. 使用常规提交格式提交:git commit -m 'feat: 添加惊人的功能'
  6. 推送到您的分支:git push origin feature/amazing-feature
  7. 打开Pull Request

代码风格

  • 遵循PEP 8的Python代码规范
  • 使用Black进行代码格式化
  • 在适当的地方添加类型提示
  • 为新功能编写测试

报告问题

发现bug?有功能请求?请打开一个issue,包括:

  • 清晰的问题描述
  • 复现步骤
  • 预期行为与实际行为对比
  • 环境细节

许可证

本项目采用MIT许可证 - 详情见LICENSE文件。

支持

致谢


<div align="center"> <strong>为开发者社区制作,充满爱心</strong> <br> <sub>⭐ 如果您觉得有用,请给这个仓库点赞!</sub> </div>