← Назад к Инструменты

API · MCP

Нормализованные данные о ценах, возможностях и рейтингах, на которых работает сайт, публикуются в виде статического JSON: их можно свободно загружать без ключа API. Код или агент может обращаться к ним напрямую.

Эндпоинты

Все модели: каноническая запись, цена официального + самого дешёвого канала, смешанные цены, контекст, возможности, оценки Artificial Analysis и использование за 30 дней.

Все провайдеры: имя, уровень (первая сторона / облако / шлюз), число моделей, SDK, база API и документация.

Текстовое резюме сайта для AI-краулеров (соглашение llms.txt).

Отдаётся как статические файлы через CDN, поэтому ограничений скорости нет. Тем не менее кэшируйте ответы, а не запрашивайте их заново при каждом обращении. Данные обновляются при каждой сборке.

Ключевые поля (models.json)

id, name, lab, kindКанонический id, отображаемое имя, лаборатория и тип модели.
reference / cheapestРеференс (официальный/прайс) и самый дешёвый платный канал, каждый с входом/выходом/чтением кэша за 1M токенов.
blendedRef / blendedMin / blendedTrustedСмешанная удельная цена (вход×0,75 + выход×0,25) для референсного, самого дешёвого и самого дешёвого доверенного (без шлюзов) каналов.
context, outputLimit, capabilitiesОкно контекста, максимальный вывод и трёхзначные флаги возможностей (true/false/null).
aa (idx, coding, agentic, speed, taskCost)Индексы Artificial Analysis по интеллекту, кодированию, агентности, скорость вывода и стоимость за задачу (null, если не охвачено).
usage (rank, tokens, share)Ранг использования OpenRouter за 30 дней, всего токенов и доля (null, если не отслеживается).
hostCount, spreadСколько провайдеров размещают модель и разброс цен между платформами.

Примеры

Пять самых дешёвых моделей по смешанной цене, через curl и jq:

curl -s https://llmpricing.dev/api/models.json \
  | jq '.models
        | map(select(.blendedMin != null))
        | sort_by(.blendedMin)[:5]
        | .[] | {name, blendedMin, cheapest: .cheapest.provider}'

JavaScript (fetch):

const res = await fetch("https://llmpricing.dev/api/models.json");
const { meta, models } = await res.json();

// 5 cheapest by blended price (input x0.75 + output x0.25)
const cheapest = models
  .filter((m) => m.blendedMin != null)
  .sort((a, b) => a.blendedMin - b.blendedMin)
  .slice(0, 5);

console.log(meta.syncedAt, cheapest);

Python (requests):

import requests

data = requests.get("https://llmpricing.dev/api/models.json").json()
models = data["models"]

# highest Artificial Analysis intelligence with a public price
ranked = sorted(
    (m for m in models if m["aa"] and m["aa"]["idx"] is not None),
    key=lambda m: m["aa"]["idx"],
    reverse=True,
)
for m in ranked[:5]:
    print(m["name"], m["aa"]["idx"], m["blendedMin"])

Эндпоинты отправляют Access-Control-Allow-Origin: *, поэтому работают и из браузера.

MCP-сервер

Поскольку данные — это чистый JSON по HTTPS, любой MCP-сервер с поддержкой fetch может открыть их агенту. Например, референсный fetch-сервер:

{
  "mcpServers": {
    "llm-pricing": {
      "command": "uvx",
      "args": ["mcp-server-fetch"]
    }
  }
}

Затем попросите агента прочитать https://llmpricing.dev/api/models.json и порассуждать над этим: самая дешёвая модель в рамках бюджета, лучший интеллект на доллар, какие поставщики размещают конкретную модель.

MCP-сервер первой стороны с типизированными инструментами (search_models, cheapest, compare) есть в планах. До тех пор стабильным интерфейсом остаются JSON-эндпоинты выше.

Лицензия и атрибуция

Данные собраны из models.dev (MIT), Artificial Analysis и OpenRouter. Их можно использовать повторно по лицензии CC BY 4.0, сохраняя указание на LLM Pricing и исходные источники.