Kreuzberg

Active
GitHub Rust MIT

Description

Polyglot document intelligence framework with a Rust core, extracting text, metadata, and structured data from PDFs, Office documents, images and 91+ formats via MCP server, CLI, and REST API.

Key Features

  • Polyglot document intelligence extraction: Rust core engine natively supports PDFs, Office documents, images, and 91+ file formats
  • Code intelligence analysis: extracts functions, classes, imports, symbols, and docstrings from 300+ programming languages via tree-sitter
  • Multi-language bindings: supports 15+ languages including Python, TypeScript/Node.js, Ruby, Go, Java, Kotlin, C#, PHP, Swift, and Zig
  • LLM-powered intelligence: VLM OCR (GPT-4o, Claude, Gemini) and structured JSON extraction with 143 LLM providers
  • Multiple OCR backends: Tesseract, PaddleOCR, EasyOCR, and VLM OCR, extensible via plugin API
  • Flexible deployment: use as library, CLI tool, REST API server, or MCP server

Use Cases

💡 RAG data pipelines: extracting text and metadata from multiple document formats for high-quality retrieval-augmented generation corpora
💡 Codebase documentation generation: automatically extracting symbols and docstrings from source code for API docs
💡 Enterprise document digitization: batch processing PDFs and Office files to extract structured content for knowledge management
💡 AI agent tool integration: providing document reading and understanding capabilities to AI agents via MCP server

Quick Start

1. Choose a language binding (e.g. Python: pip install kreuzberg)
2. Extract text from file or URL: kreuzberg.extract('file.pdf')
3. Enable OCR: kreuzberg.extract('image.png', ocr_backend='tesseract')
4. Run as MCP server: kreuzberg serve --mcp
5. Full docs: https://kreuzberg.dev

Related Projects