Skip to content

docs: surface llms.txt and the docs MCP server as AI entry points - #2237

Merged
GigaHierz merged 3 commits into
mainfrom
GigaHierz/ai-tools-docs-page
Aug 12, 2026
Merged

docs: surface llms.txt and the docs MCP server as AI entry points#2237
GigaHierz merged 3 commits into
mainfrom
GigaHierz/ai-tools-docs-page

Conversation

@GigaHierz

Copy link
Copy Markdown
Contributor

Makes docs.celo.org usable from AI tooling. The site already exposes an MCP server, llms.txt, llms-full.txt, and per-page Markdown — none of it was documented anywhere a developer would find it. Everything here works on the current Mintlify plan; no upgrade involved.

New page

Use Celo Docs with AI Tools — top of Build on Celo → Build with AI, plus a "Docs for AI" global anchor so it's one click from anywhere in the docs.

  • MCP setup per client — Claude Code, Claude Desktop/claude.ai, Cursor, VS Code, Codex, ChatGPT — each with a worked example query. The config shapes are published separately because they are genuinely not interchangeable: Claude Code requires "type": "http" (omitting it is a hard error), Cursor's docs use url alone, VS Code uses servers rather than mcpServers.
  • llms.txt vs llms-full.txt — what each is for, and the "append .md to any docs URL" shortcut.
  • Related cards to the Celo MCP Server (chain data) and Celopedia (skill), so the three aren't confused.

ChatGPT leads with the zero-setup paths. Developer-mode MCP is deliberately hedged — OpenAI documents plan availability inconsistently across its own pages — and the page states outright that deep research won't work, since that requires tools named search/fetch which this server doesn't expose.

llms.txt fixes

Removed 8 external-link stub pages (title + url frontmatter only). Mintlify's sitemap excludes these; llms.txt does not. Their .md URLs redirected off-domain and served ~2.28 MB of third-party HTML advertised as Celo documentation — legacy/validator/celo-website.md alone returned 1.19 MB of celo.org marketing.

All eight were redundant with existing pages or global anchors, with zero inbound internal links (verified). Redirects added for each, and /learn/celo-whitepapers retargeted so it doesn't become a 404 chain.

Removed Covered by
tooling/explorers/{blockscout,celoscan} tooling/explorers/block-explorers
tooling/overview/faucet "Faucet" global anchor
tooling/nodes/run-a-celo-node infra-partners/operators/run-node (the stub pointed at a dead path)
contribute-to-celo/code-of-conduct inline link added to Joining Celo
legacy/whitepapers inline link added to the Legacy overview
legacy/validator/{celo-website,discord} "Organization" + "Support" global anchors

Also fixed: two dead /build/build-with-ai/mcp/* links, a "Celo MPC Server" typo, and two redirects targeting pages that don't exist.

Config: added mcp and vscode to contextual.options.

Audit results

The audit premise turned out to be wrong in a useful way — nav coverage was already perfect: 271/271 pages present, zero stale entries, zero _deprecated/ leakage, all 271 URLs returning 200. The real defects were different:

Defect Status
8 stub pages leaking 2.28 MB of third-party HTML Fixed here
## OpenAPI Specs section links a hard 404 Not fixable from this repo — no api/openapi key in docs.json, no api-reference/ dir, zero occurrences of openapi in the tree. Emitted from stale server-side state; needs a Mintlify support ticket
97% of entries have no description Follow-up PR — Mintlify's generator reads only description: and ignores og:description:. Policy agreed: non-legacy → description:, legacy/** keeps og:description: so legacy L1 docs aren't surfaced to LLMs

Two smaller finds also deferred: a duplicate nav entry (legacy/protocol/identity/odis-use-case-phone-number-privacy, listed twice) and four ambiguous title collisions.

Verification

  • npx mintlify broken-linkspasses (run after every edit)
  • mint dev — page returns 200, all six tabs render, no MDX errors; sidebar entry and global anchor render on unrelated pages; deleted paths return 307
  • Nav integrity: 264 unique pages (271 − 8 + 1), no entries without a file on disk, no remaining url: frontmatter pages in nav
  • MCP endpoint confirmed live: serverInfo: {"name":"Celo Docs","version":"1.0.0"}, tools search_celo_docs / query_docs_filesystem_celo_docs / submit_feedback

One thing that can't be verified before deploy: mint dev doesn't generate .md endpoints, llms.txt, or /mcp — those come from the hosting layer. So "Copy page as Markdown" and "Open in Claude" appear broken in local preview (they fetch a .md URL that 404s locally). Confirmed working in production on existing pages: docs.celo.org/home/protocol.md → 200 text/markdown. Worth re-checking on the preview deploy.

Reviewer checklist

  • MCP endpoint verified working in Claude Codeclaude mcp add --transport http celo-docs https://docs.celo.org/mcp
  • MCP endpoint verified working in Cursor
  • "Copy page as Markdown" verified on the preview deploy

Try the page's own example — "Using the Celo docs MCP server, which adapter address do I pass as feeCurrency to pay gas in USDC on Celo mainnet?" The answer is 0x2F25deB3848C207fc8E0c34035B3Ba7fC157602B, so a wrong one is obvious.

Out of scope

In-page chat widget, any Mintlify plan upgrade, Discord/Telegram bots. Announcement (Discord + newsletter) to follow once this is live.

🤖 Generated with Claude Code

Surface the AI entry points the docs site already exposes but never
documented: the Mintlify-hosted MCP server at https://docs.celo.org/mcp,
the auto-generated /llms.txt and /llms-full.txt, and per-page Markdown.
All available on the current Mintlify plan — no paid dependency.

New page (Build on Celo > Build with AI, plus a "Docs for AI" global
anchor so it is one click from anywhere):

- MCP setup for Claude Code, Claude Desktop/claude.ai, Cursor, VS Code,
  Codex and ChatGPT, with a worked example query per tool. Config shapes
  are published separately per client because they are not
  interchangeable: Claude Code requires "type": "http", Cursor uses "url"
  alone, VS Code uses "servers" rather than "mcpServers".
- llms.txt vs llms-full.txt, and the "append .md to any URL" shortcut.
- Cards to the Celo MCP Server and Celopedia so the three are not
  confused.

ChatGPT leads with the zero-setup paths. Developer-mode MCP is hedged
because OpenAI's plan availability is documented inconsistently, and the
page states that deep research will not work — that path requires tools
named search/fetch, which this server does not expose.

llms.txt fixes:

- Remove eight external-link stub pages (title + url frontmatter only).
  Mintlify's sitemap excludes them but llms.txt does not, so their .md
  URLs redirected off-domain and served ~2.28 MB of third-party HTML as
  Celo documentation. All eight were redundant with existing pages or
  global anchors and had no inbound internal links. Redirects added, and
  /learn/celo-whitepapers retargeted so it does not become a 404 chain.
- Fix two dead /build/build-with-ai/mcp/* links, a "Celo MPC Server"
  typo, and two redirects pointing at pages that do not exist.

Add "mcp" and "vscode" to contextual.options.

The remaining llms.txt defects are tracked separately: a stale OpenAPI
spec registration emitting a 404 (server-side, needs Mintlify support),
and the description frontmatter migration.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@GigaHierz
GigaHierz requested review from a team as code owners August 11, 2026 15:32
@GigaHierz
GigaHierz requested review from palango and piersy and removed request for a team August 11, 2026 15:32
GigaHierz and others added 2 commits August 12, 2026 12:33
Preserves the removed stub page's original behaviour and matches the two
existing faucet redirects, which also point at faucet.celo.org directly.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The whitepapers, code of conduct, Celo website and Discord stubs had no
docs-side equivalent, so redirecting them to a nearby index page dropped
readers somewhere only loosely related. Send them where the stubs did.

The two explorer redirects still resolve to tooling/explorers/block-explorers,
which documents both Blockscout and Celoscan and is more useful than the
explorer homepages.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@GigaHierz

Copy link
Copy Markdown
Contributor Author

Follow-ups from the llms.txt audit are now filed:

None block this PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants