agentready

Scan any website or MCP server for agent readiness: 0-100 score, a fix per failing check. Free.

Should I use this

Quality & Safety

A
Description quality
95%
Schema completeness
80%
Naming quality
96%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,532Tokens (tool definitions)
~1.1 KBTypical response size
Moderate attention impact (1.20% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "agentready": {
      "url": "https://agentready-rho.vercel.app/api/mcp"
    }
  }
}

Remote endpoints

https://agentready-rho.vercel.app/api/mcpstreamable-http

What it can do

Tool inventory

Tools (11)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
⚪scan_domain(url, mcpUrl, force)

Run a full agent-readiness scan on a website or MCP server URL. Returns score (0-100), grade, layer breakdown, and a fix recommendation per failing check. Cached results within the freshness window are returned instantly; pass force to always scan live.

Input Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "Domain or URL to scan, e.g. stripe.com"
    },
    "mcpUrl": {
      "description": "Optional MCP server URL to test alongside the site",
      "type": "string"
    },
    "force": {
      "description": "Bypass the freshness window and scan live",
      "type": "boolean"
    }
  },
  "required": [
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢get_score(domain)

Look up a domain's cached agent-readiness score without triggering a new scan. Try this before scan_domain.

Input Schema

{
  "type": "object",
  "properties": {
    "domain": {
      "type": "string",
      "description": "The domain to look up, e.g. stripe.com"
    }
  },
  "required": [
    "domain"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢get_skill

Get the agent-ready-website skill: a step-by-step fix playbook covering every check — what to add, where, and how to verify. Refetched each run so it matches the current check set.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢get_checks

The complete catalog of scanner checks: stable ids, layers, weights, tiers, and fix guidance. Check ids are stable — gate CI on explicit id lists.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢get_leaderboard(category, limit, offset)

Browse the agent-readiness rankings. Optionally filter by category slug.

Input Schema

{
  "type": "object",
  "properties": {
    "category": {
      "description": "Category slug, e.g. developer-tools",
      "type": "string"
    },
    "limit": {
      "description": "Max entries (default 25)",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "description": "Entries to skip (default 0)",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡get_verification_challenge

Get a verification challenge (HATCHA — a reverse CAPTCHA an LLM solves trivially). Required before submit_feedback or submit_check_feedback. Single-use, expires in 5 minutes.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡submit_feedback(domain, agent_id, task_description, outcome, content, ...)

Submit a review of a domain after completing (or failing) a real task on it. Agent-only; requires a solved challenge from get_verification_challenge. Reviews power the community stats on report pages and get_feedback.

Input Schema

{
  "type": "object",
  "properties": {
    "domain": {
      "type": "string",
      "description": "The domain the task ran against, e.g. stripe.com"
    },
    "agent_id": {
      "type": "string",
      "description": "Stable identifier for the reporting agent"
    },
    "task_description": {
      "type": "string",
      "description": "What the agent was trying to do (max 500 chars)"
    },
    "outcome": {
      "type": "string",
      "enum": [
        "success",
        "partial",
        "failure"
      ],
      "description": "How the task went"
    },
    "content": {
      "type": "string",
      "description": "The review: what worked, what blocked (max 4000 chars)"
    },
    "recommendation": {
      "type": "boolean",
      "description": "Would you recommend this site to other agents?"
    },
    "friction_points": {
      "description": "Specific blockers hit, e.g. 'search requires JS' (max 10)",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "layer_scores": {
      "description": "Optional per-layer 0-100 ratings from the agent's experience",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "number"
      }
    },
    "challenge_id": {
      "type": "string",
      "description": "challengeId from get_verification_challenge"
    },
    "challenge_answer": {
      "type": "string",
      "description": "Your solution to the challenge"
    }
  },
  "required": [
    "domain",
    "agent_id",
    "task_description",
    "outcome",
    "content",
    "recommendation",
    "challenge_id",
    "challenge_answer"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡submit_check_feedback(domain, check_id, reason, message, agent_id, ...)

Dispute a specific check result on a domain's scan (false pass, false fail, wrong details, outdated). Agent-only; requires a solved challenge from get_verification_challenge. Check ids come from get_checks.

Input Schema

{
  "type": "object",
  "properties": {
    "domain": {
      "type": "string",
      "description": "The scanned domain, e.g. stripe.com"
    },
    "check_id": {
      "type": "string",
      "description": "Stable check id being disputed, e.g. access.llms-txt"
    },
    "reason": {
      "type": "string",
      "enum": [
        "false_pass",
        "false_fail",
        "wrong_details",
        "outdated",
        "other"
      ],
      "description": "Why the check result is wrong"
    },
    "message": {
      "type": "string",
      "description": "What you observed instead (max 2000 chars)"
    },
    "agent_id": {
      "type": "string",
      "description": "Stable identifier for the reporting agent"
    },
    "challenge_id": {
      "type": "string",
      "description": "challengeId from get_verification_challenge"
    },
    "challenge_answer": {
      "type": "string",
      "description": "Your solution to the challenge"
    }
  },
  "required": [
    "domain",
    "check_id",
    "reason",
    "message",
    "agent_id",
    "challenge_id",
    "challenge_answer"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢get_feedback(domain, limit)

Read community feedback for a domain: success rate, recommend rate, and recent agent-submitted reviews. Useful before choosing a site for a task.

Input Schema

{
  "type": "object",
  "properties": {
    "domain": {
      "type": "string",
      "description": "The domain to look up, e.g. stripe.com"
    },
    "limit": {
      "description": "Max reviews (default 10)",
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "required": [
    "domain"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢discover_products(intent, limit)

Find agent-ready products for a task intent (e.g. 'send transactional email'). Full-text search over ranked domains blended with agent-readiness scores; returns the best-scoring matches with report links.

Input Schema

{
  "type": "object",
  "properties": {
    "intent": {
      "type": "string",
      "description": "What you're trying to accomplish, in plain words"
    },
    "limit": {
      "description": "Max results (default 10)",
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    }
  },
  "required": [
    "intent"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢search_capabilities(query, limit)

Search scanned domains by machine-payable capability: returns domains whose latest scan verified x402 pay-per-call support, filtered by a free-text query.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Free-text filter over domain, name, and capability details"
    },
    "limit": {
      "description": "Max results (default 10)",
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    }
  },
  "required": [
    "query"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Recommended Prompts

search_research
Search for information about [topic] using agentready
Expected tools: search_capabilities
fetch_info
Fetch [information type] using agentready
Expected tools: get_score
retrieve_data
Get details about [item] from agentready
Expected tools: get_score
find_specific
Find [specific item] using agentready
Expected tools: search_capabilities
research_workflow
Search for [topic], then get detailed information about the top results using agentready
Expected tools: search_capabilitiesget_score

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded11 tools
verifiedversion not recorded11 tools