Atlas / MCP servers / gongrzhe / JSON Server

JSON ServerBLOCK

mcp/gongrzhe/json-server

JSON handling and processing mcp server

Verdict
BLOCK
Grade
F
Trust score
44 /100
Exposed tools
2 2r · 0w · 0d
Transport
sse · stdio
License
MIT
Stars
90
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

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/[email protected]

# Install specific version globally
npm install -g @gongrzhe/[email protected]

# Run after global installation
server-json-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)
Read from source at commit 31f573e2f349OBSERVED · 2026-10-07
Advertisement
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.

claude-code
claude mcp add server-json-mcp -- npx -y @gongrzhe/[email protected]
claude-desktop
{
  "mcpServers": {
    "server-json-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@gongrzhe/[email protected]"
      ]
    }
  }
}
03

Exposed tools (2)

2 read · 0 write · 0 destructive.

ToolRiskDescription
filterreadFilter JSON data using conditions
queryreadQuery JSON data using JSONPath syntax
04

Trust audit

BLOCKgrade F · trust 44/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.

LayerWhat it checksResult
L0Provenance & inventoryWARN
L1Static analysis of the codeFAIL
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
declared (5 observation(s))
Shell
declared (10 observation(s))
Dependencies
not all pinned
Secrets in source
none-found

Findings (25)

HIGHCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
node_modules/depd/index.js:425
var deprecatedfn = new Function('fn', 'log', 'deprecate', 'message', 'site',
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
HIGHCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
node_modules/depd/index.js:427
'return function (' + args + ') {' +
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
HIGHCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
node_modules/typescript/lib/lib.es5.d.ts:998
exec(string: string): RegExpExecArray | null;
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
HIGHCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
node_modules/underscore/amd/_setup.js:11
Function('return this')() ||
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
HIGHCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
node_modules/underscore/amd/template.js:77
render = new Function(argument, '_', source);
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
HIGHSupply chain · supply.typosquat · CWE-829, CWE-1357
node_modules/iconv-lite/package.json
request ~ requests
Why it matters. dependency name one edit from a popular package
Fix. verify the package; likely typosquat
MEDIUMInventory / provenance · inv.symlink · CWE-1104
node_modules/.bin/escodegen
node_modules/.bin/escodegen
Why it matters. link not followed
MEDIUMInventory / provenance · inv.symlink · CWE-1104
node_modules/.bin/esgenerate
node_modules/.bin/esgenerate
Why it matters. link not followed
MEDIUMInventory / provenance · inv.symlink · CWE-1104
node_modules/.bin/esparse
node_modules/.bin/esparse
Why it matters. link not followed
MEDIUMInventory / provenance · inv.symlink · CWE-1104
node_modules/.bin/esvalidate
node_modules/.bin/esvalidate
Why it matters. link not followed
MEDIUMInventory / provenance · inv.symlink · CWE-1104
node_modules/.bin/tsc
node_modules/.bin/tsc
Why it matters. link not followed
MEDIUMInformation disclosure · disclose.log_secret · CWE-209, CWE-532
node_modules/@types/node/url.d.ts:545
* console.log(myURL.password);
MEDIUMObfuscation / stealth · obf.zero_width · CWE-506, CWE-94
node_modules/iconv-lite/encodings/sbcs-data-generated.js:100
"chars": "€پ‚ƒ„...†‡ˆ‰ٹ‹Œچژڈگ‘’“”•–—کTMڑ›œں ،¢£¤¥¦§ ̈©ھ«¬® ̄°±23 ́μ¶· ̧1؛»1⁄41⁄23⁄4؟ہءآأؤإئابةتثجحخدذرزسشصض×طظعغـفقكàلâمنهوçèéêëىيîïًٌٍَôُِ÷ّùْûüے"
MEDIUMObfuscation / stealth · obf.zero_width · CWE-506, CWE-94
node_modules/iconv-lite/encodings/sbcs-data-generated.js:373
"chars": "«»...“”�•‘’� กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาําิีึืฺุู–—฿เแโใไๅๆ็่้๊๋์ํTM๏๐๑๒๓๔๕๖๗๘๙®©����"
LOWInventory / provenance · inv.hidden_file · CWE-1104
node_modules/.package-lock.json
.package-lock.json
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
node_modules/deep-is/.travis.yml
.travis.yml
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
node_modules/estraverse/.jshintrc
.jshintrc
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
node_modules/jsonpath/.jscsrc
.jscsrc
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
node_modules/jsonpath/.jshintrc
.jshintrc
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWObfuscation / stealth · obf.decode_call · CWE-506, CWE-94
node_modules/@types/node/buffer.d.ts:1874
function atob(data: string): string;
LOWObfuscation / stealth · obf.decode_call · CWE-506, CWE-94
node_modules/typescript/lib/lib.webworker.d.ts:8713
atob(data: string): string;
LOWObfuscation / stealth · obf.decode_call · CWE-506, CWE-94
node_modules/typescript/lib/lib.webworker.d.ts:9525
declare function atob(data: string): string;
LOWObfuscation / stealth · obf.decode_call · CWE-506, CWE-94
node_modules/zod/lib/index.mjs:1006
const decoded = JSON.parse(atob(base64));
LOWObfuscation / stealth · obf.decode_call · CWE-506, CWE-94
node_modules/zod/lib/index.umd.js:1012
const decoded = JSON.parse(atob(base64));
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
node_modules/@modelcontextprotocol/sdk/package.json
content-type, raw-body, zod, @eslint/js, @types/content-type, @types/eslint__js, @types/eventsource, @types/express
Why it matters. 20 dependency range(s) float
Fix. pin exact versions or ship a lockfile

Gates applied: no_behavioural_pass.

Audited 2026-10-07 · audit v0.4.1 · source sha 31f573e2f349full audit observations/trust-audit/mcp-server/gongrzhe__json-server.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-0731f573e2f349BLOCKF44first audit
06

Questions

What is the JSON Server MCP server?

JSON handling and processing mcp server

What tools does JSON Server expose?

2 in total: 2 read-only, 0 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.

Is JSON Server safe to connect to an agent?

No — not without reading the findings first. The audit graded it F (44/100) and found 6 critical or high issues in the source. Each one is listed on this page with the file and line it is on.

What credentials does JSON Server need?

No credential environment variables were found in its source, so it appears to need none.

How does JSON Server run?

It speaks sse and stdio, so it runs as a local process your client starts. It is published on npm as @gongrzhe/server-json-mcp at 1.0.3.

How current is this page?

The grade is for one exact copy of the source (31f573e2f349), read on 2026-10-07. The repository is watched and re-audited when it changes.

Advertisement