🆕 geo_audit — GET /v1/geo/{domain} (MCP tool #55)
Deterministic GEO / AI-visibility readiness score (0–100) — "can AI assistants (ChatGPT, Claude, Perplexity, Google AI) discover, crawl, and recommend this site?" using structural signals only — no LLM is queried. 7 weighted rules: llms.txt (15), AI-crawler robots.txt access (25), schema.org @type coverage (20), SSR vs client-only SPA (15), OG/canonical/sitemap (10), semantic headings (10), comparison content (5). Same ethical floor as seo_audit: robots.txt honoured (Disallow: / → 403), per-target throttle, SSRF-guarded homepage + robots + llms.txt fetch.
🔤 Terminology: "credit" → "token"
Rate-limit vocabulary unified. Wire-facing: /v1/capabilities now emits token_cost (was credit_cost); response shapes otherwise unchanged.
💲 Pricing correction
seo_audit / brand_assets documented cost aligned 2 → 1 to match the actual gate charge (both always charged 1; docs said 2).
📚 Docs
Consolidated ENDPOINTS.md / PROMPTS.md / RATE_LIMITS.md / resources.md / tool-selection-guide.md → API_Documentation.md + MCP_Documentation.md; fixed broken TOC anchors.
📊 Counts
MCP tools 54 → 55 · Resources 7 · Prompts 3 · Tests 2636 → 2637 passing · pip-audit clean · ruff clean