git_add
Adds file contents to the staging area
Read a local repository's status, diffs and history, then stage and commit the change that came out of the conversation.
LABSCO SUMMARY
The reading half is what makes it worth wiring up: status, three kinds of diff, a date-bounded log and the contents of any revision, so an agent can establish what actually changed before it proposes anything. The writing half stops at the local repository — staging, commits, branches, checkout — with no push, no merge and no rebase among the tools.
A Git server for one repository path on your own machine. It reads the working tree, the diffs and the log, and it can stage, commit, branch and check out.
No account and no key — it works against a repository path you already have. Run it with uvx from the published package mcp-server-git, or pip install it and run python -m mcp_server_git; the repo also builds a Docker image, mcp/git. Every call takes repo_path, and --repository pins one repository at launch. It runs on the MCP Python SDK 1.x line (mcp>=1.29.0,<2).
One command — uvx mcp-server-git
USE CASES
Read the staged diff, then commit with a message drawn from it. The call comes back with the new commit hash.
Diff the current tree against the target branch, then open the individual commits that account for the difference.
Bound the log by a start and end timestamp — relative forms like '2 weeks ago' work — and read the commits it returns.
Create the branch off a base, switch onto it, then stage the files that belong to the change.
Check the status, clear the staging area in one call, then stage back only what you meant to commit.
Counted once with only startup setup. Other versions, modes or optional credentials may expose a different list.
git_addAdds file contents to the staging area
git_branchList Git branches
git_checkoutSwitches branches
git_commitRecords changes to the repository
git_create_branchCreates a new branch from an optional base branch
git_diffShows differences between branches or commits
git_diff_stagedShows changes that are staged for commit
git_diff_unstagedShows changes in the working directory that are not yet staged
git_logShows the commit logs
git_resetUnstages all staged changes
git_showShows the contents of a commit
git_statusShows the working tree status
BEFORE YOU INSTALL
12 tools when we connected. The project is in early development and says its available tools may change.
Requires MCP Python SDK 1.x (mcp>=1.29.0,<2). SDK 2.0 renamed APIs this server uses
All 4 documented clients run the server on your machine.
CONTEXT COST
Rated by the size of the 12 tool definitions that ride along on every turn, not by how many there are
INSTALLATION
uvx mcp-server-git{
"mcpServers": {
"git": {
"command": "uvx",
"args": [
"mcp-server-git",
"--repository",
"<YOUR_PATH_TO_GIT_REPO>"
]
}
}
}{
"servers": {
"git": {
"command": "uvx",
"args": [
"mcp-server-git"
]
}
}
}{
"context_servers": {
"mcp-server-git": {
"command": {
"path": "uvx",
"args": [
"mcp-server-git"
]
}
}
}
}