Free · unauthenticated · versioned JSON

The open reference for
every AI model, one catalog

A vendor-neutral, kind-aware catalog of LLM, embedding, rerank & media models — which ids exist per vendor and, for each, its kind, context window and capabilities — plus an optional indicative US list price. No key, no server. Just clean JSON.

Models
Vendors
Kinds
Schema
Why it exists

One place to answer “which models are there?”

Every provider ships its own shape, its own churn and its own docs. This catalog normalizes them into one contract the whole community can build on.

Vendor-neutral

One envelope across OpenAI, Anthropic, Gemini, Bedrock, Mistral, Cohere, Voyage, Ollama and more. One parser reads them all.

Kind-aware

Every id tagged by kind — chat, embedding, rerank, image, speech, transcription, video — with context window and capabilities.

Zero-auth, zero-cost

Static, CORS-open, versioned JSON on GitHub Pages. No key, no rate limit, no server. Pin schema v1 and lock on.

Provenance-first

Regenerated entries carry their sources and lastVerified. Any price is an indicative US list reference — verify with the vendor. We omit a field before we guess it.

Explore

Browse the catalog

Search, filter by kind, capability or modality, and use Sort to rank across every vendor at once. Each model is a card showing all of its recorded fields; optionally group the results by vendor, kind or tier — or press ⌘K to jump anywhere.

Each model shows a use-case tag (derived from its kind, capabilities and modalities) and, when priced, a coloured tierFrontier High Mid Light — bucketed from the vendor's US list price as a market proxy for capability (not a benchmark or quality score).

Sort

For developers

A public REST-ish API

Static, CORS-open, versioned JSON — every path is a plain GET. Faceted slices are pre-computed at publish time, all sharing one vendors-map envelope.

EndpointWhat you get
catalog.jsonFull catalog — every vendor, every field. Rolling latest.
catalog-v1.jsonSame, pinned to schema v1 — safe for consumers to lock onto.
index.jsonCompact index — each model trimmed to { vendor, id, label, kind }. ~70% smaller; ideal for model-pickers that lazy-load the full record.
stats.jsonAggregate metrics — counts per vendor / kind / capability / modality, field-fill coverage and totals. One number instead of re-aggregating the catalog.
coverage.jsonPer-vendor field fill rate — { filled, rate } per field, per vendor, plus overall. Makes gaps visible so they become an open invitation to contribute.
leaderboards.jsonDecision leaderboards — cheapest per kind, best intelligence-per-$, biggest context, fastest. Each carries its population/total. Derived from indicative/cited figures — a reference, verify at the source.
changes.json · feed.xmlChange feed — what was added / removed / lifecycle-changed at the last publish, as JSON and a subscribable Atom feed.
catalog.csv · catalog.ndjsonFlat exports — one row / one JSON line per model. For spreadsheets, jq -c, grep and data pipelines that don't want nested JSON.
by-kind/<KIND>.jsonFiltered to one kind — e.g. EMBEDDING, CHAT.
by-vendor/<vendor>.jsonFiltered to one vendor — e.g. openai.
by-capability/<cap>.jsonFiltered to one capability — e.g. reasoning, vision.
by-modality/<m>.jsonFiltered to one input/output modality — e.g. image, audio.
aliases.jsonAlias resolution map — alias id → { vendor, id } of the canonical entry. Resolve -latest / dated snapshots without walking the catalog.
plans.jsonConsumer subscription plans — a separate dataset (Claude, ChatGPT, Gemini, Z.ai), each with an indicative US list price. A reference only — verify with the vendor.
providers.jsonPricing-source registry — each provider's official API-pricing / consumer-plans page, categorized and linked to its catalog vendor. The canonical places to verify indicative prices.
badge.jsonStatus badge — a shields.io endpoint payload for a live "N models · M vendors" README badge.
llms.txt · models/…Citability layer — an llms.txt index plus an indexable, quotable page (Markdown + HTML) per vendor and per model, for assistants and search engines.
endpoints.jsonDiscovery manifest — absolute URLs for every path, plus the available byKind/byVendor keys. Read this instead of hard-coding paths.
catalog.schema.jsonJSON Schema (Draft 2020-12) describing the envelope + entry.

Try it

Copy, paste, run. No token required.

# every embedding model, from the pre-filtered slice
curl -s https://openviglet.github.io/model-catalog/by-kind/EMBEDDING.json \
  | jq '.vendors | to_entries[].value[].id'

# discover the whole surface
curl -s https://openviglet.github.io/model-catalog/endpoints.json | jq

Embed a live badge

A shields.io endpoint that always reflects the current totals. Drop it in any README:

Model Catalog — live model and vendor count

<!-- Markdown -->
![Model Catalog](https://img.shields.io/endpoint?url=https://openviglet.github.io/model-catalog/badge.json)
Client SDKs

Read the catalog in one line

Zero-dependency, read-only clients — URL selection (rolling / pinned / compact), vendors-map flattening, byKind/byVendor/get filters and in-memory caching. All Apache-2.0, all unauthenticated.

Py

Python

stdlib urllib only · 3.8+ · On PyPI · Docs ↗

pip install openviglet-model-catalog-client
JS

JavaScript / TS

ESM · Node 18+ & browser · npm · Docs ↗

npm i @openviglet/model-catalog-client
Jv

Java

JDK HttpClient · 17+ · On Maven Central · Docs ↗

<dependency>
  <groupId>io.github.openviglet</groupId>
  <artifactId>model-catalog-client</artifactId>
  <version>1.0.2</version>
</dependency>
implementation 'io.github.openviglet:model-catalog-client:1.0.2'
implementation("io.github.openviglet:model-catalog-client:1.0.2")
libraryDependencies += "io.github.openviglet" % "model-catalog-client" % "1.0.2"
Community

Spotted a missing or wrong model?

This is a community-owned reference — it gets better when you correct it. Propose a model in a structured issue; a maintainer verifies it and folds it in through the propose-and-review pipeline. No auto-publish, ever.

1 · Propose

Open the issue form with the vendor, id, kind and whatever facts you're sure of — plus a source. Every model's detail panel deep-links here, pre-filled.

2 · Review

A maintainer pins the verified fact in overrides.json and runs the pipeline read-only — fetch, merge, validate, diff report. Nothing is written yet.

3 · Publish

regen --apply writes the canonical file and a PR opens for review. Identity, kind, capability — plus an indicative US list price (a reference, verify with the vendor).

Compare