GIT MCP Server

A Model Context Protocol (MCP) server that provides tools for interacting with Git repositories. This server allows AI assistants and LLM agents to manage repositories, branches, commits, and files…

Local serverstdioApache-2.0

What is the GIT MCP Server?

GIT MCP Server is an MCP project maintained in the wty0512/git-mcp-server repository. The maintainer describes its purpose as “A Model Context Protocol (MCP) server that provides tools for interacting with Git repositories. This server allows AI assistants and LLM agents to manage repositories…”. Read the project documentation for the complete scope.

Local setup

The project provides a local client configuration using git-mcp-server. Follow the repository’s build and installation steps before copying it, and replace example paths with the paths on your own computer.

Source

Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-08.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
git_initInitialize a new Git repository at the specified path with options for bare repositories.
git_cloneClone a Git repository from a remote URL to a local path with branch and depth options.
git_statusGet the current status of a Git repository including working directory and staging area changes.
git_branch_listList all branches in a repository with options to include remote branches.
git_branch_createCreate a new branch with options for specifying the starting point and automatic checkout.
git_checkoutCheckout a branch, tag, or commit with options to create a new branch during checkout.
git_branch_deleteDelete a branch with options for force deletion of unmerged branches.
git_mergeMerge a branch into the current branch with customizable commit messages and merge strategies.
git_addStage files for commit with support for individual files or entire directories.
git_resetUnstage files from the staging area with options for specific files or all staged changes.
git_commitCommit staged changes with customizable commit messages, author information, and amend options.
git_diff_unstagedGet a diff of all unstaged changes in the working directory with options for specific files.
git_diff_stagedGet a diff of all staged changes in the index with options for specific files.
git_reset_commitReset the repository to a specific reference with options for hard, soft, or mixed mode.
git_cleanRemove untracked files from the working tree with options for directories and force cleaning.
git_remote_addAdd a new remote repository with a name and URL.
git_remote_listList all configured remote repositories and their URLs.
git_fetchFetch updates from a remote repository with options for specific branches.
git_pullPull changes from a remote repository with options for rebase strategy.
git_pushPush local changes to a remote repository with options for force push and upstream tracking.
git_tag_createCreate a new tag with options for annotated tags with messages.
git_tag_listList all tags in the repository with their references.
git_stash_createStash changes in the working directory with options for untracked files and descriptions.
git_stash_listList all stashes in the repository with their descriptions.
git_stash_applyApply a stashed change without removing it from the stash list.
git_stash_popApply a stashed change and remove it from the stash list.
git_cherry_pickApply changes from specific commits to the current branch.
git_rebaseRebase the current branch onto another branch with interactive mode options.
git_logGet commit history with customizable output format and depth.
git_showShow detailed information about a specific commit including diff changes.

How to install the GIT MCP Server

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

From the project documentation. Replace placeholders and example paths before connecting.