Models.dev: Open-Source Database of AI Model Specs, Pricing, and Capabilities

Models.dev is an open-source database of AI model specifications, pricing, and capabilities, maintained as a community-contributed project. The data is stored in the repo as TOML files, organized by provider and model, with logos as SVGs. It also powers an API and is used internally in opencode.
API Access
You can fetch all model data via a single API endpoint:
curl https://models.dev/api.jsonThe Model ID field (e.g., openai/gpt-5) matches the identifier used by AI SDK. Provider logos are available as SVG files:
curl https://models.dev/logos/{provider}.svgReplace {provider} with the Provider ID (e.g., anthropic, openai, google).
Contributing
To add a new model, first check if the provider already exists in the providers/ directory. If not, create a provider folder with a provider.toml file:
name = "Provider Name"
npm = "@ai-sdk/provider" # AI SDK Package name
env = ["PROVIDER_API_KEY"] # Environment Variable keys used for auth
doc = "https://example.com/docs/models" # Link to provider's documentationIf the provider exposes an OpenAI-compatible endpoint, set npm = "@ai-sdk/openai-compatible" and include the base URL: api = "https://api.example.com/v1".
Optionally, add a logo.svg to the provider's directory using currentColor for fills/strokes. Then create a model definition TOML file in providers/{provider}/models/. Example model definition:
name = "Model Display Name"
attachment = true # supports file attachments
reasoning = false # supports chain-of-thought
tool_call = true # supports tool calling
structured_output = true # supports structured output
temperature = true # supports temperature control
knowledge = "2024-04" # knowledge-cutoff date
release_date = "2025-02-19"
last_updated = "2025-02-19"
open_weights = true # weights publicly available
[cost]
input = 3.00 # per million input tokens (USD)
output = 15.00 # per million output tokens
reasoning = 15.00 # per million reasoning tokens
cache_read = 0.30 # per million cached read tokens
cache_write = 3.75 # per million cached write tokens
input_audio = 1.00 # per million audio input tokens
output_audio = 10.00 # per million audio output tokens
[limit]
context = 400_000 # max context window (tokens)
input = 272_000 # max input tokens
output = 8_192 # max output tokens
[modalities]
input = ["text", "image"]
output = ["text"]
[interleaved]
field = "reasoning_content"
For wrapper providers that mirror existing models, use extends (not detailed in the snippet).
Models.dev is an open-source, community-driven database. The source is on GitHub, and contributions are welcome to keep data up to date.
📖 Read the full source: HN LLM Tools
👀 See Also

Local Book Translation Pipeline Uses Qwen 32B and Mistral 24B with Contextual RAG
A developer built a fully automated PDF-to-ePub book translation pipeline using eight Python scripts, Marker for PDF extraction, Qwen 32B for translation with a global glossary, and Mistral 24B for style editing.
OpenClaw Mock API for Building Tools/Integrations Against the Gateway
An open source mock of the OpenClaw gateway WebSocket API using Imposter. Supports chat.send/history, session create/list, agent list, model list. Extend with YAML and JSON.

Routerly: Self-Hosted LLM Gateway with Runtime Routing Policies and Budget Control
Routerly is a free, open-source, self-hosted LLM gateway that provides runtime model selection based on routing policies like cheapest, fastest, or most capable, along with project-level budget limits with per-token tracking. It's OpenAI-compatible for drop-in use with tools like Cursor, LangChain, and Open WebUI.

Mobile Harness: Bringing Browser-Use Skills to Mobile Apps for Claude Agents
Mobile Harness gives Claude/agents reusable mobile app skills (Reddit, Instagram, TikTok) using MobAI as execution layer. Works with real devices, emulators, simulators, free daily quota.