Help us improve
Share bugs, ideas, or general feedback.
Auto-discovered marketplace from rawe/docfabric
npx claudepluginhub rawe/docfabricUpload and manage documents in DocFabric
Share bugs, ideas, or general feedback.
Document infrastructure layer for AI-optimized access.
Upload any document — PDF, DOCX, HTML, or other formats — and DocFabric converts it into a persistent Markdown representation. The original file is stored alongside the generated Markdown, both accessible through a REST API for management and a read-only MCP server for direct LLM consumption.
The core idea: AI systems shouldn't deal with heterogeneous file formats. DocFabric normalizes everything into clean, character-addressable text that agents can navigate structurally (via heading outlines) or read in precise slices (via offset/limit).
DocFabric runs as a single Python process exposing two interfaces:
/api) — Full CRUD for document management (upload, update, delete, list, read)/mcp) — Read-only tools optimized for LLM access (list, info, outline, read)localhost:5173) — React SPA for document management via the REST APIConversion from source formats to Markdown is handled by docling. Storage uses SQLite + local filesystem. The MCP server uses Streamable HTTP via FastMCP.
| Tool | Purpose |
|---|---|
list_documents | Scan available documents (id + filename) |
get_document_info | Full metadata for a single document |
get_document_outline | Heading structure with offset/length for targeted reads |
read_document_content | Read markdown content (full or partial via offset/limit) |
Run DocFabric with Docker using the pre-built images from GitHub Container Registry:
curl -O https://raw.githubusercontent.com/rawe/docfabric/main/examples/docker-compose/docker-compose.yml
docker compose up -d
To pin a specific version instead of latest:
VERSION=0.1.0 docker compose up -d
Build and run from a cloned repository:
cd docker
docker compose up -d --build
Requires uv and Node.js:
cd backend && uv sync # install Python dependencies
cd ../frontend && npm ci # install Node dependencies
cd ..
./dev.sh # starts backend + frontend with hot-reload
All three options expose the same endpoints:
| Service | Pre-built / Docker | Development |
|---|---|---|
| UI | http://localhost:3000 | http://localhost:5173 |
| REST API | http://localhost:8000/api | http://localhost:8000/api |
| MCP Server | http://localhost:8000/mcp | http://localhost:8000/mcp |
See docs/releasing.md for Makefile targets, CI workflow, and configuration reference.
DocFabric ships a Claude Code plugin for operations that require local filesystem access, which the read-only MCP server cannot provide. Install it from this repository's marketplace:
claude plugin marketplace add rawe/docfabric
claude plugin install docfabric@docfabric-marketplace
This adds the /docfabric:docfabric skill, which lets Claude manage documents between your local filesystem and DocFabric on your behalf.
See docs/index.md for the full documentation index, including PRD, architecture, API contracts, and setup instructions.