mcp-server-git-cz
Git Commit Message Generator
Documentation
Git Commit Message Generator MCP Server
> An intelligent MCP server that automatically generates Conventional Commits style commit messages using LLM providers like DeepSeek and Groq.
Features
- AI-Powered: Leverages LLM providers (DeepSeek, Groq) for intelligent commit message generation
- Conventional Commits: Follows industry-standard commit message conventions
- Multi-Provider: Supports multiple LLM providers with easy switching
- MCP Compatible: Works seamlessly with Claude, Cursor, Gemini CLI, and other MCP clients
- Easy Setup: Simple configuration via environment variables
Table of Contents
Quick Start
1. Clone and install:
git clone https://github.com/FradSer/mcp-server-git-cz.git
cd mcp-server-git-cz
uv venv && uv pip install -r requirements.txt2. Configure environment:
cp .env.example .env
# Edit .env with your API keys3. Run the server:
uv run mcp-server-git-czInstallation
Prerequisites
- Python 3.10+
- uv package manager
Step-by-step Installation
1. Clone the repository:
git clone https://github.com/FradSer/mcp-server-git-cz.git
cd mcp-server-git-cz2. Create virtual environment and install dependencies:
uv venv
uv pip install -r requirements.txt3. Set up environment variables:
cp .env.example .envEdit `.env` file:
DEEPSEEK_API_KEY=your_deepseek_api_key
GROQ_API_KEY=your_groq_api_key
LLM_PROVIDER=deepseek # or groqConfiguration
Environment Variables
| Variable | Description | Default | Required |
|---|---|---|---|
| `DEEPSEEK_API_KEY` | DeepSeek API key | - | Yes (if using DeepSeek) |
| `GROQ_API_KEY` | Groq API key | - | Yes (if using Groq) |
| `LLM_PROVIDER` | LLM provider to use | `deepseek` | No |
Transport Options
The server supports multiple transport methods:
# STDIO transport (recommended)
uv run mcp-server-git-cz
# SSE transport
uv run mcp-server-git-cz --transport sse --port 8000Usage
The server exposes a single tool: `generate_commit_message` that analyzes your git diff and generates conventional commit messages.
Basic Example
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()
# Generate commit message
result = await session.call_tool("generate_commit_message", {})
print(result)
asyncio.run(main())MCP Client Setup
> Note: Replace `/path/to/mcp-server-git-cz` with your actual project directory path in all configurations below.
Claude Code
# Project scope (recommended for teams)
claude mcp add git-cz -s project -- uv run --python /path/to/mcp-server-git-cz/.venv/bin/python -m mcp_server_git_cz
# User scope (personal use)
claude mcp add git-cz -s user -- uv run --python /path/to/mcp-server-git-cz/.venv/bin/python -m mcp_server_git_czCursor
Add to Cursor settings:
{
"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
Add to `~/.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": {}
}
}
}Detailed Setup Instructions
Finding Your Paths
1. Get virtual environment path:
cd mcp-server-git-cz
uv venv
which python # Copy this path2. Get project directory:
pwd # Copy this path3. Update configurations with your actual paths
Advanced Configuration
With Environment Variables
{
"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"
}
}
}
}With Working Directory
{
"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": {}
}
}
}Examples
Using with MCP Clients
Once configured, you can interact with the tool using natural language:
- *"Generate a commit message for my current changes"*
- *"Create a conventional commit message based on my git diff"*
- *"Help me write a commit message following conventional commits"*
The server will:
1. Analyze your current git diff
2. Generate a conventional commit message using AI
3. Return the formatted message for review
Example Output
feat(auth): add OAuth2 integration with GitHub
- Implement OAuth2 authentication flow
- Add GitHub provider configuration
- Update user model to support external auth
- Add tests for authentication endpoints
Closes #123Contributing
We welcome contributions! Please follow these guidelines:
Development Setup
1. Fork the repository
2. Create a feature branch: `git checkout -b feature/amazing-feature`
3. Make your changes
4. Run tests: `make test`
5. Commit using conventional commits: `git commit -m 'feat: add amazing feature'`
6. Push to your branch: `git push origin feature/amazing-feature`
7. Open a Pull Request
Code Style
- Follow PEP 8 for Python code
- Use Black for code formatting
- Add type hints where appropriate
- Write tests for new features
Reporting Issues
Found a bug? Have a feature request? Please open an issue with:
- Clear description of the problem
- Steps to reproduce
- Expected vs actual behavior
- Environment details
License
This project is licensed under the MIT License - see the LICENSE file for details.
Support
- Documentation: Full documentation
- Bug Reports: GitHub Issues
- Feature Requests: GitHub Discussions
- Email: fradser@gmail.com
Acknowledgments
- Conventional Commits specification
- Model Context Protocol framework
- DeepSeek and Groq for AI capabilities
- All contributors who help improve this project
Frequently asked questions
What is mcp-server-git-cz?
mcp-server-git-cz is Git Commit Message Generator
How do I install mcp-server-git-cz?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is mcp-server-git-cz open source?
Yes — it is hosted on GitHub at https://github.com/FradSer/mcp-server-git-cz and has 2 stars.
Related MCP tools
Cognee is the open-source AI memory platform for agents. Give your AI agents persistent long-term memory across sessions with a self-hosted knowledge graph engine.
Automate browser based workflows with AI
Hindsight: Agent Memory That Learns
A privacy-first app that strips AI watermarks from content you own.
Agent framework and applications built upon Qwen>=3.0, featuring Function Calling, MCP, Code Interpreter, RAG, Chrome extension, etc.
The power of Claude Code / GeminiCLI / CodexCLI + [Gemini / OpenAI / OpenRouter / Azure / Grok / Ollama / Custom Model / All Of The Above] working as one.
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP