Git MCP Server

Local setup required. This server has to be cloned and prepared on your machine before you register it in Claude Code.
1

Set the server up locally

Run this once to clone and prepare the server before adding it to Claude Code.

Run in terminal
npm install -g git-mcp-server
2

Register it in Claude Code

After the local setup is done, run this command to point Claude Code at the built server.

Run in terminal
claude mcp add git-mcp-server -- node "<FULL_PATH_TO_GIT_MCP_SERVER>/dist/index.js"

Replace <FULL_PATH_TO_GIT_MCP_SERVER>/dist/index.js with the actual folder you prepared in step 1.

README.md

Provides comprehensive Git functionality to MCP clients

Git MCP Server

A Model Context Protocol (MCP) server for Git operations that provides comprehensive Git functionality to MCP clients like Claude Desktop.

Features

  • Context-aware: Automatically detects the current project based on working directory
  • Comprehensive Git operations: status, branches, diffs, logs, file contents, commits, and more
  • Multi-project support: Works seamlessly across different project directories
  • Error handling: Proper MCP error responses
  • Branch management: Create, switch, and manage branches
  • Remote operations: Push, pull, and fetch from remote repositories

Installation

Option 1: Global Installation (Recommended)

npm install -g git-mcp-server

Option 2: Local Development Setup

  1. Clone and install:

    git clone https://github.com/yourusername/git-mcp-server.git
    cd git-mcp-server
    npm install
    
  2. Build the project:

    npm run build
    

Configuration

Claude Desktop

Add this server to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "git": {
      "command": "git-mcp-server",
      "args": []
    }
  }
}

Other MCP Clients

For other MCP clients, use the server binary directly:

git-mcp-server

The server will automatically use the current working directory as the Git repository context.

Usage

Once configured, you can use Git operations through your MCP client. The server automatically detects the Git repository in your current working directory.

Example Commands

Ask your MCP client (like Claude) to perform Git operations:

  • "What's the current git status?"
  • "Show me the diff with the main branch"
  • "Create a new branch called feature/new-feature"
  • "Commit these changes with message 'Fix bug in parser'"
  • "Push the current branch to origin"

Testing the Server

You can test the server manually from any Git repository:

cd /path/to/your/git/repo
git-mcp-server

Available Tools

Repository Information
  • git_status - Get current git status
  • git_current_branch - Get current branch name
  • git_staged_changes - Get staged changes
  • git_working_directory - Get current working directory info
File and History Operations
  • git_diff - Show diff between branches/commits
  • git_log - Get commit history
  • git_show_file - Show file contents at specific commit
Branch Operations
  • git_branches - List all branches
  • git_checkout - Switch to different branch or create new branch
Staging and Commit Operations
  • git_add - Add files to staging area
  • git_commit - Create commits with message and files
Remote Operations
  • git_pull - Pull changes from remote repository
  • git_fetch - Fetch changes from remote without merging
Repository Management
  • git_init - Initialize a new git repository

Prerequisites

  • Node.js 18+
  • npm or yarn
  • Git installed on your system

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

License

MIT License - see LICENSE file for details.

Project Structure

git-mcp-server/
├── package.json          # Project dependencies and scripts
├── tsconfig.json         # TypeScript configuration
├── src/
│   └── index.ts         # Main server implementation
├── build/
│   └── index.js         # Compiled JavaScript (generated)
└── README.md            # This file

Development

  • npm run build - Build the TypeScript code
  • npm run dev - Watch mode for development
  • npm start - Run the built server

Tools (14)

git_statusGet current git status
git_current_branchGet current branch name
git_staged_changesGet staged changes
git_working_directoryGet current working directory info
git_diffShow diff between branches/commits
git_logGet commit history
git_show_fileShow file contents at specific commit
git_branchesList all branches
git_checkoutSwitch to different branch or create new branch
git_addAdd files to staging area
git_commitCreate commits with message and files
git_pullPull changes from remote repository
git_fetchFetch changes from remote without merging
git_initInitialize a new git repository

Configuration

claude_desktop_config.json
{"mcpServers": {"git": {"command": "git-mcp-server", "args": []}}}

Try it

What is the current git status of this repository?
Show me the diff between my current branch and the main branch.
Create a new branch called feature/new-feature.
Commit my staged changes with the message 'Fix bug in parser'.
Push the current branch to the remote origin.

Frequently Asked Questions

What are the key features of Git MCP Server?

Automatically detects the current project based on working directory. Comprehensive Git operations including status, diffs, logs, and commits. Supports multi-project workflows across different local environments. Full branch management including creation and switching. Remote repository operations like push, pull, and fetch.

What can I use Git MCP Server for?

Managing repository branches and commits directly through an AI chat interface. Reviewing code diffs and commit history without leaving the IDE or chat window. Automating routine git workflows like staging and pushing changes. Quickly initializing new git repositories for local projects.

How do I install Git MCP Server?

Install Git MCP Server by running: npm install -g git-mcp-server

What MCP clients work with Git MCP Server?

Git MCP Server works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep Git MCP Server docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Open Conare