About git
An MCP server for AI agents to inspect local Git repositories using native Git commands, without requiring the GitHub API. It provides history, diff, blame, activity statistics, and branch analysis.
Key features
- 01Filter commit history
- 02Compare refs with change summaries
- 03Inspect line-by-line authorship
- 04Review repository activity statistics
- 05Analyze branch status and divergence
Use cases
- 01Find commits by author, date, or path
- 02Summarize changes between branches
- 03Trace who changed a specific line
- 04Review contributors and frequently changed files
MCP support
Exposes local Git repository analysis tools to MCP clients, including log, diff, blame, statistics, and branch operations.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
5Saved tool list · updated 2w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| path | string | No | Filter commits that touched this file or directory path. |
| count | number | No | Number of recent commits to return. Defaults to 20. |
| since | string | No | Show commits after this date (ISO 8601 or natural language). |
| until | string | No | Show commits before this date. |
| author | string | No | Filter commits by author name or email (substring match). |
| repoPath | string | Yes | Absolute path to the local Git repository. |
Details
From the project READMEmcp-git-tools
Git repository analysis tools for AI agents, served over MCP (Model Context Protocol). Analyzes local repositories using native git commands — no GitHub API required.
Tools
| Tool | Description |
|---|---|
git_log | Get commit history with filtering by author, date range, and file path |
git_diff | Show diff between commits, branches, or tags with change summaries |
git_blame | Show who last modified each line of a file with commit info |
git_stats | Repository statistics: commits, contributors, activity over time, most changed files |
git_branch | List branches with last commit info, ahead/behind counts, merged/unmerged status |
Prerequisites
- Node.js >= 18
- Git installed and available in PATH
Setup
npm install
npm run build
Configuration
Add to your MCP client configuration:
{
"mcpServers": {
"git-tools": {
"command": "node",
"args": ["D:/products/mcp-servers/mcp-git-tools/dist/index.js"]
}
}
}
Tool Details
git_log
Retrieve recent commit history with optional filters.
Parameters:
repoPath(required) — Absolute path to the Git repositorycount— Number of commits to return (default: 20)author— Filter by author name or emailsince/until— Date range filterspath— Filter to commits touching a specific file or directory
git_diff
Compare two refs and get a structured summary of changes.
Parameters:
repoPath(required) — Absolute path to the Git repositoryfrom— Start ref (default: HEAD~1)to— End ref (default: HEAD)path— Limit diff to a specific file or directorysummaryOnly— Return only stats without full diff text
git_blame
See line-by-line authorship of a file.
Parameters:
repoPath(required) — Absolute path to the Git repositoryfilePath(required) — File path relative to repo rootstartLine/endLine— Blame a specific line rangeref— Blame at a specific commit
git_stats
Get a high-level overview of repository activity.
Parameters:
repoPath(required) — Absolute path to the Git repositorytopAuthors— Number of top contributors to list (default: 10)topFiles— Number of most-changed files to list (default: 10)
git_branch
List and analyze branches.
Parameters:
repoPath(required) — Absolute path to the Git repositorybaseBranch— Branch to compare against (default: main or master)includeRemote— Include remote-tracking branchesmergedOnly/unmergedOnly— Filter by merge status
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.