About json-schema-lookup
A reference skill for looking up public configuration-file schemas in the SchemaStore catalog. It guides developers through finding a schema and inspecting properties, required fields, and allowed values.
Key features
- 01Search schemas by name or filename
- 02Fetch schemas from catalog URLs
- 03Inspect properties and required fields
- 04Check enum values and nested definitions
- 05Query version-specific schema URLs
Use cases
- 01Checking valid tsconfig options
- 02Finding a schema for a configuration filename
- 03Inspecting allowed values for a field
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ sammcj/ agentic-coding --skill json-schema-lookupAfter installing, type/json-schema-lookupin Claude Code to confirm it loaded.
Details
From the project READMEJSON Schema Lookup via SchemaStore
Query schemastore.org's catalog of public configuration file schemas to validate structure, discover options, and check allowed values.
API
- Catalog:
https://www.schemastore.org/api/json/catalog.json- Structure:
{ "schemas": [{ "name", "description", "fileMatch", "url", "versions"? }] }
- Structure:
- Individual schemas: Fetch the
urlfrom the matching catalog entry
Workflow
1. Find the schema
Search the catalog by name or filename pattern:
# Search by name (case-insensitive)
curl -s https://www.schemastore.org/api/json/catalog.json | jq '.schemas[] | select(.name | test("tsconfig"; "i")) | {name, url, fileMatch}'
# Search by filename match
curl -s https://www.schemastore.org/api/json/catalog.json | jq '.schemas[] | select(.fileMatch[]? | test("package\\.json")) | {name, url}'
Alternatively, use WebFetch on the catalog URL and ask for the relevant entry.
2. Fetch and inspect the schema
# List top-level properties
curl -s SCHEMA_URL | jq '.properties | keys'
# Inspect a specific field (type, enum values, description)
curl -s SCHEMA_URL | jq '.properties.FIELD_NAME'
# Check definitions/shared types (schemas use $ref to these)
curl -s SCHEMA_URL | jq '.definitions.DEF_NAME.properties'
# Get the full schema (warning - might be large!)
curl -s SCHEMA_URL | jq .
3. Common queries
# Find enum values for a field
curl -s SCHEMA_URL | jq '.properties.FIELD.enum'
# List nested properties (e.g. compilerOptions in tsconfig)
curl -s SCHEMA_URL | jq '.definitions.compilerOptionsDefinition.properties.compilerOptions.properties | keys'
# Find all required fields
curl -s SCHEMA_URL | jq '.required'
Tips
- Some schemas use
allOf/anyOfcomposition -- check those arrays for the full property set - The
versionsfield on catalog entries provides version-specific schema URLs when available - Schema URLs vary: some point to
json.schemastore.org, others toraw.githubusercontent.com - For large schemas, query specific paths rather than dumping the entire document
- Cache the catalog response locally if making multiple lookups in one session
Comments
Markdown supported