Atlas / MCP servers / selfagency / git-mcp

git-mcpCAUTION

mcp/selfagency/git-mcp

A Git MCP server that doesn't suck

Verdict
CAUTION
Grade
B
Trust score
81 /100
Exposed tools
28 27r · 1w · 0d
Transport
stdio
License
—
Stars
0
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

[](https://github.com/selfagency/git-mcp/actions/workflows/ci.yml) [](https://codecov.io/gh/selfagency/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 agent
Read from source at commit c4cd4bd1b36aOBSERVED · 2026-10-14
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.

claude-code (npm)
claude mcp add git-mcp --env GIT_SIGNING_KEY=${GIT_SIGNING_KEY} -- npx -y @selfagency/[email protected]
03

Exposed tools (28)

27 read · 1 write · 0 destructive.

ToolRiskDescription
git_analyticsread
git_bisectread
git_branchesread
git_but_checkreadDetects whether the GitButler
git_cherry_pickread
git_commitsread
git_contextread
git_docsread
git_entire_checkreadDetect whether the Entire CLI is available and whether the repository is Entire-managed
git_flowread
git_historyread
git_jj_checkreadDetect whether the Jujutsu
git_lfsread
git_mergewrite
git_pingread
git_prread
git_rebaseread
git_remotesread
git_rewriteread
git_stashread
git_statusread
git_submoduleread
git_tagread
git_tangled_checkreadDetect whether the repository origin remote points at a Tangled host (tangled.org or a
git_workflowread
git_workspaceread
git_worktreeread
open_git_mcp_docsreadOpen git-mcp documentation pages in this tab.
04

Trust audit

CAUTIONgrade B · trust 81/100 Install with care. The audit found things worth knowing before you trust its output.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeWARN
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
declared (3 observation(s))
Shell
declared (3 observation(s))
Dependencies
not all pinned
Secrets in source
found

Findings (13)

MEDIUMHard-coded secrets · secret.github · CWE-798, CWE-321
src/security/__tests__/redact.test.ts:22
expect(redactToken('ghp_12345678901234567890123456789012')).toBe('***');
MEDIUMHard-coded secrets · secret.github · CWE-798, CWE-321
src/services/__tests__/context.service.test.ts:149
const git = makeGit({ raw: vi.fn().mockResolvedValue('ghp_0123456789abcdef0123456789abcdef01234567\n') });
LOWInventory / provenance · inv.hidden_file · CWE-1104
.oxfmtrc.json
.oxfmtrc.json
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
.oxlintrc.json
.oxlintrc.json
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
docs/public/.nojekyll
.nojekyll
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.no_license · CWE-1104
Why it matters. no LICENSE file and no repo licence
Fix. add a licence
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
src/git/__tests__/external.test.ts:17
vi.mock('../../platform/exec.js', () => ({
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
src/services/__tests__/advanced.service.test.ts:4
vi.mock('../../git/client.js', () => ({
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
src/services/__tests__/advanced.service.test.ts:11
import { getGit } from '../../git/client.js';
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
src/services/__tests__/analytics.service.test.ts:3
vi.mock('../../git/client.js', () => ({
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
src/services/__tests__/analytics.service.test.ts:9
import { getGit } from '../../git/client.js';
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
package.json
@modelcontextprotocol/sdk, simple-git, zod, @octokit/rest, @vitest/coverage-v8, husky, lint-staged, ora
Why it matters. 14 dependency range(s) float
Fix. pin exact versions or ship a lockfile
INFOPrompt injection · prompt.authority_framing · CWE-94, CWE-1427
docs/guide/getting-started.md:5
git-mcp is a production-grade [Model Context Protocol](https://modelcontextprotocol.io) server that gives AI agents full access to Git workflows. It uses [simple-git](https://github.com/steveukx/git-j

Gates applied: no_behavioural_pass, no_license.

Audited 2026-10-14 · audit v0.4.1 · source sha c4cd4bd1b36afull audit observations/trust-audit/mcp-server/selfagency__git-mcp.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-14c4cd4bd1b36aCAUTIONB81first audit
06

Questions

What is the git-mcp MCP server?

A Git MCP server that doesn't suck

What tools does git-mcp expose?

28 in total: 27 read-only, 1 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.

Is git-mcp safe to connect to an agent?

With care. The audit graded it B (81/100) and found 13 things worth knowing before you trust this server, listed below with the exact line each was found on.

What credentials does git-mcp need?

It reads GH_TOKEN, GITHUB_TOKEN and GIT_SIGNING_KEY from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How does git-mcp run?

It speaks stdio, so it runs as a local process your client starts. It is published on npm as @selfagency/git-mcp at 0.4.0.

How current is this page?

The grade is for one exact copy of the source (c4cd4bd1b36a), read on 2026-10-14. The repository is watched and re-audited when it changes.

Advertisement