This is an early release preview. You may encounter bugs.
Doc7 logo
Unclaimed

Tool data-wrangling

Doc7

Turn documents into AI-ready Markdown with visual understanding

B 71/100 GitHub score ? This grade is derived from GitHub signals, not user votes. Open for the full breakdown.
No votes yet

01 / About

What Doc7 is.

doc7 converts documents into Markdown by rendering each page and passing it to your own OpenAI-compatible multimodal model, rather than by running a dedicated OCR, layout, table, and formula stack. Because the model reads the whole page, charts, formulas, diagram relationships, screenshots, and visible application state come back as searchable text, and multi-page inputs are rebuilt into one ordered document.

The model endpoint is yours: a local server such as LM Studio or Ollama, or a private or remote OpenAI-compatible deployment. The first run detects the system language, finds running local model servers, reads their real model IDs, verifies image understanding with a probe, and saves the choice on the machine; doc7 doctor re-checks format dependencies and the model, optionally against the specific document you are about to process.

One Go binary carries the interactive CLI, batch processing, a tool-calling chat agent, an MCP server with a typed converttomarkdown tool, an asynchronous HTTP service, and a Go SDK. The HTTP service accepts uploaded files and ZIP archives, returns a job id to poll, serves merged Markdown or an artifact archive, and can resume only the failed pages of a job. Each run keeps merged Markdown alongside page-level Markdown, rendered page images, metadata, and a manifest, so page-level provenance carries into retrieval pipelines and agent knowledge bases.

A published benchmark run compares two raster-only PDFs across fifteen machine-checkable visual facts, with raw outputs, digests, and scoring rules committed for inspection:

System Attention paper Visual report Combined
doc7 + qwen3.5-9b 7/7 8/8 15/15
MarkItDown 0.1.6 + OCR 0.1.0 + qwen3.5-9b 3/7 6/8 9/15
Docling 2.113.0 standard 1/7 2/8 3/15

Features

  • Visual page understanding: rendered pages go to a multimodal model, recovering tables, LaTeX notation, chart values, diagram ordering, and UI state as text
  • Input coverage: PDF, Office and OpenDocument files, EPUB, EML, MHTML and MSG mail, Jupyter notebooks, images, plain text and data formats, URLs, and ZIP archives
  • Model choice: any OpenAI-compatible multimodal endpoint, including LM Studio, Ollama, and private deployments, with no required OCR stack
  • First-run setup: local endpoint discovery, model listing, an image-understanding probe, and a saved per-machine configuration
  • Chat agent: a session that converts documents through a restricted tool and browses a read-only filesystem tool set inside authorized directories only
  • MCP server: a typed converttomarkdown tool over stdio, accepting a path, directory, URL, or archive and returning Markdown with metadata
  • HTTP service: asynchronous jobs with status polling, Markdown and artifact downloads, and resume of failed pages under the current model configuration
  • Page selection: reprocess selected one-based pages or ranges with different settings into the same output
  • Output layout: merged Markdown plus per-page Markdown, page images, metadata, and a manifest, with an option to drop the images
  • Docker image: LibreOffice, MuPDF, Chromium, and CJK fonts, running the service as a non-root user with named volumes
  • Security controls: localhost-by-default bind, bearer token for external binds, sanitized mail and notebook HTML, and archive traversal and size limits

02 / Discussion CREDIBILITY-GATED

Discussion

Reading is open to everyone. Posting and voting need a verified identity or a GitHub grade of B or higher.

  • No discussions yet.

03 / Build

Build with Doc7.

Browse the catalogue for frameworks, tools, and harnesses, each scored on real GitHub credibility.

Get Doc7 →

Browse the catalogue