Provides tools for interacting with Git repositories, including checking repository status, listing branches, viewing commit history, getting branch information, and showing diffs of staged or unstaged changes.
Git Helper MCP
A Model Context Protocol (MCP) server that provides git repository tools for Claude.
Features
This MCP provides the following tools:
get_status - Get current repository status (staged, unstaged, untracked files)
list_branches - List all branches with current branch highlighted
get_commit_history - View recent commits with messages and authors
get_branch_info - Get detailed info about current or specific branch
get_diff - Show changes (staged or unstaged)
Installation
Create a virtual environment and install dependencies:
python3 -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate pip install -r requirements.txtTest the server:
python server.py
Configuration for Claude Desktop
Add this to your Claude Desktop MCP settings file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
After adding, restart Claude Desktop.
Usage Examples
Once configured, you can ask Claude things like:
"What's the status of my git repository?"
"Show me the recent commit history"
"List all branches"
"What branch am I on?"
"Show me the unstaged changes"
"What's in my staging area?"
How It Works
The MCP server runs as a separate process and communicates with Claude via stdio. When you ask git-related questions, Claude can call these tools to get real-time information from your git repository.
Requirements
Python 3.10+
Git installed and in PATH
MCP Python SDK
Learning Points
This project demonstrates:
Building an MCP server
Subprocess execution
Async Python
Tool definition with JSON schemas
Error handling
Built as a learning project with Claude Code
This server cannot be installed