Context CLI lints URLs for LLM readiness, checking robots.txt, llms.txt, Schema.org structured data, and content density. By default it discovers and lints multiple pages across the site. It can also generate llms.txt and schema.jsonld files using LLM analysis.
Server exposes 12 tools with complete input schemas and descriptions. However, descriptions are inconsistent in depth and actionability. Most tools lack output schema documentation, error handling guidance, and parameter constraints (enums, ranges). Tool naming follows verb_noun convention but some names are generic ('audit', 'generate'). No tool annotations (readOnlyHint, destructiveHint, idempotentHint) present. Composition is reasonable, tools are single-purpose, but several tools accept free-form strings where enums would prevent hallucination (e.g., 'profile' in generate accepts 'generic, cpg, saas, ecommerce, blog' but is not declared as enum). Output schemas are not documented in tool definitions, forcing LLMs to guess response structure.
Audit a URL for AI agent readiness. Checks for AGENTS.md, Accept: text/markdown support, MCP endpoints, semantic HTML quality, x402 payment signaling, and NLWeb support. Returns per-check scores and an overall agent readiness score (0-20). Args: url: URL to audit for agent readiness.
Lint a URL for LLM readiness. By default discovers and lints up to max_pages pages across the site. Set single_page=True to lint only the given URL.
Run a Share-of-Recommendation benchmark across AI models. Args: prompts: List of search prompts to benchmark. brand: Target brand to track. competitors: Competitor brand names. models: LLM models to query (defaults to gpt-4o-mini). runs_per_model: Number of runs per model per prompt (default 3).
Compare two URLs side-by-side for LLM readiness. Audits both URLs concurrently and returns a comparison report with per-pillar score deltas.
Convert a URL's HTML content to clean, agent-friendly markdown. Fetches the URL, strips boilerplate (nav, footer, ads, scripts), extracts main content, and converts to markdown. Returns the markdown text and conversion statistics. Args: url: URL to fetch and convert to markdown.
Output schemas not documented. Tools return dict[str, Any] with no schema specification. LLMs cannot plan downstream calls or extract required fields reliably.
Enum constraints missing. 'profile' parameter accepts free-form string with valid values documented only in description text ('generic, cpg, saas, ecommerce, blog'). Should be declared as enum to prevent hallucinated values.
Tool naming inconsistency. 'generate_batch_tool', 'benchmark_tool', 'retail_audit_tool', 'agent_readiness_audit', 'generate_agents_md_tool' use '_tool' suffix or inconsistent verb placement. Should follow verb_noun convention: 'batch_generate', 'run_benchmark', 'audit_retail', 'audit_agent_readiness', 'generate_agents_md'.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
Generate llms.txt and schema.jsonld for a URL using LLM analysis. Args: url: URL to generate assets for. profile: Industry profile (generic, cpg, saas, ecommerce, blog). model: LLM model to use (auto-detected from env if not set). output_dir: Directory to write generated files.
Generate an AGENTS.md file for a website. Crawls the URL to understand site structure and produces an AGENTS.md file following the emerging standard for AI agent discovery. Returns the generated AGENTS.md content. Args: url: URL of the website to generate AGENTS.md for.
Batch generate llms.txt and schema.jsonld for multiple URLs. Args: urls: List of URLs to generate assets for. profile: Industry profile (generic, cpg, saas, ecommerce, blog). model: LLM model to use (auto-detected from env if not set). output_dir: Directory to write generated files. concurrency: Max concurrent generations (default 3).
Retrieve audit history for a URL from the local SQLite database. Returns recent audit entries (newest first), each with timestamp and per-pillar scores.
Query AI models and analyze what they cite for a given prompt. Args: prompt: Search query to send to AI models. models: LLM models to query (defaults to gpt-4o-mini). brands: Brand names to track in responses. runs_per_model: Number of runs per model for statistical significance.
Lint a URL and return actionable recommendations to improve Readiness Score. Runs a single-page audit, then analyzes the results to suggest specific improvements sorted by estimated impact.
Audit a product URL for retail AI-readiness. Analyzes product listings on marketplaces (Amazon, Shopee, Lazada, etc.) for schema.org markup, content quality, visual assets, social proof, and feed compliance.
No error handling guidance. Tools do not document what errors can occur, whether they are retryable, or what the LLM should do next. E.g., 'audit' may fail on network errors, invalid URLs, or timeouts, none documented.
No tool annotations. Tools lack readOnlyHint, destructiveHint, or idempotentHint. 'generate' and 'generate_agents_md_tool' are destructive (write files) but not marked. Audit tools are read-only but not annotated.