{"name":"Diff & Patch Tools API","version":"1.0.0","description":"Text/JSON/YAML diff generation, patch application, and merge conflict resolution — optimised for AI coding agents.","pricing_usd":12.99,"endpoints":{"health":"GET  /diff-patch-tools/health","mcp":"POST /diff-patch-tools/mcp  (JSON-RPC 2.0)","text_diff":"POST /diff-patch-tools/api/v1/text_diff","json_diff":"POST /diff-patch-tools/api/v1/json_diff","apply_patch":"POST /diff-patch-tools/api/v1/apply_patch","three_way_merge":"POST /diff-patch-tools/api/v1/three_way_merge","diff_stats":"POST /diff-patch-tools/api/v1/diff_stats","patch_validate":"POST /diff-patch-tools/api/v1/patch_validate"},"tools":[{"name":"text_diff","description":"Generate a unified diff between two text strings.","input":{"original":"string","modified":"string","context":"number (default 3)","original_file":"string","modified_file":"string"},"output":{"diff":"string (unified diff)","stats":"object","identical":"boolean"}},{"name":"json_diff","description":"Structural diff between two JSON values.","input":{"original":"object|string","modified":"object|string"},"output":{"hasChanges":"boolean","changes":"array","summary":"object"}},{"name":"apply_patch","description":"Apply a unified diff patch to an original text.","input":{"original":"string","patch":"string"},"output":{"result":"string","appliedHunks":"array","success":"boolean"}},{"name":"three_way_merge","description":"Three-way merge of base, ours, and theirs. Returns merged text with conflict markers on conflicts.","input":{"base":"string","ours":"string","theirs":"string","ours_label":"string","theirs_label":"string"},"output":{"merged":"string","hasConflicts":"boolean","conflictCount":"number"}},{"name":"diff_stats","description":"Parse statistics from a unified diff string.","input":{"diff":"string"},"output":{"additions":"number","deletions":"number","netChange":"number","hunks":"number","filesChanged":"number","files":"array"}},{"name":"patch_validate","description":"Validate whether a patch can be applied cleanly to an original text.","input":{"original":"string","patch":"string"},"output":{"valid":"boolean","errors":"array","hunksCount":"number"}}]}