Skip to main content
Glama

Check Agent Readiness

check_agent_readiness
Read-onlyIdempotent

Fast synchronous AEO / agent-readiness read of a single URL: robots and bot access, structured data (schema), and content structure. Returns immediate signals without running a full audit. Use this to triage a page or sanity-check before deciding whether the heavier run_audit is worth a credit.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "url": "<url>"
    },
    "name": "check_agent_readiness"
  }
}

Input Schema

NameRequiredDescriptionDefault
urlYesAbsolute URL to audit.

Output Schema

NameRequiredDescriptionDefault
urlYesThe validated URL that was checked.
cachedNoWhether this estimate was served from cache.
find_lowNoTrue when FIND discovery signals are weak (≤25).
categoriesNoPer-category static check items ({id,label,passed}); page-controlled value/tip fields are stripped.
is_estimateYesAlways true — this is a heuristic estimate, not a full LLM-scored audit.
aeo_estimateYes
suggested_next_callsNoAdvisory next-tool-call pointers (suggested_next_calls). Score-neutral agent UX.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "properties": {
      +    "aeo_estimate": {
      +      "additionalProperties": true,
      +      "properties": {
      +        "find": {
      +          "description": "FIND estimate 0–100.",
      +          "type": [
      +            "number",
      +            "null"
      +          ]
      +        },
      +        "method": {
      +          "description": "Heuristic method label (e.g. 'quick-heuristic').",
      +          "type": "string"
      +        },
      +        "overall": {
      +          "description": "Overall AEO estimate 0–100.",
      +          "type": [
      +            "number",
      +            "null"
      +          ]
      +        },
      +        "read": {
      +          "description": "READ estimate 0–100.",
      +          "type": [
      +            "number",
      +            "null"
      +          ]
      +        },
      +        "use": {
      +          "description": "USE estimate 0–100 (presence-only).",
      +          "type": [
      +            "number",
      +            "null"
      +          ]
      +        },
      +        "use_limited": {
      +          "description": "Always true — USE is presence-only in the quick check.",
      +          "type": "boolean"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "cached": {
      +      "description": "Whether this estimate was served from cache.",
      +      "type": "boolean"
      +    },
      +    "categories": {
      +      "description": "Per-category static check items ({id,label,passed}); page-controlled value/tip fields are stripped.",
      +      "type": [
      +        "object",
      +        "null"
      +      ]
      +    },
      +    "find_low": {
      +      "description": "True when FIND discovery signals are weak (≤25).",
      +      "type": "boolean"
      +    },
      +    "is_estimate": {
      +      "description": "Always true — this is a heuristic estimate, not a full LLM-scored audit.",
      +      "type": "boolean"
      +    },
      +    "suggested_next_calls": {
      +      "description": "Advisory next-tool-call pointers (suggested_next_calls). Score-neutral agent UX.",
      +      "items": {
      +        "additionalProperties": true,
      +        "properties": {
      +          "args": {
      +            "description": "Suggested arguments for that call.",
      +            "type": "object"
      +          },
      +          "reason": {
      +            "description": "Why this is the natural next step.",
      +            "type": "string"
      +          },
      +          "tool": {
      +            "description": "The tool to call next.",
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "url": {
      +      "description": "The validated URL that was checked.",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "url",
      +    "is_estimate",
      +    "aeo_estimate"
      +  ],
      +  "type": "object"
      +}
  2. First observed

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, idempotentHint. The description adds behavioral context: 'Fast synchronous' implies quick execution, 'without running a full audit' confirms non-destructive read, and 'Returns immediate signals' sets expectations. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences: first defines core function, second contrasts with run_audit, third gives usage advice. Every sentence adds value. Front-loaded with main purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple tool (one param, good annotations, output schema exists), the description sufficiently covers purpose, usage, and behavioral constraints. No missing information for an agent to decide or invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with the 'url' parameter described as 'Absolute URL to audit.' The description reaffirms 'single URL' but does not add new semantics beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states it performs a fast synchronous read of a single URL for AEO readiness, listing components (robots, bot access, structured data, content). It distinguishes from run_audit by noting it's a lightweight check, and from sibling tools by specifying single URL scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Clear guidance: 'Use this to triage a page or sanity-check before deciding whether the heavier run_audit is worth a credit.' This advises when to use it and when to consider the alternative (run_audit).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.