Skip to main content
Glama

powered by jsondiffpatch

Features

  • compare text (using text diff powered by google-diff-match-patch )

  • compare data (json, json5, yaml, toml, xml, html) and get a readable diff in multiple output formats (text, json, jsonpatch)

Related MCP server: MCP JSONDiff Kel

Tool

diff

compare text or data and get a readable diff.

Inputs:

  • left (string | unknown[] | Record<string, unknown>): left text or data

  • leftFormat (string, optional): text, json, json5 (default), yaml, toml, xml, html

  • right (string | unknown[] | Record<string, unknown>): right text or data (to compare with left)

  • rightFormat (string, optional): text, json, json5 (default), yaml, toml, xml, html

  • outputFormat (string, optional): text (default), json, jsonpatch

Setup

Usage with Claude Desktop

Add this to your claude_desktop_config.json:

{
  "mcpServers": {
    "diff": {
      "command": "npx",
      "args": [
        "-y",
        "diff-mcp"
      ]
    }
  }
}

All contributors ✨

License

This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.

Available Tools

1 tool
diffC

compare text or data and get a readable diff

ParametersJSON Schema
NameRequiredDescriptionDefault
stateYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits such as whether the operation is read-only, destructive, or requires specific permissions. The description is minimal and does not add behavioral context beyond the tool name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise at one sentence, with no unnecessary words. However, it could be better structured by front-loading key information. It is adequately sized but lacks depth.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complex nested input schema, multiple format options, and no output schema, the description is insufficient. It does not explain the return value, error cases, or how different formats affect output. The tool requires richer context to be fully usable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has descriptions for sub-parameters (left, right, formats) but the main 'state' parameter lacks a description. The tool description does not add any parameter information, leaving the agent to rely solely on the schema. Schema coverage is 0% for the top-level parameter, but sub-parameters are documented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it compares text or data and returns a diff. The verb and resource are specific, and the tool's name matches the purpose. However, it lacks details on what types of diff outputs are available, which could be more precise.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives, or when not to use it. The description simply states what it does without context for decision making.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev1.0.0
    • First observeddiff

TDQS

B3.3/5.0

Scored across 1 tool

Disambiguation5/5

With only a single tool, there is no possibility of confusion or overlap between tools. The tool's purpose is clearly stated and distinct by default.

Naming Consistency5/5

The single tool name 'diff' is concise, descriptive, and matches the server's purpose. There is no mixed convention or inconsistency since there is only one tool.

Tool Count4/5

One tool is on the low end of typical server sizes, but for a narrowly scoped diff utility it is a reasonable and focused set. It doesn't feel trivial since diff is a meaningful operation.

Completeness5/5

The server's stated purpose is to compare text or data and produce a readable diff, which is exactly what the tool provides. There are no obvious gaps for this single-operation domain.

Maintenance

ActivityInactive
ResponsivenessUnresponsive

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables deep, order-independent comparison of JSON files to detect differences including missing keys, value mismatches, and type differences. Provides detailed reports with path tracking for precise identification of variations between JSON structures.
    MIT
  • F
    license
    C
    quality
    D
    maintenance
    An efficient MCP server for performing accurate, deep comparisons between JSON objects or strings using the deepdiff engine. It provides AI agents with standardized difference reports, supporting nested structures and various input formats to ensure precise data analysis.
    1
    -