unstract

From public sources

LLM-Driven Extraction of Unstructured Data — Built for API Deployments & ETL Pipeline Workflows

MCP serverCategory: MCP Servers · AI & memory · Files & documentsOpen sourcedata checked Oct 16, 2026

Overview

  • ai-agents
  • data-engineering
  • document-ai
  • generative-ai
  • idp
  • json-extraction
  • llm
  • mcp-server
  • ocr
  • pdf-extraction
  • prompt-engineering
  • structured-output

Installation

Commands are shown, never run by the marketplace. Check them against the official documentation.
  • Official websiteFrom public sourcesfrom catalog metadata
    unstract.com/ ↗
  • Language package registrypythonFrom public sourcesfrom the package manifest — publication on the registry is not verified
    pipx install unstract

    Not verified: check that this package in the registry belongs to this project before installing.

    pypi.org/project/unstract/ ↗
  • Build from sourceFrom public sourcesfrom catalog metadata

    Build from source: no validated build recipe — follow the repository instructions.

    github.com/Zipstack/unstract ↗

Compatibility

Unknown means no evidence was found — not that the product is incompatible.
PlatformStatusArchitectureEvidenceConfidence
Claude (web & desktop)Unknown———
Claude CodeUnknown———
CursorUnknown———
VS CodeUnknown———
WindsurfUnknown———
ChatGPTUnknown———
PythonCompatible—package manifest: pyproject.toml name0.60

Releases

checked Oct 30, 2026
v0.199.0LatestOct 29, 2026Official source ↗

Files in 0.199.0

This release has no attached files.

Release history

Quality profile

algorithm quality-v1.0 · assessed Oct 16, 2026
Quality Score95
Risk Score0
Confidence 1.00
Quality Score and Risk Score are different measures. A high score does not guarantee safety.

Score components

Maintenance · 2020
last activity 0 days ago
Documentation · 1515
README 12488 chars, description present
Ready to use · 1515
install instructions: yes; releases: yes
Metadata · 1010
4/4 of description, homepage, license, topics
Releases · 1010
10 release(s), latest 1 days ago
Category confidence · 105
classifier confidence 0.5
Adoption · 1010
7284 stars (log-dampened, 10k = max)
License clarity · 55
SPDX AGPL-3.0
Community · 55
issues enabled, 719 forks

License

AGPL-3.0
Known licensefrom the repository host

This is the catalog policy status, not legal advice.

Sources

github.com/Zipstack/unstractPrimary★ 7,284 starslast activity Oct 15, 2026Primary repository · Confidence 1.00

Reviews

Sign in to write a review

No reviews yet.

Alternatives

README

From Zipstack/unstract · license AGPL-3.0 · fetched Oct 30, 2026

What is Unstract?

Unstract uses LLMs to extract structured JSON from documents — PDFs, images, scans, you name it. Define what you want to extract using natural language prompts, and deploy as an API or ETL pipeline.

Built for teams in finance, insurance, healthcare, KYC/compliance, and much more.

Current State vs. Unstract

TaskWithout UnstractWith Unstract
Schema definitionWrite regex, build templates per vendorWrite a prompt once, handles variations
New document typeDays of developmentMinutes in Prompt Studio
LLM integrationBuild your own pipelinePlug in any provider (OpenAI, Anthropic, Bedrock, Ollama)
DeploymentCustom infrastructure./run-platform.sh or managed cloud
OutputUnstructured text blobsClean JSON, ready for your database

⭐ If Unstract helps you, star this repo!

[Star Unstract]

✨ Key Features

Prompt Studio — Define document extraction schemas with natural language. Docs →

[Prompt Studio]

API Deployment — Send a document over REST API, get JSON back. Docs →

[API Deployment]

ETL Pipeline — Pull documents from a folder, process them, load to your warehouse. Docs →

MCP Server — Connect to AI agents (Claude, etc.) via Model Context Protocol. Docs →

n8n Node — Drop into existing automation workflows. Docs →

🚀 Quickstart (~5 mins)

System Requirements & Prerequisites

  • Linux or macOS (Intel or M-series)
  • Docker & Docker Compose
  • 8 GB RAM minimum
  • Git

Run Locally

# Clone and start
git clone https://github.com/Zipstack/unstract.git
cd unstract
./run-platform.sh

That's it!

📦 Other Deployment Options

Docker Compose

# Pull and run entire Unstract platform with default env config.
./run-platform.sh

# Pull and run docker containers with a specific version tag.
./run-platform.sh -v v0.1.0

# Upgrade existing Unstract platform setup by pulling the latest available version.
./run-platform.sh -u

# Upgrade existing Unstract platform setup by pulling a specific version.
./run-platform.sh -u -v v0.2.0

# Build docker images locally as a specific version tag.
./run-platform.sh -b -v v0.1.0

# Build docker images locally from working branch as `current` version tag.
./run-platform.sh -b -v current

# Display the help information.
./run-platform.sh -h

# Only do setup of environment files.
./run-platform.sh -e

# Only do docker images pull with a specific version tag.
./run-platform.sh -p -v v0.1.0

# Only do docker images pull by building locally with a specific version tag.
./run-platform.sh -p -b -v v0.1.0

# Upgrade existing Unstract platform setup with docker images built locally from working branch as `current` version tag.
./run-platform.sh -u -b -v current

# Pull and run docker containers in detached mode.
./run-platform.sh -d -v v0.1.0

🔐 Backup Encryption Key

[!WARNING] This key encrypts adapter credentials — losing it makes existing adapters inaccessible!

Copy the value of ENCRYPTION_KEY from backend/.env or platform-service/.env to a secure location.

🏗️ Unstract Architecture

┌────────────────────────────────────────────────────────────┐
│                          Unstract                          │
├─────────────┬─────────────┬─────────────┬──────────────────┤
│  Frontend   │   Backend   │   Worker    │ Platform Service │
│  (React)    │  (Django)   │  (Celery)   │   (FastAPI)      │
├─────────────┴─────────────┴─────────────┴──────────────────┤
│                      Cache (Redis)                         │
├────────────────────────────────────────────────────────────┤
│                  Message Queue (RabbitMQ)                  │
├────────────────────────────────────────────────────────────┤
│                   Database (PostgreSQL)                    │
├────────────────────────────────────────────────────────────┤
│  LLM Adapters    │  Vector DBs    │  Text Extractors       │
│  (OpenAI, etc.)  │ (Qdrant, etc.) │  (LLMWhisperer)        │
└────────────────────────────────────────────────────────────┘

Also see architecture.

📄 Document File Formats

CategoryFormats
DocumentsPDF, DOCX, DOC, ODT, TXT, CSV, JSON
SpreadsheetsXLSX, XLS, ODS
PresentationsPPTX, PPT, ODP
ImagesPNG, JPG, JPEG, TIFF, BMP, GIF, WEBP

🔌 Connectors & Adapters

LLM Providers

ProviderStatusProviderStatus
OpenAI✅Azure OpenAI✅
OpenAI Compatible✅Anthropic Claude✅
AWS Bedrock✅Google Gemini✅
Ollama (local)✅Mistral AI✅
Anyscale✅

Vector Databases

ProviderStatusProviderStatus
Qdrant✅Pinecone✅
Weaviate✅PostgreSQL✅
Milvus✅

Text Extractors

ProviderStatus
LLMWhisperer✅
Unstructured.io✅
LlamaIndex Parse✅

ETL Sources & Destinations

Sources: AWS S3, MinIO, Google Cloud Storage, Azure Blob, Google Drive, Dropbox, SFTP

Destinations: Snowflake, Amazon Redshift, Google BigQuery, PostgreSQL, MySQL, MariaDB, SQL Server, Oracle

Full Connector List

🛠️ Development

Change Default Credentials

Follow these steps to change the default username and password.

Local Development

# Install pre-commit hooks
./dev-env-cli.sh -p

# Run pre-commit checks
./dev-env-cli.sh -r

Local Development Guide

🏢 Use Cases by Industry

Finance & Banking → | Insurance → | Healthcare → | Income Tax →

☁️ Cloud & Enterprise

For teams that need managed infrastructure, advanced accuracy features, or compliance certifications.

  • ✅ LLMChallenge — dual-LLM verification
  • ✅ SinglePass & Summarized Extraction — reduce LLM token costs
  • ✅ Human-in-the-Loop — review interface with document highlighting
  • ✅ SSO & Enterprise RBAC — SAML/OIDC integration with granular role-based access control
  • ✅ SOC 2, HIPAA, ISO 27001, GDPR Compliant — third-party audited security certifications
  • ✅ Priority Support with SLA — dedicated support team with response time guarantees

📚 Cookbooks

🤝 Contributing

We welcome contributions! The easiest way to start:

  1. Pick an issue tagged good first issue
  2. Submit a PR

Report Bug → | Request Feature →

👋 Community

Join the LLM-powered document automation community:

[Blog] [LinkedIn] [Slack] [X]

📊 A Note on Analytics

Unstract integrates Posthog to track minimal usage analytics. Disable by setting REACT_APP_ENABLE_POSTHOG=false in the frontend's .env file.

📜 License

Unstract is released under the AGPL-3.0 License.


Open the repository ↗