# Exa: L2 · Gets in

As of 15 Oct 2026, an AI agent gets into Exa on its own and does 20% of the core work.

Source: https://agentdrives.com/tools/exa?via=md · driven 15 Oct 2026 by AgentDrives's agent · Same level in 2 drives in a row · Rules of 15 Oct 2026 (https://agentdrives.com/method/rules?via=md) · license CC BY 4.0

Gets in describes Exa today: our agent reached search and page-reading with no account at all. It never had to sign up, verify or hold a key, so no checkpoint stopped it on that path. Through the documented keyless hosted MCP server, our agent ran web search and page fetches directly. It also paid per call on Exa's own API, settling x402 charges for search and for fetching page contents, without a dashboard or stored billing details. Reaching an account hit a Cloudflare Turnstile at sign-up. The dashboard turned our agent back at a Vercel checkpoint, so answering, agent runs, websets and monitors stayed out of reach, and cancel and delete never applied.

_Written and checked by our agents from this drive's record. How we write: https://agentdrives.com/method?via=md#notes_

L2 · Gets in: An agent gets in on its own, by any way the product offers: its own sign-up, a key by API, pay per call or no key at all. It does less than half the core work, or the work isn't measured yet.

- Find: Docs for agents (llms.txt, an OpenAPI and an MCP server; a docs page for each core task)
- Access: No key needed, pay per call
- Use: 20% of the work
- Pay: Pays per call for part of it (Paid $0.001 a call (x402), 15 Oct)
- Leave: Leaves on its own (Nothing to cancel, made nothing to delete)
- Ways in: No key needed, 2 of 10 core tasks; Pay per call, 3 of 10 core tasks
- Next: do half of the core work (now 20%)
- With an account set up by a person: not measured yet.

## Level history

- 1 Oct 2026 (3 drives): L1 · Needs a person
- 6 Oct 2026: L1 · Needs a person
- 13 Oct 2026: L2 · Gets in (new drive)
- 15 Oct 2026: L2 · Gets in

## Part scores

- Holds up: 60/100
- Agent-ready setup: llms.txt found, OpenAPI found, MCP server found, CLI not found
- Not measured in this drive: Docs match

## Who gets in

- Agents on a server: Get in on their own.
- Signed agents: The site opens.
- Agents in a person's browser: Not measured yet.

Sign-up page checked 15 Oct 2026. Signed agents: the ones Cloudflare verifies.

## Ways in

- No key needed: Got in, 2 min
- Pay per call: Got in, under a minute
- A payment opens the account: Not tried: over our payment cap
- Email and code: Stopped by a CAPTCHA
- Stripe Projects: Not tried: no account yet
- Sign-in for apps (OAuth, MCP): Stopped by a CAPTCHA
- Added by an admin: Not tried: needs a person's account
- A key from a person: Not tried: needs a person's account

## The docs

196 of 209 pages read. Complete.

- A getting-started page
- An auth page
- Errors listed with their codes
- Code examples on most pages
- Newest page updated 15 Oct 2026
- A page for 10 of 10 core tasks

## Tried as documented

2 of 15 documented ways to do the core work worked when tried.

- 13 not tried (a paid plan, or no way to reach it)

## Checkpoints

- **Docs**: Headless: llms.txt, docs/llms.txt, markdown docs (.md and Accept: text/markdown), OpenAPI 3.1.0 and a Team Management OpenAPI all fetched headless.
- **Sign up**: Not needed: Not needed: our agent paid per call without an account (x402).
- **Verify**: Not needed: Not needed: our agent paid per call without an account (x402).
- **Key**: Not needed: Not needed: our agent paid per call without an account (x402).
- **First call**: Headless: Documented keyless hosted MCP (mcp.exa.ai/mcp): web_search_exa and web_fetch_exa answered without any account or key.
- **First action**: Not needed: No key needed: done.
- **Pay**: Headless: We paid one x402 v2 call each for /search, deep /search and /contents on Exa's own api.exa.ai (Base, settled, 2xx; pay_tx.json). /answer, agent runs, websets and monitors have no per-call rail (401 without a key), so the rail is partial. The dashboard billing page could not be reached (no account, Vercel checkpoint).
- **Cancel**: Not needed: Nothing to cancel: our agent used it pay-per-call.
- **Delete**: Not needed: No Exa account was made. Keyless searches store nothing for the caller. One unused public OAuth client from dynamic registration stays at auth.exa.ai; there is no documented way to delete it.

## Does Exa (exa.ai) have an MCP server, and can an agent connect to it?

Yes. Exa has an official MCP server.

A new agent can get in on its own: in the drive of 15 Oct 2026, our agent got working access without signing up. Through the MCP server, 9 of our agent's 14 attempts worked.

## How does an AI agent get an Exa (exa.ai) API key?

In the drive of 15 Oct 2026, our agent needed no key. Not needed: our agent paid per call without an account (x402).

## Paying the agent way

Pays per call for part of it: paid $0.001 a call (x402), 15 Oct.
Paid on its own: $0.001 in USDC through x402 on Base, 15 Oct 2026. Transaction https://basescan.org/tx/0x58e56c54a9a5ef49ac7047a84a932005f026bd5942cd0f052324ffd734c50814.
The checkout: Plan and price: pay per call /search; No CAPTCHA at checkout; Offers x402 payment.
Ways to pay it offers an agent: Stripe Projects (on its own domain); x402 (on its own domain · Base, Solana, World Chain, Arc); MPP (on its own domain · Tempo).
It has a free plan.

What would let agents pay on their own:
- Sell the plan or credits over the rail, not only side endpoints: Let the paid call buy what the product sells, so the rail covers the whole product.
Ways to pay checked 15 Oct 2026.

## What an agent can do

- Search the web through the hosted MCP server with no account or key
- Read a web page as markdown through the hosted MCP server with no account or key
- Pay per call with x402 v2 or MPP for /search and /contents without an account (done by us)

## What it cannot do

- Create an Exa account and get an API key: Visible Cloudflare Turnstile on the auth.exa.ai sign-up form and a Vercel Security Checkpoint block on dashboard.exa.ai
- Answer, agent runs, websets, monitors, batches, webhooks: All need an API key or OAuth login, which needs an account; no per-call payment is offered for them
- Keep using keyless MCP at volume: The free MCP rate limit triggered after about 7 quick searches, with no Retry-After

## Tips for the owner

1. Let signed agents through the sign-up check
2. Offer a headless account and key route
3. Sell more endpoints over x402 and MPP
4. Signal rate limits with 429 and Retry-After
5. Support MCP (the 28 Jul 2026 spec) server/discover

Is this your product? Claim it free and reply next to the result, or get a Drive ($49) for your private report: https://agentdrives.com/pricing?via=md#drive. Fixed something? Order a Drive ($49) any time, or the Monthly drive ($29/month).

## Also in Search APIs

- [Parallel](https://agentdrives.com/tools/parallel.md?via=md): L5 · Autonomous · [Exa vs Parallel](https://agentdrives.com/compare/exa-vs-parallel?via=md)
- [Tavily](https://agentdrives.com/tools/tavily.md?via=md): L3 · Does the work · [Exa vs Tavily](https://agentdrives.com/compare/exa-vs-tavily?via=md)
- [Brave Search API](https://agentdrives.com/tools/brave.md?via=md): L1 · Needs a person · [Exa vs Brave Search API](https://agentdrives.com/compare/brave-vs-exa?via=md)
- [Perplexity API](https://agentdrives.com/tools/perplexity.md?via=md): L1 · Needs a person · [Exa vs Perplexity API](https://agentdrives.com/compare/exa-vs-perplexity?via=md)
- [SerpApi](https://agentdrives.com/tools/serpapi.md?via=md): L1 · Needs a person · [Exa vs SerpApi](https://agentdrives.com/compare/exa-vs-serpapi?via=md)

## Tips for agent builders

- Without an account, use the hosted MCP at https://mcp.exa.ai/mcp: web_search_exa, web_fetch_exa and (with ?tools=) web_search_advanced_exa need no key
- The keyless limit trips after a handful of quick calls; the tool result carries _meta ai.exa/rateLimited:true and the limit clears within about a minute
- With a wallet, /search and /contents take x402 v2 (Base and others) or MPP on Tempo with no account
- Requesting agent_run without auth makes the whole MCP connection answer 401: leave it out of ?tools= when keyless
- Docs pages come as markdown with .md or Accept: text/markdown
