ora
LeaderboardJourneyDirectoryMCPNewResearch
ora mcp·for coding agents

Agents keep bouncing off your site

Connect the free, public MCP server. Your coding agent scans, fixes, and rescans until agents can actually use and recommend you.
Read the docs →
01the problem

Your site works fine. For people.

Agents read the raw response: no JavaScript, no rendered page. When it comes back blocked or empty, they guess, get things wrong, or leave.
What a person seesyour-site.com

San Francisco to Miami

Sat Aug 8, 1 adult
  • 08:40 - 17:15Non-stop, 5h 35m$214
  • 11:20 - 20:05Non-stop, 5h 45m$268
  • 14:05 - 00:401 stop, 7h 35m$189
Select flight
What an agent getsyour-site.com
$ curl -A "ClaudeBot" https://your-site.com
HTTP/2 403text/html
# San Francisco to Miami
Sat Aug 8, 3 flights, from $189

- 08:40-17:15  non-stop  $214  /book/sfo-mia/0840
- 11:20-20:05  non-stop  $268  /book/sfo-mia/1120
- 14:05-00:40  1 stop    $189  /book/sfo-mia/1405

Book: POST /api/bookings, schema at /openapi.json
Tools: /mcp   Index: /llms.txt
<!doctype html>
<html>
  <head><title>React App</title></head>
  <body>
    <div id="root"></div>
  </body>
</html>
# San Francisco to Miami
Sat Aug 8, 3 flights, from $189

- 08:40-17:15  non-stop  $214  /book/sfo-mia/0840
- 11:20-20:05  non-stop  $268  /book/sfo-mia/1120
- 14:05-00:40  1 stop    $189  /book/sfo-mia/1405

Book: POST /api/bookings, schema at /openapi.json
Tools: /mcp   Index: /llms.txt
Nothing to read. Nothing to act on.
What a person seesyour-site.com

San Francisco to Miami

Sat Aug 8, 1 adult
  • 08:40 - 17:15Non-stop, 5h 35m$214
  • 11:20 - 20:05Non-stop, 5h 45m$268
  • 14:05 - 00:401 stop, 7h 35m$189
Select flight
What an agent getsas it is now
$ curl -A ClaudeBot your-site.com
HTTP/2 403text/html
# San Francisco to Miami
Sat Aug 8, 3 flights, from $189

- 08:40  $214  /book/sfo-mia/0840
- 11:20  $268  /book/sfo-mia/1120
- 14:05  $189  /book/sfo-mia/1405

Book: POST /api/bookings
Schema: /openapi.json
Tools: /mcp   Index: /llms.txt
<!doctype html>
<html>
  <head>
    <title>React App</title>
  </head>
  <body>
    <div id="root"></div>
  </body>
</html>
# San Francisco to Miami
Sat Aug 8, 3 flights, from $189

- 08:40  $214  /book/sfo-mia/0840
- 11:20  $268  /book/sfo-mia/1120
- 14:05  $189  /book/sfo-mia/1405

Book: POST /api/bookings
Schema: /openapi.json
Tools: /mcp   Index: /llms.txt
Nothing to read. Nothing to act on.
What an agent getswith ora connected
$ curl -A ClaudeBot your-site.com
HTTP/2 200text/markdown
# San Francisco to Miami
Sat Aug 8, 3 flights, from $189

- 08:40  $214  /book/sfo-mia/0840
- 11:20  $268  /book/sfo-mia/1120
- 14:05  $189  /book/sfo-mia/1405

Book: POST /api/bookings
Schema: /openapi.json
Tools: /mcp   Index: /llms.txt
<!doctype html>
<html>
  <head>
    <title>React App</title>
  </head>
  <body>
    <div id="root"></div>
  </body>
</html>
# San Francisco to Miami
Sat Aug 8, 3 flights, from $189

- 08:40  $214  /book/sfo-mia/0840
- 11:20  $268  /book/sfo-mia/1120
- 14:05  $189  /book/sfo-mia/1405

Book: POST /api/bookings
Schema: /openapi.json
Tools: /mcp   Index: /llms.txt
Readable, and it can book a flight.
as it is now
with ora connected
02connect it

Connect in one step, no auth

Your agent gets the live score and every failing check with a fix recommendation. No account or key.
Paste this skill to your agent: https://ora.ai/skill.md Or add the MCP server:
terminal
claude mcp add --transport http ora https://ora.ai/api/mcp
scan_domain
Fresh scan. Score, grade, and a fix recommendation per failing check.
get_score
The cached score, no new scan.
get_skill
The agent-ready-website skill: step-by-step fixes, refetched each run so it matches the current checks.
All tools, params, and schemas →
03go local

Scan localhost through a tunnel

Ora fetches your site from outside, the way an agent would, so it can only reach public URLs. A tunnel gives your dev server one.
terminal
cloudflared tunnel --url http://localhost:3000
# -> https://random-words.trycloudflare.com
  1. your machine

    localhost:3000

    The code in your editor, uncommitted.
  2. tunnel

    public URL

    Lives as long as the process.
  3. ora

    POST /api/scan

    Fetches it the way an agent would.
the score comes back, your agent edits, and again
the score comes back, your agent edits, and again
04the whole job

Agents come to get something done

Finding and reading you is the first step. An agent that means to finish a task also authenticates, calls your product, and pays. The score covers all four layers.
Discovery
Can agents find and recommend you?citations · registries · brand presence
Accessibility
Can agents access your data and understand you?llms.txt · json-ld · markdown
Usability
Can agents use you?oauth · mcp tools · openapi
Payments
Can agents pay you?x402 · ap2 · acp
ora score
0 / 100
Every check and weight, layer by layer →
05a moving target

Agent-readiness is a moving target

What agent-ready means keeps changing: new protocols ship, agents change where they look, and the checks move with them. Ora's MCP keeps the requirements current as the target moves.
Jan 2025 · you saved agent-readiness.mdSep 2024 · llms.txtNov 2024 · MCPMay 2025 · x402 paymentsAug 2025 · agents.mdSep 2025 · AP2 checkout2026 · agents expect /docstoday’s checksyour copy4 changes behind
Sep 2024
llms.txt
Nov 2024
MCP
May 2025
x402 payments
Aug 2025
agents.md
Sep 2025
AP2 checkout
2026
agents expect /docs
your copy
Jan 2025 · 4 changes behind
06faq

Quick answers

What does it cost?
Nothing. No API key, no signup, no card. Scans and score reads are free.
What are the rate limits?
10 scans a minute per IP, and the same for score reads. The loop runs one scan per pass, so it does not get close.
What can ora see?
Public URLs only, fetched from outside the way an agent would. Code and anything behind a login are out of reach. A tunnel is public only while its process runs.
How is the score computed?
Four layers - discovery, accessibility, usability, payments - normalized to 100. Checks that do not apply to your product are dropped from the denominator. Every check is public.The full methodology →
Why did my score change when I deployed nothing?
The checks moved. New protocols get added and weights shift as agent behavior changes. Rescanning scores you against the current set.
Where do the checks come from?
We run real agents against live sites and measure what helps them finish the job. Checks earn their place by predicting success, and the data behind the score is public.The research →Watch an agent run →
Read the docs →Every tool, parameter, and schema.Get the skill →The whole loop in one file: tunnel, scan, fix playbook, rescan.Talk to us →A wrong check, a missing protocol, or a question.
© 2026 era labs. All rights reserved.
AboutBlogDocsMethodologyPrivacyContact