Marketplace json-to-llm-context
Turn JSON or PostgreSQL jsonb payloads into compact readable context for LLMs. Use when a user wants to compress JSON, reduce token usage, summarize API responses, or convert structured data into model-friendly text without dumping raw paths.
install
source · Clone the upstream repo
git clone https://github.com/aiskillstore/marketplace
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/aiskillstore/marketplace "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/vc999999999/json-to-llm-context" ~/.claude/skills/aiskillstore-marketplace-json-to-llm-context && rm -rf "$T"
manifest:
skills/vc999999999/json-to-llm-context/SKILL.mdsource content
JSON to LLM Context
Overview
Use this skill when raw JSON is too noisy for direct prompting. It converts JSON or exported
jsonb
content into short, readable summaries that preserve entities, status, relationships, and counts.
Prefer this skill for:
- API responses
- PostgreSQL
exportsjsonb - nested config/state payloads
- large arrays of records that need compact summaries
Do not use this skill for PDF, DOCX, image OCR, or arbitrary prose documents.
Workflow
- Confirm the input is valid JSON or
-style JSON text.jsonb - Run
on the file or pipe JSON through stdin.scripts/json_to_readable_context.py - Return the generated readable summary as the primary artifact.
- If the output still feels too long, rerun with tighter limits such as lower
,--max-samples
, or--max-depth
.--max-string-len - If parsing fails, report the JSON error clearly instead of guessing.
Quick Start
python3 scripts/json_to_readable_context.py --input payload.json
From stdin:
cat payload.json | python3 scripts/json_to_readable_context.py
Write to a file:
python3 scripts/json_to_readable_context.py --input payload.json --output summary.txt
Common tuning:
python3 scripts/json_to_readable_context.py \ --input payload.json \ --style sectioned \ --strict \ --preserve status,profile.email \ --show-paths \ --expand collections \ --max-samples 2 \ --max-depth 2 \ --max-string-len 48
Output Style
The script aims for layer-2 readable output, for example:
User[123]: Tom Summary - Status: active. - Profile: email a@b.com (verified). Collections - Roles: 2 total; values: admin and editor.
Behavior rules:
- prefer entity headers like
User[123]: Tom - group top-level output into
,Summary
, andDetails
when availableCollections - convert fields into short report-style bullets when possible
- summarize large arrays as totals, statuses, and short examples
- keep stable ordering so repeated runs are comparable
- avoid raw path dumps unless the structure is too irregular to beautify safely
Style Options
(default): emits--style sectioned
,Summary
, andDetailsCollections
: emits a simpler header + bullet list without section headings--style flat
Example flat output:
User[123]: Tom - Status: active. - Profile: email a@b.com (verified). - Roles: 2 total; values: admin and editor.
Safety Controls
: reduces aggressive compression and keeps more explicit structure--strict
: always keeps those keys or dotted paths, even when empty or normally dropped--preserve key1,key2,path.to.field
: adds local sub-bullets so important parts are less compressed--expand collections|details|all
: appends source markers like--show-paths
or[@status]
to rendered lines[@orders[0]]
Example:
python3 scripts/json_to_readable_context.py \ --input payload.json \ --strict \ --preserve status,profile.email,orders \ --expand all \ --show-paths
Example with paths:
User[123]: Tom [@root] Summary - Status: active. [@active] Collections - Roles: 2 total; values: admin and editor. [@roles]
When To Read References
Read
references/rules.md only when you need:
- the exact summarization heuristics
- examples of array and nested-object handling
- guidance for deciding whether to tighten or loosen output
Failure Handling
- Invalid JSON: stop and show the parse error
- Very irregular objects: fall back to simplified readable key/value lines
- Extremely deep payloads: cap traversal with
--max-depth - Overlong text blobs: truncate safely with length hints
Notes
and PostgreSQLjson
are treated the same once parsedjsonb- the default output is a single readable text artifact
- this skill intentionally favors readability over perfect structural fidelity