kehvinbehvin/json-mcp-filter

šŸ”Ž Search & Data Extraction
0 Views
0 Installs

ļøšŸ  šŸ“‡ – Stop bloating your LLM context. Query & Extract only what you need from your JSON files.

Quick Install

One-Click IDE Configuration
claude_desktop_config.json
{
  "mcpServers": {
    "kehvinbehvin-json-mcp-filter": {
      "command": "npx",
      "args": [
        "-y",
        "kehvinbehvin-json-mcp-filter"
      ]
    }
  }
}
Or

Using an AI coding agent (Claude Code, Cursor, etc.)? Copy a ready-made prompt that tells it to fetch the setup instructions and install this server for you.

Documentation Overview

MseeP.ai Security Assessment Badge

JSON MCP Filter

A powerful Model Context Protocol (MCP) server that provides JSON schema generation and filtering tools for local files and remote HTTP/HTTPS endpoints. Built with quicktype for robust TypeScript type generation.

JSON Server MCP server

Perfect for: Filtering large JSON files and API responses to extract only relevant data for LLM context, while maintaining type safety.

✨ Key Features

  • šŸ”„ Schema Generation - Convert JSON to TypeScript interfaces using quicktype
  • šŸŽÆ Smart Filtering - Extract specific fields with shape-based filtering
  • 🌐 Remote Support - Works with HTTP/HTTPS URLs and API endpoints
  • šŸ“¦ Auto Chunking - Handles large datasets with automatic 400KB chunking
  • šŸ›”ļø Size Protection - Built-in 50MB limit with memory safety
  • ⚔ MCP Ready - Seamless integration with Claude Desktop and Claude Code
  • 🚨 Smart Errors - Clear, actionable error messages with debugging info

šŸ› ļø Available Tools

json_schema

Generates TypeScript interfaces from JSON data.

Parameters:

  • filePath: Local file path or HTTP/HTTPS URL

Example:

// Input JSON
{"name": "John", "age": 30, "city": "New York"}

// Generated TypeScript
export interface GeneratedType {
    name: string;
    age:  number;
    city: string;
}

json_filter

Extracts specific fields using shape-based filtering with automatic chunking for large datasets.

Parameters:

  • filePath: Local file path or HTTP/HTTPS URL
  • shape: Object defining which fields to extract
  • chunkIndex (optional): Chunk index for large datasets (0-based)

Auto-Chunking:

  • ≤400KB: Returns all data
  • 400KB: Auto-chunks with metadata

json_dry_run

Analyzes data size and provides chunking recommendations before filtering.

Parameters:

  • filePath: Local file path or HTTP/HTTPS URL
  • shape: Object defining what to analyze

Returns: Size breakdown and chunk recommendations

šŸ“‹ Usage Examples

Basic Filtering

// Simple field extraction
json_filter({
  filePath: "https://api.example.com/users",
  shape: {"name": true, "email": true}
})

Shape Patterns

// Single field
{"name": true}

// Nested objects
{"user": {"name": true, "email": true}}

// Arrays (applies to each item)
{"users": {"name": true, "age": true}}

// Complex nested
{
  "results": {
    "profile": {"name": true, "location": {"city": true}}
  }
}

Large Dataset Workflow

// 1. Check size first
json_dry_run({filePath: "./large.json", shape: {"users": {"id": true}}})
// → "Recommended chunks: 6"

// 2. Get chunks
json_filter({filePath: "./large.json", shape: {"users": {"id": true}}})
// → Chunk 0 + metadata

json_filter({filePath: "./large.json", shape: {"users": {"id": true}}, chunkIndex: 1})
// → Chunk 1 + metadata

šŸ”’ Security Notice

Remote Data Fetching: This tool fetches data from HTTP/HTTPS URLs. Users are responsible for:

āœ… Safe Practices:

  • Verify URLs point to legitimate endpoints
  • Use trusted, public APIs only
  • Respect API rate limits and terms of service
  • Review data sources before processing

āŒ Maintainers Not Responsible For:

  • External URL content
  • Privacy implications of remote requests
  • Third-party API abuse or violations

šŸ’” Recommendation: Only use trusted, public data sources.

šŸš€ Quick Start

Option 1: NPX (Recommended)

# No installation required
npx json-mcp-filter@latest

Option 2: Global Install

npm install -g json-mcp-filter@latest
json-mcp-server

Option 3: From Source

git clone <repository-url>
cd json-mcp-filter
npm install
npm run build

āš™ļø MCP Integration

Claude Desktop

Add to your configuration file:

{
  "mcpServers": {
    "json-mcp-filter": {
      "command": "npx",
      "args": ["-y", "json-mcp-filter@latest"]
    }
  }
}

Claude Code

# Add via CLI
claude mcp add json-mcp-filter npx -y json-mcp-filter@latest

Or add manually:

  • Name: json-mcp-filter
  • Command: npx
  • Args: ["-y", "json-mcp-filter@latest"]

šŸ”§ Development

Commands

npm run build      # Compile TypeScript
npm run start      # Run compiled server  
npm run inspect    # Debug with MCP inspector
npx tsc --noEmit   # Type check only

Testing

npm run inspect    # Interactive testing interface

šŸ“ Project Structure

src/
ā”œā”€ā”€ index.ts                    # Main server + tools
ā”œā”€ā”€ strategies/                 # Data ingestion strategies
│   ā”œā”€ā”€ JsonIngestionStrategy.ts  # Abstract interface
│   ā”œā”€ā”€ LocalFileStrategy.ts      # Local file access
│   └── HttpJsonStrategy.ts       # HTTP/HTTPS fetching
ā”œā”€ā”€ context/
│   └── JsonIngestionContext.ts   # Strategy management
└── types/
    └── JsonIngestion.ts          # Type definitions

🚨 Error Handling

Comprehensive Coverage

  • Local Files: Not found, permissions, invalid JSON
  • Remote URLs: Network failures, auth errors (401/403), server errors (500+)
  • Content Size: Auto-reject >50MB with clear messages
  • Format Detection: Smart detection of HTML/XML with guidance
  • Rate Limiting: 429 responses with retry instructions
  • Processing: Quicktype errors, shape filtering issues

All errors include actionable debugging information.

⚔ Performance

Processing Times

File SizeProcessing Time
< 100 KB< 10ms
1-10 MB100ms - 1s
10-50 MB1s - 5s
> 50 MBBlocked

Size Protection

  • 50MB maximum for all sources
  • Pre-download checking via Content-Length
  • Memory safety prevents OOM errors
  • Clear error messages with actual vs. limit sizes

Best Practices

  • Use json_dry_run first for large files
  • Filter with json_filter before schema generation
  • Focus shapes on essential fields only

🌐 Supported Sources

  • Public APIs - REST endpoints with JSON responses
  • Static Files - JSON files on web servers
  • Local Dev - http://localhost during development
  • Local Files - File system access

šŸ’” Common Workflows

LLM Integration:

  1. API returns large response
  2. json_filter extracts relevant fields
  3. Process clean data without noise
  4. json_schema generates types for safety

Hosted deployment

A hosted deployment is available on Fronteir AI.

Related MCP Servers

linxule/mineru-mcp

šŸ“‡ ā˜ļø - MCP server for MinerU document parsing API. Parse PDFs, images, DOCX, and PPTX with OCR (109 languages), batch processing (200 docs), page ranges, and local file upload. 73% token reduction with structured output.

šŸ”Ž Search & Data Extraction1 views
0xdaef0f/job-searchoor

šŸ“‡ šŸ  - An MCP server for searching job listings with filters for date, keywords, remote work options, and more.

šŸ”Ž Search & Data Extraction0 views
Aas-ee/open-webSearch

šŸ šŸ“‡ ā˜ļø - Web search using free multi-engine search (NO API KEYS REQUIRED) — Supports Bing, Baidu, DuckDuckGo, Brave, Exa, and CSDN.

šŸ”Ž Search & Data Extraction0 views
ac3xx/mcp-servers-kagi

šŸ“‡ ā˜ļø - Kagi search API integration

šŸ”Ž Search & Data Extraction0 views

Engagement

Views
0
Installs
0
Upvotes
0

Views and upvotes are unique per visitor network (hashed IP). Installs count copy actions.

Status

Health: Not checked yet

We have not completed a health check for this listing yet.

No check timestamp yet.

Unclaimed listing (imported or pending owner verification). Claim it →
ā˜… Spotlight Slot

Feature Your MCP Server

Get maximum visibility for your server across our directory, search results, and detail pages.

Spotlight Your Server

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to get the verified badge and attach your website.

Claim this listing

Promote this listing

Optional paid placement. Free listings stay free forever.

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.