Package Exports
- @gitwand/mcp
- @gitwand/mcp/dist/server.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@gitwand/mcp) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
@gitwand/mcp
MCP server that lets AI agents resolve Git merge conflicts automatically.
GitWand exposes its conflict resolution engine as a Model Context Protocol server. Plug it into Claude Desktop, Claude Code, Cursor, Windsurf, or any MCP-compatible client and the agent can inspect, preview, and resolve conflicts in your repos without you opening a single conflict marker.
Install
No install step — run it via npx:
npx -y @gitwand/mcp --cwd /path/to/your/repoOr add it to your MCP client config (examples below).
Configure
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"gitwand": {
"command": "npx",
"args": ["-y", "@gitwand/mcp"]
}
}
}The server defaults to the current working directory. To pin it to a specific repo, add "--cwd", "/absolute/path/to/repo" to the args array.
Claude Code
claude mcp add gitwand -- npx -y @gitwand/mcpCursor / Windsurf
Same config shape as Claude Desktop — drop it into the mcpServers block of your client's config file.
What the agent can do
Five tools are exposed:
| Tool | What it does |
|---|---|
gitwand_status |
List conflicted files with counts and auto-resolvability score |
gitwand_preview_merge |
Dry-run: return stats and a risk assessment without writing |
gitwand_resolve_conflicts |
Auto-resolve trivial conflicts, return resolutions + pending hunks |
gitwand_explain_hunk |
Full decision trace for one hunk (ours / theirs / base / reasoning) |
gitwand_apply_resolution |
Apply an agent-provided resolution to a specific complex hunk |
Plus three resources (gitwand://repo/conflicts, gitwand://repo/policy, gitwand://hunk/{file}/{line}) for ambient context.
How it works — the collaboration loop
GitWand handles the trivial conflicts (whitespace, same-change, non-overlapping inserts, value updates, generated files…). The agent handles the complex ones.
- Agent calls
gitwand_preview_merge→ sees risk level + how many conflicts GitWand can handle alone. - Agent calls
gitwand_resolve_conflicts→ GitWand resolves the easy hunks and returnspendingHunksfor the rest. - For each pending hunk, the agent reads ours/theirs/base from the response and decides.
- Agent calls
gitwand_apply_resolutionwith its chosen content — the file is written.
Resolution patterns
GitWand only auto-resolves when it's certain. The engine tags each hunk with a pattern and a composite confidence score (0–100):
same_change— identical edit on both sides (certain)one_side_change— only one branch touched the block (certain)non_overlapping— additions in different locations (high)whitespace_only— same logic, different indentation (high)reorder_only— pure permutation (high)insertion_at_boundary— pure insertions, base intact (high)value_only_change— scalar updated on one side (medium)generated_file— path matches a known generated-file pattern (high)complex— overlapping edits — never auto-resolved
Format-aware resolvers (JSON, Markdown, YAML, Vue SFC, lockfiles) kick in before pure text matching.
Configuration
Drop a .gitwandrc at the repo root to tune policies:
{
"policy": "prefer-merge",
"patternOverrides": {
"*.lock": "prefer-theirs",
"CHANGELOG.md": "prefer-ours"
},
"generatedFiles": ["src/generated/**", "**/*.pb.ts"]
}Policies: prefer-ours, prefer-theirs, prefer-safety, prefer-merge, strict.
Also available
- @gitwand/cli — same engine, command-line interface for terminals and CI pipelines.
- GitWand desktop app — full Git client with built-in resolution, merge preview, and inline code review.