API

Everything is public, read-only and CORS-open. No key, no sign-up. Facts marked as inferred are never served.

endpointreturns
/api/public/v1/providersProvider index with fact counts
/api/public/v1/providers/{slug}One provider, its products, plans and facts
/api/public/v1/facts?provider=&product=&plan=&key=&status=&limit=Atomic facts; returns FACT_NOT_FOUND with suggestions when nothing matches
/api/public/v1/compare?a=&b=Deterministic key-by-key comparison of two providers
/api/public/v1/changes?limit=Recently changed facts, newest first
/api/public/md/providers/{slug}Markdown twin of the provider record
/api/public/mcpMCP server for AI agents; GET lists the tools, POST speaks JSON-RPC 2.0
/llms.txtShort agent guide to the dataset
/llms-full.txtExpanded agent guide with worked examples
/openapi.jsonOpenAPI 3.1 description
/data/snapshot.jsonlOne JSON object per published fact
/data/schema.mdField-by-field dataset schema

Example response

GET /api/public/v1/facts?provider=vercel&key=compute.function.max_duration_seconds
{
  "object": "list",
  "count": 1,
  "query": { "provider": "vercel", "key": "compute.function.max_duration_seconds" },
  "data": [
    {
      "provider": { "slug": "vercel", "name": "Vercel" },
      "plan": { "slug": "hobby", "name": "Hobby" },
      "key": "compute.function.max_duration_seconds",
      "value": 300,
      "unit": "seconds",
      "raw_value": "Maximum duration 300 seconds on Hobby",
      "status": "verified",
      "last_verified_at": "2026-09-18T09:00:00+00:00",
      "source": {
        "url": "https://vercel.com/docs/functions/limitations",
        "title": "Vercel Functions limits",
        "retrieved_at": "2026-09-18T09:00:00+00:00"
      }
    }
  ]
}

MCP server

Assistants that speak MCP can query the dataset directly — no scraping, no key. Point the client at the endpoint below; the tools are list_providers, list_keys, get_facts, compare_key_across_providers, compare_providers, list_changes and dataset_status. Every result carries the same source URL, timestamp and status as the REST API.

MCP client configuration
{
  "mcpServers": {
    "limitsdb": {
      "type": "http",
      "url": "https://project--2334455f-1446-46cc-973a-99055b662eee.lovable.app/api/public/mcp"
    }
  }
}

Error shape

404
{
  "error": {
    "code": "FACT_NOT_FOUND",
    "message": "No published fact matched the requested provider, plan and key.",
    "suggestions": ["Remove the plan filter", "Call /api/public/v1/facts?provider=<slug> to list available keys"]
  }
}