exa.ai

agent readiness score · scanned Aug 17, 2026 · 7s · Agent Tools

#62 of 979 · #10 in category

75/ 100B

Exa provides an API for AI agents to perform real-time web search, crawling, and research, offering structured outputs and token-efficient content extraction.

badge

Discovery 20/20

Access 28.8/30

Usability 15.9/40

Payments 10/10

Top fixes

  1. OpenAPI spec discoverable

    Publish your OpenAPI spec at /openapi.json and link it from docs — it's the single highest-leverage artifact for agent integration.

    +5
  2. MCP handshake & tools list

    MCP endpoint https://exa.ai/docs/reference/exa-mcp.md failed handshake: Method not allowed. Support streamable HTTP with protocol version negotiation; if auth-gated, return RFC 9728 metadata in WWW-Authenticate.

    +4
  3. Semantic HTML structure

    Add landmark elements and a clean heading hierarchy — missing: <main> landmark, <header>/<footer>, no heading-level skips, text-to-markup ratio ≥ 0.10.

    +3.5
  4. agents.md

    Add /agents.md: what agents may do on your site, key URLs, auth, rate limits, and who to contact.

    +3
  5. OAuth authorization server metadata

    Serve RFC 8414 metadata at /.well-known/oauth-authorization-server with PKCE (S256) and a registration_endpoint so agents can self-onboard.

    +3
  6. MCP server discovery

    Publish /.well-known/mcp/server-card.json describing your MCP endpoint so agents can autodiscover it. Evidence found: llms.txt.

    +2.5

1.Can an agent discover and trust you?

8/8

Whether agents can crawl you, find you in the registries and searches they check, and trust what they find.

  • Sitemap present & freshrequired4/4

    Sitemap at https://exa.ai/sitemap.xml: 1698 entries, freshest <lastmod> 2026-07-23 (25 days ago)

    Resolved the sitemap from robots.txt or /sitemap.xml, validated XML, and checked lastmod freshness

    spec ↗
  • Brand search discoverabilityrequired4/4

    Both searches ("Exa" and "Exa agent tools") cited exa.ai: https://exa.ai/docs/reference/search-api-guide-for-coding-agents, https://exa.ai/docs/reference/search-best-practices, https://exa.ai/docs/reference/search-api-guide, https://exa.ai/docs/reference/openai-responses-api-with-exa, https://exa.ai/docs/reference/agent-api/overview

    Ran clean brand-name web searches and checked whether your domain is cited in the results

  • MCP registry listingsrecommendedna

    No MCP server detected for this product

    Queried the official MCP registry, Smithery, Glama, and PulseMCP for servers matching your domain

    spec ↗

2.Do you welcome agents?

11/16

Whether your robots policy, bot protection, and agent guidance actively admit AI agents instead of blocking them.

  • robots.txt present & parseablerequired2/2

    /robots.txt parses: 1 User-agent group(s), 1 Sitemap line(s)

    Fetched /robots.txt and validated it parses as a robots policy

    spec ↗
  • AI crawler policyrequired5/5

    All 12 AI crawler user-agents (GPTBot, ClaudeBot, PerplexityBot, …) are allowed at / by robots.txt

    Evaluated robots.txt groups for the major AI agent user-agents (GPTBot, ClaudeBot, PerplexityBot, …)

  • Content Signals directivesemerging0/2

    No Content-Signal lines in robots.txt

    fix → Declare Content Signals in robots.txt (e.g. `Content-Signal: search=yes, ai-train=no`) to express AI usage preferences machine-readably.

    Looked for Content-Signal lines in robots.txt

    spec ↗
  • Agent user-agent paritybetarequired4/4

    All three UAs get HTTP 200; bot bodies are ClaudeBot 100%, GPTBot 100% of the browser response (232897 bytes)

    Compared responses served to browser and AI-agent user-agents (informational while in beta)

  • agents.mdrecommended0/3

    No agents.md: https://exa.ai/agents.md → HTTP 404, https://exa.ai/AGENTS.md → HTTP 404

    fix → Add /agents.md: what agents may do on your site, key URLs, auth, rate limits, and who to contact.

    Fetched /agents.md and checked for substantive agent guidance

    spec ↗

3.Does an agent understand who you are and what you do?

18/18

Whether your pages carry machine-readable identity: structured data, llms.txt, clear copy an agent can quote.

  • Homepage states what you arerequired3/3

    Homepage clarity rated 5/5 — an agent can confidently say what this company does (model's one-sentence read: "Exa provides an API for AI agents to perform real-time web search, crawling, and research, offering structured outputs and token-efficient content extraction.")

    An LLM read your homepage as an agent would and rated how confidently it could say what you do

  • OpenGraph / social metadatarecommended2/2

    Homepage has og:title, og:description, and og:image (twitter:card="summary_large_image" present)

    Parsed homepage og:title / og:description / og:image and twitter:card meta tags

    spec ↗
  • llms.txtrecommended4/4

    /llms.txt is valid llmstxt.org shape: H1 "Exa", 187 markdown link(s)

    Fetched /llms.txt and validated it against the llmstxt.org shape (H1, summary, curated links)

    spec ↗
  • llms-full.txtbonusrecommended2/2

    /llms-full.txt serves 1047651 chars of markdown

    Fetched /llms-full.txt and checked for substantial inline markdown content

    spec ↗
  • JSON-LD structured datarequired4/4

    3 JSON-LD block(s) on homepage and pricing page (types: WebAPI, Organization); Organization block is well-formed

    Extracted and validated application/ld+json blocks on the homepage and pricing page

    spec ↗
  • Markdown content negotiationrecommended3/3

    https://exa.ai/docs/reference/contents-api-guide returns markdown for `Accept: text/markdown` (content-type text/markdown)

    Requested key pages with Accept: text/markdown and probed .md twin URLs

4.Can an agent integrate with you?

watch →12.5/21

Whether the artifacts an agent needs to build on you — docs, API specs, SDKs, MCP servers — exist and are findable.

  • Developer resource discoverabilityrecommended3/3

    Search "Exa API documentation" cited your own domain: https://exa.ai/docs/reference/search, https://exa.ai/docs/reference/search-api-guide, https://exa.ai/docs/reference/search-api-guide-for-coding-agents, https://exa.ai/docs/reference/openapi-spec

    Searched for your brand with developer-keyword suffixes and checked which official resources are cited

  • OpenAPI spec discoverablerequired0/5

    No OpenAPI spec found: checked docs-page links and /openapi.json, /openapi.yaml, /swagger.json, /api/openapi.json, /docs/openapi.json, and api-subdomain locations

    fix → Publish your OpenAPI spec at /openapi.json and link it from docs — it's the single highest-leverage artifact for agent integration.

    Probed standard OpenAPI locations and docs links for a fetchable, parseable spec

    spec ↗
  • Docs discoverablerequired4/4

    Docs found at https://exa.ai/docs/reference/contents-api-guide (via homepage link, 5019 chars of readable text)

    Followed homepage nav/footer links and probed /docs, /developers, docs.{domain}

  • MCP server discoveryrequired2.5/5

    MCP evidence found only as a mention in llms.txt: "https://exa.ai/docs/reference/exa-mcp.md" — no well-known server card

    fix → Publish /.well-known/mcp/server-card.json describing your MCP endpoint so agents can autodiscover it. Evidence found: llms.txt.

    Probed /.well-known/mcp/server-card.json, mcp.json, and docs mentions for an MCP endpoint

    spec ↗
  • npm SDKrecommended2/2

    Official npm package "exa-js" (verified via README mentions the domain): latest 2.18.1 published 2026-08-14

    Searched the npm registry for an official, domain-verified SDK package

  • PyPI SDKrecommended1/2

    Official PyPI package "exa" (verified via repository under the exa GitHub org (https://github.com/exa-analytics/exa/issues)) but latest 0.5.26 is stale — published 2020-08-25, over 18 months ago

    fix → Publish a fresh release of "exa" — agents treat SDKs untouched for 18+ months as abandoned.

    Searched PyPI for an official, domain-verified SDK package

5.Is your integration well-built?

watch →4.4/5

Whether your specs, docs, and tools are complete and descriptive enough for an agent to use them without guessing.

  • OpenAPI validity & qualityrecommendedna

    No OpenAPI spec found — nothing to lint

    Linted the spec: descriptions, operationIds, securitySchemes, servers

  • Docs qualityrecommended2.4/3

    Docs at https://exa.ai/docs/reference/contents-api-guide scored clarity 4/5, completeness 3/5, runnable examples 5/5, agent-friendliness 4/5 (mean 4.0/5)

    An LLM rated your docs for clarity, completeness, runnable examples, and agent-friendliness

  • Quickstart / getting startedrecommended2/2

    Quickstart found: https://exa.ai/docs/reference/contents-api-guide#human-quickstart (linked from https://exa.ai/docs/reference/contents-api-guide) returns 200 with a code block

    Looked for a quickstart/getting-started guide containing code blocks

  • MCP tool qualityrecommendedna

    No tools listed by the MCP endpoint — nothing to lint

    Linted listed tools for descriptions, typed input schemas, and naming

6.Can an agent use you reliably in production?

watch →3/4

Response hygiene, TLS and redirect discipline, and security contact channels agents depend on at runtime.

  • TLS & redirect hygienerequired2/2

    http://exa.ai/ upgrades to https in 1 hop(s), 1 redirect(s) total, final HTTP 200; HSTS present

    Checked http→https redirect behavior, chain length, and TLS health

  • Response speed & weightrequired1/1

    Homepage TTFB 55ms, payload 227KB, Content-Encoding: br

    Measured homepage TTFB, payload size, and compression

  • security.txtrecommended0/1

    https://exa.ai/.well-known/security.txt returned HTTP 404

    fix → Publish RFC 9116 /.well-known/security.txt with a Contact and a future Expires.

    Fetched /.well-known/security.txt and validated Contact + Expires

    spec ↗

7.Can an agent authenticate to you?

watch →0/7

Whether agents can discover your auth model machine-readably (OAuth metadata) and follow documented steps to credentials.

  • OAuth authorization server metadatarecommended0/3

    Neither /.well-known/oauth-authorization-server nor /.well-known/openid-configuration resolved (HTTP 404 / HTTP 404)

    fix → Serve RFC 8414 metadata at /.well-known/oauth-authorization-server with PKCE (S256) and a registration_endpoint so agents can self-onboard.

    Fetched /.well-known/oauth-authorization-server (and openid-configuration fallback)

    spec ↗
  • OAuth protected resource metadatarecommended0/2

    No RFC 9728 metadata: https://exa.ai/.well-known/oauth-protected-resource → HTTP 404

    fix → Serve RFC 9728 metadata at /.well-known/oauth-protected-resource naming your authorization servers so agents can discover how to authenticate.

    Fetched /.well-known/oauth-protected-resource

    spec ↗
  • Auth documentationrecommended0/2

    Auth docs link https://dashboard.exa.ai/api-keys on https://exa.ai/docs/reference/contents-api-guide returned HTTP 429, and /auth.md is absent

    fix → Document auth end-to-end (key creation → header format → example call), or ship /auth.md.

    Looked for /auth.md or an authentication docs page with code examples

8.Can an agent transact with you?

watch →11/15

Whether pricing is discoverable and machine-readable, and whether you support agent payment protocols.

  • Pricing discoverablerequired5/5

    Pricing page found at https://exa.ai/pricing (via homepage link) with legible price signals ("$120 in credits per yearGet st").

    Followed nav/footer links and probed /pricing for a page with legible price signals

  • Machine-readable pricingrecommended5/5

    LLM extracted 6 numerically-priced plan(s) from https://exa.ai/pricing at confidence 0.90: Starter USD 0/month; Developer (no listed price); Enterprise (contact sales); Search USD 7/1k requests; Agent USD 0.012/run; Contents USD 1/1k pages per content type; Deep Search USD 12/1k requests; Monitors USD 15/1k requests.

    Looked for Offer JSON-LD, then had an LLM attempt structured extraction of your plans

    spec ↗
  • x402 payment supportbonusrecommended0/2

    /.well-known/x402 returned HTTP 404. No x402 support detected (bonus check — absence costs nothing).

    fix → Support x402: serve payment requirements at /.well-known/x402, or answer unauthenticated API calls with HTTP 402 plus an x402 payment-requirements payload (x402Version, accepts[]).

    Probed /.well-known/x402 and API endpoints for HTTP 402 payment-required envelopes

    spec ↗
  • AP2 readinessemerging0/1

    No AP2 hints found — scanned llms.txt, docs page (https://exa.ai/docs/reference/contents-api-guide); /.well-known/ap2 returned HTTP 404.

    fix → Adopt AP2 to accept delegated agent payments — see https://ap2-protocol.org.

    Scanned fetched artifacts and well-known paths for AP2 hints

    spec ↗
  • Agentic Commerce Protocolemerging0/1

    No Agentic Commerce Protocol hints found — scanned llms.txt, docs page (https://exa.ai/docs/reference/contents-api-guide); /.well-known/acp returned HTTP 404.

    fix → Adopt the Agentic Commerce Protocol so agent checkouts can complete against your store — see https://developers.openai.com/commerce.

    Scanned docs and specs for agentic checkout endpoints

    spec ↗
  • Other agent payment protocolsbonusemerging1/1

    UCP/MPP evidence found: llms.txt mentions "MPP".

    Scanned fetched artifacts for UCP/MPP protocol hints

9.Can a user act through an agent?

0/4

Whether an end user's agent can operate on their behalf: working MCP tools, published skills, agent configs.

  • Agent skill publishedbonusemergingna

    Requires the analysis phase — not yet evaluated

    Checked /skill.md, /.well-known/skills/, and skills.sh for published agent skills

  • MCP handshake & tools listrequired0/4

    MCP endpoint https://exa.ai/docs/reference/exa-mcp.md failed handshake: Method not allowed

    fix → MCP endpoint https://exa.ai/docs/reference/exa-mcp.md failed handshake: Method not allowed. Support streamable HTTP with protocol version negotiation; if auth-gated, return RFC 9728 metadata in WWW-Authenticate.

    Performed a streamable-HTTP initialize + tools/list against the MCP endpoint

    spec ↗
  • Agent configs in public repobonusemergingna

    Requires the analysis phase — not yet evaluated

    Checked your public GitHub org's main repos for AGENTS.md / .claude / .cursor configs

10.Can an agent operate your website directly?

4/9

Whether the site itself is legible to non-rendering and browser agents: semantic HTML, no JS walls, accessibility.

  • NLWeb endpointemerging0/1

    No NLWeb endpoint detected: /.well-known/nlweb.json returned HTTP 404 (text/html); GET /ask?query=hello returned HTTP 404 (text/html)

    fix → Consider exposing an NLWeb /ask endpoint (and /.well-known/nlweb.json) for conversational access to your content.

    Probed /.well-known/nlweb.json and the /ask endpoint

    spec ↗
  • Semantic HTML structurerequired0/3

    Only 2/6 semantic signals present on the homepage (missing: <main> landmark, <header>/<footer>, no heading-level skips, text-to-markup ratio ≥ 0.10)

    fix → Add landmark elements and a clean heading hierarchy — missing: <main> landmark, <header>/<footer>, no heading-level skips, text-to-markup ratio ≥ 0.10.

    Scored landmark elements, heading hierarchy, and text-to-markup ratio on the homepage

  • Content readable without JavaScriptrequired2/2

    Homepage raw HTML contains 5786 chars of visible text without JavaScript

    Measured visible text in the raw, unrendered homepage HTML

  • Accessibility basicsrequired2/2

    Homepage accessibility: 4/5 checks passed — failing: labeled inputs (2/2 unlabeled)

    Static checks: lang attribute, title, alt coverage, labeled inputs, landmarks

  • WebMCPemerging0/1

    No WebMCP evidence on homepage: no application/webmcp script and no navigator.modelContext reference

    fix → Consider WebMCP to expose page actions as tools to browser agents.

    Looked for WebMCP script declarations on the homepage

    spec ↗