Agents get APIs wrong every day

Your AI agent is confidently
using APIs that don't exist.

Wrong endpoints. Wrong parameters. Wrong auth. Every time. openapi.city gives your agent accurate, resolved API specs on demand — via MCP or REST.

Tell your agent:

Sign up for openapi.city. Read https://openapi.city/signup.md for instructions.

— Or sign up yourself the old-school way —

The Problem

Why agents hallucinate APIs

🤡

Stale training data

Your agent learned the Stripe API from training data that cut off months ago. Since then, charges.create was deprecated in favor of payment_intents.create. The card parameter was removed in 2019. Your agent never got the memo.

💡

Confidently wrong

LLMs don't know what they don't know. When an agent generates stripe.charges.create({ card: 'tok_visa' }), it sounds plausible. It looks like real code. But it's completely broken. The agent has no mechanism to verify against the actual API spec.

Constant API evolution

Popular APIs release updates weekly. GitHub adds endpoints. Slack deprecates old ones. Twilio changes parameter structures. No static training dataset can keep up with live API evolution.

The Cost

What hallucinations cost you

💸

Wasted debugging

20 minutes tracing a "Stripe API error — Invalid parameter" that your agent could have avoided.

🚨

Broken production

Wrong code ships. Users hit errors. Your integration fails at 2am on a Saturday.

🤷

Trust erosion

"I'll just write it myself" — defeating the entire purpose of having an AI agent.

Demo

API context, not API hallucinations

See the difference in real time

Without openapi.city CTX 0%
With openapi.city CTX 0%
The Fix

How openapi.city stops hallucinations

1

Agent queries for exactly what it needs

Instead of guessing, your agent calls get_endpoint with the provider name, HTTP method, and path. It gets back the exact parameter list, request body schema, and response structure — all validated against the current spec.

2

Always-current specs

We refresh specs weekly from source. When Stripe deprecates an endpoint, your agent knows within days — not months. Version diffs track every change so you can see exactly what moved.

3

Smart schema resolution with depth control

No more chasing $ref pointers through a 2.7MB spec. Request a schema and we intelligently include only the relevant components in a components block — no bloat, no duplication. You control resolution depth, and $ref pointers stay intact so your agent resolves them cleanly.

Setup

Working in 30 seconds

No code changes. Just tell your agent to sign up.

MCP Configuration JSON
{
  "mcpServers": {
    "openapi-city": {
      "url": "https://openapi.city/mcp",
      "headers": {
        "Authorization": "Bearer oac_live_..."
      }
    }
  }
}

# Works with: Claude Code, Cursor, Windsurf, VS Code, OpenCode
Claude Code
Add to claude_desktop_config.json
Cursor
Add to .cursor/mcp.json
Windsurf
Add to .windsurf/mcp.json
VS Code
Add to settings.json MCP servers
Pricing
Start free, scale when ready

No credit card required. Upgrade when your agents need more.

Free
€0/mo

Hobby projects & exploration

  • 100 calls / month
  • Full REST API access
  • Full MCP server access
  • 100+ indexed APIs
  • Community support
Get Started
POPULAR
Pro
€10/mo

excl. VAT

Production AI agents

  • 5,000 calls / month
  • Full REST API + MCP
  • 100+ indexed APIs
  • API comparison — side-by-side in 1 call
  • Custom providers — resolve any spec URL
  • €10 / 1,000 overage calls
  • Priority support
Get Started
Stop your agent from
guessing APIs.

100 free calls. No credit card. Get accurate API specs in seconds.