Skip to content
Blume
Esc
navigateopen⌘Jpreview

Docs agents can read.And help you write.

Every Blume site serves what coding agents look for, from llms.txt and Markdown mirrors to an opt-in MCP server, and ships the agent tooling to test, translate, and update the docs themselves. On your own host, with the model you choose.

Agent session

acme-docs · MCP

Add Acme webhooks to the checkout service.

acme-docs ›search_docs"webhooks"3 results
  • /docs/webhooksWebhooks
  • /docs/webhooks/verifyVerify signatures
  • /docs/webhooks/retriesRetries
acme-docs ›get_page"/docs/webhooks"text/markdown · 1.2k tokens

# Webhooks

Acme signs every event it sends with an acme-signature header.

## Verify the signature

Reject any request whose signature doesn't match…

The Acme docs say to verify each event's signature before trusting it, so the new route checks it first:

app/api/webhooks/route.ts

+export async function POST(request: Request) {+  const body = await request.text();+  const signature = request.headers.get("acme-signature");+  if (!acme.webhooks.verify(body, signature)) {+    return new Response("Invalid signature", { status: 401 });+  }

Everything agents look for.Built into every Blume site, most of it on by default.

Ask AI, in the page.
An assistant grounded in your docs answers readers in the page, streamed from the model you choose — the Vercel AI Gateway, OpenRouter, LLM Gateway, Inkeep, or any OpenAI-compatible endpoint.
Tools, not scraping.
An opt-in MCP server, WebMCP tools in every page, and a JSON API described by OpenAPI let agents search and read your docs directly.
Markdown at every URL.
Every page's raw source at a .md URL, with Accept: text/markdown negotiation on Vercel and Cloudflare.
llms.txt, built in.
An index sectioned like your sidebar, plus the full corpus in llms-full.txt, rebuilt on every build.
Found without guessing.
A manifest, Link headers, API and AI catalogs, and your published skills, so agents find the whole surface in one fetch.
Crawlers, on your terms.
Metadata, JSON-LD, social cards, and a sitemap for search engines, plus content signals that set how AI may use your docs.
Copy or open in chat.
Every page copies as Markdown or opens in ChatGPT, Claude, Cursor, and more, pre-filled to answer questions about it.

Your docs, in every coding agent.One click from any page to a connected server.

Four tools and every page.
search_docs, get_page, list_pages, and get_navigation, with every page also served as a text/markdown resource.
Connected from any page.
Each page's Connect to MCP menu copies the Claude Code or Codex command, or installs the server straight into Cursor or VS Code.
Scoped retrieval.
Agents can narrow search to content types like RFCs or runbooks, and filter by the facets you declare.
One switch to turn on.
Set agents.mcp.enabled and deploy to Vercel, Netlify, Cloudflare, or Node. A server card at /.well-known/mcp/server-card.json describes it.

Ship your skills with your docs.Agents that find your docs find your skills too.

Found at a well-known URL.
Point agents.skills at your skills folder, and the build publishes them at /.well-known/agent-skills/ under the Agent Skills Discovery RFC.
Verified on download.
Every skill in the index carries a SHA-256 digest, and skills with scripts or references ship as archives so their paths still resolve.
Never published broken.
A skill with a missing or invalid name or description is skipped with a build warning instead.
Listed in llms.txt.
Published skills also appear in your llms.txt, next to the docs that explain them.

blume.config.ts

export default defineConfig({
  agents: {
    skills: "./skills",
  },
});

/.well-known/agent-skills/index.json

{
  "skills": [
    {
      "description": "Send email and SMS with the Acme API.",
      "digest": "sha256:9c1e4f…",
      "name": "acme",
      "type": "skill-md",
      "url": "/.well-known/agent-skills/acme/SKILL.md"
    },
    {
      "description": "Receive and verify Acme webhooks.",
      "digest": "sha256:47b0d2…",
      "name": "acme-webhooks",
      "type": "archive",
      "url": "/.well-known/agent-skills/acme-webhooks.tar.gz"
    }
  ]
}

The agent-native documentation framework.

Here's how these docs score on the two independent agent-readiness scanners.

is-agentic.comby Vercel

View report

100

useblume.dev
100/100
Mintlify
78/100
Fumadocs
63/100

isitagentready.comby Cloudflare

View report

80

useblume.dev
80/100
Mintlify
40/100
Fumadocs
20/100

Every Blume site ships raw Markdown, llms.txt, and a JSON API out of the box, plus an opt-in MCP server and published agent skills.

Read the docs

Scores are as reported by is-agentic.com and isitagentready.com on September 20, 2026, and may have changed since.

And agents that help you write.Test, translate, fix, and update your docs with the agent you already use.

Docs that keep up with the code.
The blume-update-docs skill reads recently merged pull requests, updates only the pages that went stale, checks the build, and opens a pull request. If nothing drifted, it opens nothing.
Tested like code.
blume eval has an agent answer real questions from your docs alone, a judge grades each answer, and CI fails when the docs can't answer.
Every language, kept current.
blume translate finds the pages that are missing or out of date in each language and translates only those, with a CI check that fails on drift.
Audits your agent fixes.
blume audit --claude hands every finding to Claude Code, or Codex with --codex, which fixes the pages and reruns the audit until it's clean.
Moved in by an agent.
blume migrate hands a Mintlify, Fumadocs, Docusaurus, Starlight, or Nextra site to Claude Code or Codex with Blume's migration playbook, and reports anything it can't carry across.

These run on the agent CLI you already use: Blume holds no API keys for them and calls no model itself.

Agent skills

Upgrade your docs with Blume.

Install today and ship a production-grade docs site in minutes. Free and open source, forever.

npx blume init