JSON MCP Server
Servidor JSON MCP (@gongrzhe/server-json-mcp@1.0.3)
Implementación de un servidor del Protocolo de Contexto de Modelo (MCP) JSON para consultar y manipular datos JSON. Este servidor permite a los LLM interactuar con datos JSON mediante un conjunto de herramientas estandarizadas.
Instalación y uso
# 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-mcpRelated MCP server: MCP Database Server
Componentes
Herramientas
consulta
Consultar datos JSON utilizando la sintaxis JSONPath con operaciones extendidas
Aporte:
url(cadena): URL de la fuente de datos JSONjsonPath(cadena): expresión JSONPath con operaciones opcionales
filtrar
Filtrar datos JSON mediante condiciones
Aporte:
url(cadena): URL de la fuente de datos JSONjsonPath(cadena): expresión base JSONPathcondition(cadena): condición de filtro
Operaciones apoyadas
Operaciones de matriz
Corte :
$[0:5],$[-3:],$[1:4]Ordenación :
$.sort(price),$.sort(-price)Distinto :
$.distinct()Transformaciones :
Mapa:
$.map(fieldName)Aplanar:
$.flatten()Unión:
$.union([1,2,3])Intersección:
$.intersection([1,2,3])
Operaciones con cadenas
Caso :
$.toLowerCase(),$.toUpperCase()Pruebas :
$.startsWith('test'),$.endsWith('test')Buscar :
$.contains('test'),$.matches('pattern')
Operaciones numéricas
Matemáticas :
$.math(+10),$.pow2()Redondeo :
$.round(),$.floor(),$.ceil()Funciones :
$.abs(),$.sqrt()
Operaciones de fecha
Formato :
$.format('YYYY-MM-DD')Comprobar :
$.isToday()Modificar :
$.add(1, 'days')
Operaciones de agregación
Grupo :
$.groupBy(category)Estadísticas :
$.sum(price),$.avg(price),$.min(price),$.max(price)
Configuración
Uso con Claude Desktop
Para utilizar este servidor con la aplicación Claude Desktop, agregue la siguiente configuración a su claude_desktop_config.json :
{
"json": {
"command": "npx",
"args": [
"@gongrzhe/server-json-mcp@1.0.3"
]
}
}Alternativamente, puede utilizar el comando node directamente si tiene el paquete instalado:
{
"json": {
"command": "node",
"args": [
"path/to/build/index.js"
]
}
}Desarrollo
Construyendo desde la fuente
Clonar el repositorio
Instalar dependencias:
npm installConstruir el proyecto:
npm run build
Notas
Todas las expresiones JSONPath comienzan con
$que representa el objeto raízLos índices de matriz se basan en cero
Los valores de cadena en las operaciones deben estar entre comillas
Las operaciones de fecha admiten unidades de "días", "meses" y "años".
Las operaciones numéricas admiten operadores aritméticos básicos (+, -, *, /)
Licencia
Instituto Tecnológico de Massachusetts (MIT)
Available Tools
2 toolsfilterC
Filter JSON data using conditions
| Name | Required | Description | Default |
|---|---|---|---|
| condition | Yes | Filter condition (e.g. @.price < 10) | |
| jsonPath | Yes | Base JSONPath expression | |
| url | Yes | URL of the JSON data source |
TDQS
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.
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.
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.
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.
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.
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
| Name | Required | Description | Default |
|---|---|---|---|
| jsonPath | Yes | JSONPath expression (e.g. $.store.book[*].author) | |
| url | Yes | URL of the JSON data source |
TDQS
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.
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.
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.
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.
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.
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.
2 tool updates
v1.0.0- First observed
filter - First observed
query
TDQS
Scored across 2 tools
The tools 'filter' and 'query' both operate on JSON data, which creates some overlap in purpose, as filtering can be seen as a subset of querying. However, the descriptions differentiate them: 'filter' uses conditions (likely simpler, boolean-based operations), while 'query' uses JSONPath syntax (a more expressive, path-based language). This distinction helps reduce confusion, but an agent might still struggle to choose between them for certain tasks.
Both tool names follow a consistent pattern: they are single, lowercase verbs ('filter' and 'query') that clearly indicate actions. There are no deviations in style (e.g., no mixing with snake_case or camelCase), making the naming predictable and easy to understand across the set.
With only 2 tools, this server feels thin for a JSON processing domain, which typically involves operations like parsing, transforming, validating, or merging JSON. The limited scope may force agents to work around gaps, as basic tasks like reading or writing JSON files are not covered, making it under-scoped for a general-purpose JSON server.
The tool set is severely incomplete for JSON processing. While 'filter' and 'query' handle retrieval and selection, there are no tools for creating, updating, validating, or manipulating JSON structures (e.g., add, remove, merge). This leaves significant gaps that will likely cause agent failures when trying to perform common JSON operations beyond simple queries.
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
A Model Context Protocol server for Wix AI tools
Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server
MCP Spec Compliance MCP — audits any MCP server.json against the official Model Context Protocol
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol Server that enables LLMs to interact with and execute REST API calls through natural language prompts, supporting GET/PUT/POST/PATCH operations on configured APIs.318 PyPI6Apache 2.0
- AlicenseDqualityDmaintenanceA Model Context Protocol server that enables LLMs to interact with databases (currently MongoDB) through natural language, supporting operations like querying, inserting, deleting documents, and running aggregation pipelines.53 npmMIT
- AlicenseBqualityDmaintenanceA Model Context Protocol server that provides standardized interfaces for interacting with Ollama API, offering JSON responses, error handling, and intelligent guidance for LLM-based API calls.9MIT
- FlicenseAqualityDmaintenanceA Model Context Protocol server for querying large JSON files using JSONPath expressions, enabling LLMs to efficiently search and extract information from large JSON data.311-