# Single wildcard group. Crawlers obey only the most specific matching # group, so every wildcard rule must live here — a second "User-agent: *" # block later in the file is ignored by most crawlers. User-agent: * # Raw API/MCP endpoints are machine surfaces, not pages: keep them out of # the search index. Disallow lines come FIRST because some parsers are # first-match-wins — a leading "Allow: /" would swallow them. The # human- and agent-readable docs are re-allowed above the wildcard. Allow: /docs/mcp/ Allow: /api-docs/ Allow: /agents/ Allow: /llms.txt Disallow: /api/ Disallow: /mcp/ Allow: / Sitemap: https://forcedalpha.com/sitemap.xml # AI search bots (these power ChatGPT search, Claude web, Google AI # Overviews). A named group replaces the wildcard group entirely, so each # one restates its own rules. Agent discovery depends on these reaching # the docs pages above. User-agent: GPTBot Disallow: /api/ Disallow: /mcp/ Allow: / User-agent: OAI-SearchBot Disallow: /api/ Disallow: /mcp/ Allow: / User-agent: ChatGPT-User Disallow: /api/ Disallow: /mcp/ Allow: / User-agent: ClaudeBot Disallow: /api/ Disallow: /mcp/ Allow: / User-agent: Claude-SearchBot Disallow: /api/ Disallow: /mcp/ Allow: / User-agent: Claude-User Disallow: /api/ Disallow: /mcp/ Allow: / User-agent: PerplexityBot Disallow: /api/ Disallow: /mcp/ Allow: / User-agent: Google-Extended Disallow: /api/ Disallow: /mcp/ Allow: / User-agent: Amazonbot Disallow: /api/ Disallow: /mcp/ Allow: / User-agent: Applebot-Extended Disallow: /api/ Disallow: /mcp/ Allow: / # Bulk training crawlers: blocked. User-agent: CCBot Disallow: / User-agent: Bytespider Disallow: /