Git Commit MCP Server
Enables AI assistants to create conventional Git commits, update changelogs, and optionally push changes to remote repositories.
README
Git Commit MCP Server
A small MCP (Model Context Protocol) server that automates conventional Git commits, changelog updates, and optional pushes. Use this repository when you want an AI assistant to create well-formed Conventional Commit messages and manage the CHANGELOG automatically.
See detailed documentation in the docs/ folder:
docs/architecture.md— high-level architecture, components, and data flows.docs/usage.md— setup, configuration, and common workflows (PowerShell examples included).
Quick Start
Prerequisites
- Python 3.10+
- Git installed and configured
uvpackage manager (for development)pipx(for global installation)
Installation
Option 1: Global Installation with pipx (Recommended)
Install globally so the server is available from any directory:
# Install pipx if you don't have it
uv tool install pipx
# Install from PyPI (production)
pipx install git-commit-mcp-server
# Or install from TestPyPI (testing)
pipx install git-commit-mcp-server --index-url https://test.pypi.org/simple/ --pip-args="--extra-index-url https://pypi.org/simple/"
Option 2: Run with uvx (No Installation)
Run directly without installing:
uvx git-commit-mcp-server
Option 3: Development Mode
For local development:
# Clone the repository
git clone https://github.com/surajfale/git-mcp-server.git
cd git-mcp-server
# Install with development dependencies
uv pip install -e ".[dev]"
# Run the server
python -m git_commit_mcp.__main__
Configuration
MCP Client Setup
The server works with various MCP-compatible clients including:
- Kiro IDE —
.kiro/settings/mcp.jsonor~/.kiro/settings/mcp.json - Cursor IDE — See Cursor Configuration below
- Claude Desktop —
claude_desktop_config.json - WARP — MCP configuration file
- VSCode — With MCP extension
Example configuration (Kiro IDE):
{
"mcpServers": {
"git-commit": {
"command": "git-commit-mcp",
"args": [],
"disabled": false,
"env": {
"OPENAI_API_KEY": "sk-your-key-here",
"ENABLE_AI": "true",
"AI_MODEL": "gpt-4o-mini",
"FORCE_SSH_ONLY": "true"
},
"autoApprove": []
}
}
}
Environment Variables
Key environment variables:
OPENAI_API_KEY— Required whenENABLE_AI=truefor AI-powered commit messagesENABLE_AI— Set totrueto use AI generation (default:true)AI_MODEL— OpenAI model to use (default:gpt-4o-mini)FORCE_SSH_ONLY— Require SSH for Git operations (default:true)LOG_LEVEL— Logging level: DEBUG, INFO, WARNING, ERROR (default:INFO)
Set in PowerShell:
# Current session
$env:OPENAI_API_KEY = 'sk-your-key-here'
# Persistent (user-level)
setx OPENAI_API_KEY "sk-your-key-here"
Cursor IDE Configuration
Important: Cursor IDE has specific requirements. See the detailed Cursor setup guide in docs/usage.md.
Quick setup for Cursor:
-
Configuration file location (Windows):
%APPDATA%\Cursor\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json -
Basic configuration:
{ "mcpServers": { "git-commit-mcp": { "command": "git-commit-mcp", "args": [], "env": { "OPENAI_API_KEY": "sk-your-key-here", "ENABLE_AI": "true" } } } } -
For local development:
{ "mcpServers": { "git-commit-mcp": { "command": "python", "args": ["-m", "git_commit_mcp.__main__"], "cwd": "C:\\path\\to\\git_commit_message", "env": { "OPENAI_API_KEY": "sk-your-key-here" } } } }
Troubleshooting: If you encounter issues in Cursor, see the Cursor-specific troubleshooting section in docs/usage.md.
Usage
Once configured, use natural language with your AI assistant:
User: "Commit my changes"
AI: [Analyzes your git diff and generates a conventional commit message]
AI: "Created commit abc1234: feat(auth): Add user authentication module"
User: "Commit and push"
AI: [Commits and pushes to remote]
AI: "Successfully pushed to origin/main"
The server provides two main tools:
generate_commit_message— Generate a commit message without committinggit_commit_and_push— Full workflow: analyze, commit, and optionally push
Features
- AI-Powered Messages: Analyzes actual git diffs to generate accurate commit messages
- Conventional Commits: Follows the Conventional Commits specification
- Smart Type Detection: Automatically determines commit type (feat, fix, docs, etc.)
- Changelog Management: Maintains CHANGELOG.md with commit history
- Push Confirmation: Requires explicit approval before pushing
- Multi-Repository: Works with any Git repository, local or remote
Testing
Run the test suite:
# Run all tests
pytest
# Run with coverage
pytest --cov=git_commit_mcp
# Run specific tests
pytest tests/test_integration.py -v
Updating
Update to the latest version:
# Update global installation
pipx upgrade git-commit-mcp-server
# Or from TestPyPI
pipx upgrade git-commit-mcp-server --index-url https://test.pypi.org/simple/ --pip-args="--extra-index-url https://pypi.org/simple/"
Documentation
docs/usage.md— Detailed setup, configuration, troubleshooting, and best practicesdocs/architecture.md— System architecture, components, and design decisions
Contributing
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Make your changes with tests
- Submit a pull request
License
MIT License - see LICENSE file for details
Links
- Repository: https://github.com/surajfale/git-mcp-server
- Issues: https://github.com/surajfale/git-mcp-server/issues
- PyPI: https://pypi.org/project/git-commit-mcp-server/
- TestPyPI: https://test.pypi.org/project/git-commit-mcp-server/
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.