Send Fix Prompt to your Coding Agent
Forward this standardized prompt to your AI coding agents (Claude 3.7, Codex, Cursor, OpenClaw) to automatically implement the required GEO fixes for consensus.app.
You are an AI coding agent tasked with improving consensus.app's Generative Engine Optimization (GEO) readiness. This is a Next.js application (App Router, data-next-head meta tags) fronted by Cloudflare, with a WordPress marketing/blog surface. Implement the following changes:
1. **Fix robots.txt** (served at https://consensus.app/robots.txt): currently has `User-agent: *` with `Disallow: /blog/` followed by `User-agent: OAI-SearchBot`, `User-agent: ChatGPT-User`, `User-agent: PerplexityBot`, `User-agent: Perplexity-User` each with `Allow: /`. The blog disallow still applies to the AI bots via the wildcard group, blocking all blog content from AI crawlers. Add an explicit `Allow: /blog/` line to each AI bot user-agent group (order matters in robots.txt — later groups are more specific), and add a `User-agent: GPTBot` + `User-agent: ClaudeBot` group with `Allow: /` to cover other major AI crawlers.
2. **Fix homepage canonical**: in the homepage layout metadata, change the canonical from `https://consensus.app/search/` to `https://consensus.app/` so the entity URL resolves to the root.
3. **Add WebSite schema with SearchAction** to the existing JSON-LD @graph in the homepage (currently WebApplication + Organization): add `{"@type": "WebSite", "@id": "https://consensus.app/#website", "url": "https://consensus.app/", "name": "Consensus", "publisher": {"@id": "https://consensus.app/#organization"}, "potentialAction": {"@type": "SearchAction", "target": "https://consensus.app/results/?q={search_term_string}", "query-input": "required name=search_term_string"}}`.
4. **Add FAQPage schema** to the homepage @graph with 3-4 questions LLMs answer from the site: 'What is Consensus?', 'How does the Consensus Meter work?', 'Is Consensus free to use?', 'How many papers does Consensus index?' — each with concise answers from the existing homepage/llms.txt copy.
5. **Serve machine-readable files without bot challenge**: ensure https://consensus.app/agents.md and https://consensus.app/.well-known/mcp/server-card.json are served as static plain-text/JSON (bypass Cloudflare managed challenge for these paths via WAF rule / cache rule, or serve from the CDN edge with `cf-cache-status: HIT` for anonymous GET).
6. **Add author bylines to blog/medical content**: add visible author name + credentials + date to all blog posts and clinical-content pages.
7. **Standardize paper-count claims**: pick one number (e.g. '220M+ papers' from the schema featureList) and use it consistently across homepage copy, llms.txt, llms-full.txt, and JSON-LD.
Keep changes within the Next.js App Router structure (app/layout.tsx, app/page.tsx, public/robots.txt) and WordPress theme for the blog. Validate JSON-LD with Google Rich Results Test after deployment.