Skip to main content
Glama
README.md
# 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

1. Create a virtual environment and install dependencies:
   ```bash
   python3 -m venv venv
   source venv/bin/activate  # On Windows: venv\Scripts\activate
   pip install -r requirements.txt
   ```

2. Test the server:
   ```bash
   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`

```json
{
  "mcpServers": {
    "git-helper": {
      "command": "/Users/prateek/Code/claude/git-helper-mcp/venv/bin/python",
      "args": ["/Users/prateek/Code/claude/git-helper-mcp/server.py"]
    }
  }
}
```

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](https://claude.com/claude-code)