@dpm-tools/mcp-diff
v0.1.0
Published
MCP server with 6 unified-diff tools: diff, apply_patch, three_way_merge, compare_files, summarize_diff, structured_diff. Free, MIT.
Maintainers
Readme
mcp-diff
6 unified-diff tools that Claude/Cursor can actually use. Diff, patch, 3-way merge, summarize. Free, MIT.
The existing MCP servers for diff are either too thin (just diff) or coupled to GitHub Gist + PNG rendering. mcp-diff is the focused text-in/text-out trio — diff, apply patch, three-way merge — plus a few helpers.
Install
{
"mcpServers": {
"diff": {
"command": "npx",
"args": ["-y", "@dpm-tools/mcp-diff"]
}
}
}Requires Node.js 22.18+.
Tools (6)
diff— Unified diff between two text strings. Configurable context lines.apply_patch— Apply a unified diff to text. Clean error on hunk rejection.three_way_merge— diff3-style merge with<<<<<<</=======/>>>>>>>conflict markers.compare_files— Read two local files (absolute paths only) and diff them.summarize_diff— Parse a patch into{lines_added, lines_removed, files_affected, hunk_count, net_change}.structured_diff— Line-by-line JSON array of{op, value, line_a, line_b}for LLMs that don't want to parse unified-diff text.
Example prompts
- "Diff these two versions of my function..."
- "Apply this patch to my code and show me the result."
- "Three-way merge: here's the base, here's my version, here's the upstream version."
- "Compare /tmp/old.json and /tmp/new.json — what changed?"
- "Summarize this diff — how many lines added/removed across which files?"
See examples/prompts.md for more.
Why this exists
Claude routinely needs to reason about diffs but struggles to produce or parse them reliably. Existing servers:
keyhoffman/diff-mcp— justdiff, no merge or patch.gorosun/unified-diff-mcp— couples diff to GitHub Gist upload + PNG rendering. Overkill.
mcp-diff is the focused trio that handles 95% of real workflows: diff, patch, three-way merge. Plus structured-output mode so LLMs don't parse unified-diff text character-by-character.
Built on the popular diff npm package (MIT, ~1M weekly downloads). MIT, zero telemetry, no API keys.
Safety
- 10 MB input cap per text input (prevents OOM)
- Absolute paths required for
compare_files;..segments rejected - All errors return
isError: truewith descriptive messages
Sister servers from dpm
@dpm-tools/mcp-devkit— 15 dev utilities (UUID, hash, JWT, JSON, cron, color, etc.)@dpm-tools/mcp-public-data— sun, moon, holidays, geocoding (zero API keys)
More small, sharp MCP servers shipping weekly.
License
MIT © dpm (digital product mill)
