DocFlow is an MCP-native documentation clipper that turns messy docs, navigation chrome, repeated page clutter, and long implementation pages into clean, agent-ready context.
It is built for AI coding workflows where the difference between useful context and noisy context directly affects answer quality. Instead of dumping an entire documentation page into ChatGPT, Claude, Cursor, or an agent, DocFlow extracts the useful implementation signal and returns it in clean formats built for downstream tools.
Links: Live demo · Live MCP endpoint · Live clip API · Source repository · Extension guide
AI coding agents are only as good as the context they receive.
Most documentation pages are full of repeated navigation text, page chrome, headers, footers, ads, sidebars, and unrelated examples. That wastes tokens and can push the model toward irrelevant implementation details.
DocFlow solves a narrow but high-leverage problem:
Convert messy documentation pages into compact, implementation-ready context packs for AI coding tools.
- Clips one documentation URL into clean AI-ready context
- Synthesizes multiple documentation pages into one implementation pack
- Supports structured MCP tool calls and plain HTTP API calls
- Provides output modes for context blocks, markdown, and text
- Ships with a lightweight Chrome extension wrapper
- Runs locally for development and deploys as a public API demo
| Surface | Link | Purpose |
|---|---|---|
| Landing demo | Open demo | Human-facing product page and demo surface |
| MCP endpoint | Open endpoint | MCP-compatible tool endpoint |
| Clip API | Open API | HTTP clipping endpoint for demos, extensions, and integrations |
| Chrome extension | Install guide | Browser wrapper for quick manual clipping |
| Tool | Input | Output |
|---|---|---|
clip_docs_page |
One docs URL, mode, max character budget | Clean single-page context |
synthesize_docs_pages |
Multiple docs URLs, mode, max character budget | Combined implementation pack |
Supported output modes:
clipper_context
clipper_markdown
clipper_text
flowchart LR
U[Developer / Agent] --> M[MCP Tool Call]
U --> H[HTTP Clip Request]
B[Chrome Extension] --> H
M --> C[DocFlow Clipper]
H --> C
C --> F[Fetch Docs Page]
F --> E[Extract Main Content]
E --> R[Remove Navigation Noise]
R --> P[Format Context Pack]
P --> O[AI-Ready Output]
git clone https://github.com/dhruvtoprani/docflow-mcp.git
cd docflow-mcp
npm install
npm run build
npm run dev:httpLocal endpoints:
MCP: http://127.0.0.1:3000/mcp
Clip API: http://127.0.0.1:3000/clip
Health: http://127.0.0.1:3000/healthz
{
"url": "https://docs.stripe.com/api/pagination",
"mode": "clipper_context",
"maxChars": 12000
}{
"urls": [
"https://docs.stripe.com/api/pagination",
"https://docs.stripe.com/api/errors"
],
"mode": "clipper_context",
"maxChars": 16000
}npm run dev # stdio MCP server
npm run dev:http # HTTP MCP server
npm run test # test suite
npm run lint # lint
npm run build # compile
npm run eval:workflowsrc/ MCP server, clipping logic, HTTP routes, formatters
extension/ Lightweight Chrome extension wrapper
eval/ Workflow evaluation artifacts
docs/ Product and implementation notes
Evaluation artifacts live in eval/ and can be run with:
npm run eval:workflow- Some documentation sites block automated fetching or render content client-side only.
- Extraction quality depends on page structure and semantic HTML quality.
- The current MVP is optimized for implementation docs, not arbitrary web pages.
- It does not replace reading source docs for legal, licensing, or policy-sensitive decisions.
- Add site-specific extraction adapters for high-value docs providers
- Add richer chunk scoring for examples, parameters, and warnings
- Add saved context packs for repeat agent workflows
- Add browser-side preview before sending clipped context
- Add token-budget-aware compression profiles
MIT.