
Git Mcp
io.github.selfagency由 GitHub 账号 selfagency 发布v0.4.2更新于 Oct 24, 2026
A Git MCP server that doesn't suck
概览
本地运行的 Git MCP 服务器,让 AI 编程助手通过 18 组工具查看、提交、分支、推送、改写历史并创建拉取请求。
- 可以做什么
- 查看仓库:状态、差异、日志、blame、reflog、配置和提交搜索,并提供状态、日志、分支和差异的只读 MCP 资源。暂存、提交、修补、还原、重置和撤销改动,硬重置和 nuke 需要确认。管理分支、远程、fetch、pull 和 push,并处理 stash、rebase、cherry-pick、merge、bisect、标签、工作树和子模块。驱动 Git Flow、Git LFS 以及带备份和恢复的历史改写。统计仓库分析数据,在 GitHub、GitLab、Forgejo、Gitea 和 Bitbucket 上创建、列出和合并拉取请求,并查询 git-scm 文档和 man 手册。
- 适用场景
- 适合希望编程助手通过结构化工具而非原始 shell 命令操作 Git 的场景,涵盖日常提交与分支工作,以及恢复、历史改写、工作树、LFS 和拉取请求。最适合 Claude Desktop、VS Code Copilot 或 Cursor 等桌面助手在本地仓库上使用。
- 运行要求
- 以 npm 包形式通过 stdio 在本地运行,需要 Node.js 以及 npx 或全局安装,还需要 Git 本身。默认仓库通过 GIT_REPO_PATH 或 --repo-path 参数设置,否则每次调用都要传 repo_path。Git Flow 需要 PATH 中有 git-flow-next CLI。拉取请求操作使用 gh、glab 或 tea CLI,或使用 GITHUB_TOKEN、GITLAB_TOKEN、FORGEJO_TOKEN、BITBUCKET_TOKEN 等令牌。
安装
在 SourceWeft 中
- 打开 控制台中的 Git Mcp,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
git-mcp
A Git MCP server that doesn't suck
Exposes the full Git workflow to any MCP-compatible AI agent — inspect, write, branch, remote, stash, rebase, LFS, git-flow, documentation lookup, and more. Designed to be safe by default, composable, and fast. Powered by simple-git.
Built for coding agents in tools like GitHub Copilot, Claude Code, Cursor, and OpenAI Codex, while remaining compatible with any MCP client that can call tools and resources.
Features
- 18 tools with 80+ actions covering everyday Git workflows, advanced recovery, history rewriting, repository analytics, forge pull requests, and external VCS awareness
- Safety-first — destructive operations require explicit confirmation; force push and hook bypass are opt-in via server config
- GPG/SSH signing for commits and tags, with server-level auto-sign support
- Git LFS — track patterns, manage objects, install hooks, migrate history
- Git Flow — drives the git-flow-next CLI, so the finish state machine, conflict recovery, and worktree lifecycle stay correct as the CLI evolves. Preset init, overview, config CRUD, generalized topic actions, and classic feature/release/hotfix/support aliases
- Documentation lookup — search git-scm.com and fetch man pages directly from the LLM
- MCP Resources — URI-addressable read-only views of status, log, branches, and diff
- Bundled agent skill —
skills/git-mcp-workflow/documents MCP-first Git workflows, recovery, worktrees, releases, and advanced operations for AI agents and coding agents; installable viaskills-npmand skill.sh - External VCS awareness —
git_but_check/git_jj_checkdetect GitButler and Jujutsu and guide agents to prefer their native CLIs/MCP (withbut teardownguidance) over git-mcp tools when appropriate - History rewrite —
git_rewrite: reword, squash, rewrite-messages, and backup/restore for safe commit-history rewriting - Repository analytics —
git_analytics: contributors, churn, activity, summary, and file-stats computed from local git history - Pull requests —
git_pr: create/list/merge PRs/MRs on GitHub, GitLab, Forgejo, Gitea, and Bitbucket via provider CLI or REST API - Tangled & Entire awareness —
git_tangled_check/git_entire_checkdetect Tangled hosting and Entire session/context management - Multi-repo — pass
repo_pathper-call or configure a server-level default - Worktrees —
git_worktree: plaingit worktreeby path, or branch-addressed worktrees viagit flow worktreewith path templates and provenance-aware cleanup - Cross-platform — macOS, Linux, Windows (Git for Windows), all covered by CI
Quick Start
npx (no install)
Install globally
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
VS Code (Copilot)
Add to .vscode/mcp.json in your project:
Configuration
All configuration is via environment variables. Pass them in your MCP client config:
Tool Reference
Tools are grouped by domain. Each root tool takes an action parameter that selects the operation. Where an action is marked as default, omitting action will use it.
Context (git_context)
Status (git_status)
History (git_history)
Commits (git_commits)
Branches (git_branches)
Remotes (git_remotes)
Workspace (git_workspace)
Git Flow (git_flow)
Drives the git-flow-next CLI, which must be installed and on PATH
(brew install git-flow-next, or the releases page).
Set GIT_FLOW_BINARY to override the path. When the binary is missing, the tool returns an install
hint rather than failing opaquely.
Flags are scoped to the target verb: worktree and worktree_path apply to start and checkout,
while keep_worktree and force_worktree apply to finish and delete. A mismatch raises instead
of being silently dropped. See the tool reference for the full parameter list.
Worktree (git_worktree)
Two backends. Path-addressed actions drive plain git worktree and need nothing but git;
branch-addressed flow_* actions drive git flow worktree, which addresses worktrees by branch
name, computes paths from the gitflow.worktreePath template, and tags provenance so cleanup can
tell a git-flow-created worktree (removed) from a hand-made one (detached, uncommitted work
preserved).
See the tool reference.
LFS (git_lfs)
Documentation (git_docs)
History Rewrite (git_rewrite)
Analytics (git_analytics)
Pull Requests (git_pr)
Uses the provider CLI (gh/glab/tea) when installed locally, otherwise the REST API with a *_TOKEN env var. Provider auto-detected from the origin remote; self-hosted instances use GIT_FORGE_PROVIDER.
External VCS Awareness
Health Check (git_ping)
Returns server status. Useful for confirming the server is reachable.
MCP Resources
URI-addressable read-only snapshots (subscribe-capable):
Bundled Agent Skill
git-mcp ships a bundled agent skill at skills/git-mcp-workflow/ that teaches any skills-npm-compatible agent to use the MCP tool surface instead of running raw git CLI commands. The skill covers:
- Why LLMs must not use the Git CLI (quoting hazards, silent failures)
- Inspect-before-mutate workflow rules
- Safety order for undo and recovery operations
- Full registered tool surface with action reference
- Workflow playbooks: feature branch, rebase, recovery, worktree, backport, release tagging, Git Flow, merge
- Git concept explanations anchored to MCP tools
Installing the skill
If your agent supports skills-npm:
Or add to your project's package.json so it runs automatically:
Then add to .gitignore:
Safety
- All mutating tools have
destructiveHint: truein their MCP annotations git_commits action=reset mode=hardrequiresconfirm=truegit_commits action=nukerequiresconfirm=true- Force push (
--force) is disabled unlessGIT_ALLOW_FORCE_PUSH=true;force_with_leaseis always available - Hook bypass (
--no-verify) is disabled unlessGIT_ALLOW_NO_VERIFY=true git_flowhook and filter execution is disabled unlessGIT_ALLOW_FLOW_HOOKS=true- Paths are validated against the repository root — traversal attempts are rejected
- Credentials and tokens are never included in responses
Development
License
MIT © Daniel Sieradski
来源:README.md,提交 e96db03
工具
0版本历史
1- v0.4.2最新Oct 14, 2026
评分
已满足适用检查项的 40%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
请在仓库或注册中心条目中声明许可证。