Skip to main content
  ██████╗  ██████╗  ██████╗██╗   ██╗██╗      █████╗ ██╗   ██╗███████╗██████╗
  ██╔══██╗██╔═══██╗██╔════╝██║   ██║██║     ██╔══██╗╚██╗ ██╔╝██╔════╝██╔══██╗
  ██║  ██║██║   ██║██║     ██║   ██║██║     ███████║ ╚████╔╝ █████╗  ██████╔╝
  ██║  ██║██║   ██║██║     ██║   ██║██║     ██╔══██║  ╚██╔╝  ██╔══╝  ██╔══██╗
  ██████╔╝╚██████╔╝╚██████╗╚██████╔╝███████╗██║  ██║   ██║   ███████╗██║  ██║
  ╚═════╝  ╚═════╝  ╚═════╝ ╚═════╝ ╚══════╝╚═╝  ╚═╝   ╚═╝   ╚══════╝╚═╝  ╚═╝

The live documentation layer for AI agents

PyPIPythonLicenseMCPDownloads
🚫

Zero Hallucination

Every byte returned is verbatim from the fetched URL. DocuLayer never generates a single word — no paraphrasing, no summarizing, no drift.

llms.txt First

For packages that publish an llms.txt index, DocuLayer fetches only the 1–3 pages most relevant to your query instead of crawling hundreds of pages.

💾

Zero Storage

All fetched pages live in a process-local TTL cache. No database, no files, no persistence. Privacy-safe by design.

🔌

MCP Native

Four MCP tools work immediately in Claude Code, Cursor, VS Code, Windsurf, and Zed. One command to wire up any IDE.

📦

Python Library

Use search() and fetch() inline in any async Python application — no separate server process required.

🔍

BM25, No ML

Section ranking uses BM25Okapi — deterministic, zero-dependency, and correct for exact API name lookup.

30-Second Install

1pip install doculayer
2doculayer setup
3Restart your IDE — four tools appear immediately.

How It Works

Your agent  (Claude, Cursor, Codex, any MCP client…)
    │   "what parameters does httpx.AsyncClient.get() take?"
    ▼
┌──────────────────────────────────────────────────────────────┐
│  DocuLayer                                                   │
│  resolve_identifier  →  shortcut table / PyPI / npm         │
│  discover_llms_txt   →  targeted page index (when present)  │
│  keyword score       →  fetch only relevant pages           │
│  DocParser  (HTML → Markdown, heading split)                │
│  DocSearcher  (BM25 — no ML, no embeddings)                 │
│  TTLCache  (in-memory only — zero disk writes)              │
└──────────────────────────────────────────────────────────────┘
    │   verbatim section + source URL + "fetched 3s ago"
    ▼
LLM  —  reads real docs, answers correctly

No embeddings. No vector store. No ML inference. No generated text.

Ready to eliminate hallucination?

Install DocuLayer in 30 seconds and give your AI agent access to live, verbatim documentation.