Skip to main content
Glama
akuratipullaiah

JSON MCP Server

JSON MCP Server (@gongrzhe/server-json-mcp@1.0.3)

A JSON Model Context Protocol (MCP) server implementation for querying and manipulating JSON data. This server enables LLMs to interact with JSON data through a set of standardized tools.

Installation & Usage

# Using npx with specific version (recommended)
npx @gongrzhe/server-json-mcp@1.0.3

# Install specific version globally
npm install -g @gongrzhe/server-json-mcp@1.0.3

# Run after global installation
server-json-mcp

Related MCP server: Fetch JSONPath MCP

Components

Tools

  • query

    • Query JSON data using JSONPath syntax with extended operations

    • Input:

      • url (string): URL of the JSON data source

      • jsonPath (string): JSONPath expression with optional operations

  • filter

    • Filter JSON data using conditions

    • Input:

      • url (string): URL of the JSON data source

      • jsonPath (string): Base JSONPath expression

      • condition (string): Filter condition

Supported Operations

Array Operations

  • Slicing: $[0:5], $[-3:], $[1:4]

  • Sorting: $.sort(price), $.sort(-price)

  • Distinct: $.distinct()

  • Transformations:

    • Map: $.map(fieldName)

    • Flatten: $.flatten()

    • Union: $.union([1,2,3])

    • Intersection: $.intersection([1,2,3])

String Operations

  • Case: $.toLowerCase(), $.toUpperCase()

  • Tests: $.startsWith('test'), $.endsWith('test')

  • Search: $.contains('test'), $.matches('pattern')

Numeric Operations

  • Math: $.math(+10), $.pow2()

  • Rounding: $.round(), $.floor(), $.ceil()

  • Functions: $.abs(), $.sqrt()

Date Operations

  • Format: $.format('YYYY-MM-DD')

  • Check: $.isToday()

  • Modify: $.add(1, 'days')

Aggregation Operations

  • Group: $.groupBy(category)

  • Stats: $.sum(price), $.avg(price), $.min(price), $.max(price)

Configuration

Usage with Claude Desktop

To use this server with the Claude Desktop app, add the following configuration to your claude_desktop_config.json:

{
  "json": {
    "command": "npx",
    "args": [
      "@gongrzhe/server-json-mcp@1.0.3"
    ]
  }
}

Alternatively, you can use the node command directly if you have the package installed:

{
  "json": {
    "command": "node",
    "args": [
      "path/to/build/index.js"
    ]
  }
}

Development

Building from Source

  1. Clone the repository

  2. Install dependencies:

    npm install
  3. Build the project:

    npm run build

Notes

  1. All JSONPath expressions start with $ representing the root object

  2. Array indices are zero-based

  3. String values in operations should be wrapped in quotes

  4. Date operations support 'days', 'months', and 'years' units

  5. Numeric operations support basic arithmetic operators (+, -, *, /)

License

MIT

Available Tools

2 tools
filterC

Filter JSON data using conditions

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the JSON data source
jsonPathYesBase JSONPath expression
conditionYesFilter condition (e.g. @.price < 10)

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. While 'Filter' implies a read-only operation, the description doesn't clarify whether this tool fetches data from a URL, processes it locally, or has any side effects like caching. It also omits details about error handling, performance, or output format, leaving significant gaps in understanding the tool's behavior.

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 a single, efficient sentence with no wasted words, making it appropriately concise. However, it lacks front-loading of critical information—it doesn't immediately clarify the tool's scope or differentiate it from siblings, which slightly reduces its effectiveness despite the brevity.

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 complexity of a tool that filters JSON data from a URL with three required parameters and no output schema, the description is incomplete. It fails to explain the output format, error conditions, or how the filtering integrates with the data source. Without annotations or an output schema, the agent lacks sufficient context to use the tool effectively.

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

Parameters3/5

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

Schema description coverage is 100%, meaning the input schema already documents all three parameters with descriptions. The tool description adds no additional meaning beyond what the schema provides, such as explaining how parameters interact or providing usage examples. However, since the schema is comprehensive, the baseline score of 3 is appropriate.

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

Purpose3/5

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

The description 'Filter JSON data using conditions' states the tool's purpose with a clear verb ('Filter') and resource ('JSON data'), but it's vague about scope and doesn't distinguish from its sibling 'query'. It doesn't specify what kind of filtering or what the output looks like, leaving the agent uncertain about the exact operation.

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?

The description provides no guidance on when to use this tool versus its sibling 'query', nor does it mention any prerequisites or alternative scenarios. Without any context about when this tool is appropriate, the agent must guess based on the tool name alone.

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

queryC

Query JSON data using JSONPath syntax

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the JSON data source
jsonPathYesJSONPath expression (e.g. $.store.book[*].author)

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It states the tool queries JSON data but doesn't disclose behavioral traits like error handling, performance implications, rate limits, or what happens if the URL is invalid or JSONPath is malformed. For a tool with no annotations, this is a significant gap in transparency.

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

Conciseness5/5

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

The description is a single, efficient sentence: 'Query JSON data using JSONPath syntax.' It is front-loaded with the core purpose and has zero waste, making it highly concise and well-structured.

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 complexity of querying external JSON data, the description is incomplete. No annotations exist, and there's no output schema, so the agent lacks information on return values, error cases, or behavioral constraints. The description doesn't compensate for these gaps, making it inadequate for safe and effective use.

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

Parameters3/5

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

Schema description coverage is 100%, with clear descriptions for both parameters ('jsonPath' and 'url'). The description adds minimal value beyond the schema, as it only reiterates the use of JSONPath without providing additional syntax or format details. Baseline 3 is appropriate when the schema does the heavy lifting.

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 the tool's purpose: 'Query JSON data using JSONPath syntax.' It specifies the verb ('query'), resource ('JSON data'), and method ('JSONPath syntax'). However, it doesn't explicitly differentiate from the sibling tool 'filter,' which might have overlapping functionality, preventing a score of 5.

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?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention the sibling tool 'filter' or any other context for usage, such as prerequisites or scenarios where this tool is preferred. This leaves the agent with minimal direction.

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. 2 tool updatesv1.0.3
    • First observedfilter
    • First observedquery

TDQS

C2.9/5.0

Scored across 2 tools

Disambiguation3/5

Both tools operate on JSON data to extract subsets, and 'filter' is essentially a restricted form of JSONPath querying, so an agent could reasonably pick either for a filtering need. The descriptions do differentiate them by mechanism (JSONPath syntax vs. conditions), which helps, but the boundary is fuzzy.

Naming Consistency5/5

Both names are single lowercase verbs (query, filter) following the exact same convention. There is no mixing of styles or verb forms.

Tool Count3/5

Two tools is thin for a server whose domain (JSON manipulation) typically involves parsing, validation, transformation, and mutation. It is defensible for a narrowly scoped read-only query server, but borderline.

Completeness2/5

The surface offers only read/extract operations; there is no parsing, validation, path construction, or any modification of JSON (set/merge/delete). Agents needing to inspect or transform JSON beyond querying and filtering will hit dead ends.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    C
    quality
    F
    maintenance
    A Model Context Protocol server implementation that enables LLMs to query and manipulate JSON data using JSONPath syntax with extended operations for filtering, sorting, transforming, and aggregating data.
    2
    21 npm
    90
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables efficient extraction of specific data from JSON APIs using JSONPath patterns, reducing token usage by up to 99% compared to fetching entire responses. Supports single and batch operations for both JSON extraction and raw text retrieval from URLs.
    4
    16 PyPI
    4
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Provides tools to validate, format, and query JSON strings via MCP. Enables AI agents to work with JSON data without needing keys or internet.
    11 npm
    MIT