# Unstructured

> Open-source library and enterprise platform that converts PDFs, Office files, emails and images into structured data for LLM and AI-agent workflows.

Unstructured, from Unstructured-IO, turns complex documents such as PDFs, HTML, Word files, emails and images into clean, structured output for language models and AI agents. It is available as an Apache-2.0 open-source Python library and as a commercial platform with managed pipelines and a Transform API/MCP interface.

## What It Is

Unstructured is a document pre-processing and ETL toolset for GenAI data. The open-source `unstructured` library provides a `partition` function that detects the file type and routes it to the matching partitioning function, returning document elements. It can be installed from PyPI with extras per document type, or run from a Docker image. Some document types require system dependencies such as poppler, tesseract and libreoffice.

## Platform pipeline: extract, transform, load

The vendor's platform page describes an end-to-end pipeline. It connects to 30+ sources, transforms 65+ file types with partitioning strategies that adapt per page, applies chunking, enrichments (such as image descriptions and entity recognition) and embeddings, then loads results to 30+ destinations including vector and graph databases, search engines and blob storage. Workflows can be scheduled and skip files already processed. They can be driven through an API, a no-code UI, or MCP for AI agents.

## Deployment and compliance

The company says the platform can run as managed SaaS, hybrid, in a customer VPC, or on bare metal. It lists SOC 2 Type 2, HIPAA, GDPR, ISO 27001 and FedRAMP High among its compliance credentials. It also describes organizational accounts, role-based access and fine-grained permissions.

## Open source versus Transform

The README states the open-source library will stay free and points to the Transform v2 API for higher-quality output. It reports Transform scoring higher than the open-source library on table accuracy and text accuracy in its own benchmarks. The library sends lightweight anonymous telemetry by default, which can be disabled with the DO_NOT_TRACK or SCARF_NO_ANALYTICS environment variables.

## Features
- Partition PDFs, HTML, Word docs, emails and images into structured elements
- Automatic file-type detection with a single partition function
- Table extraction preserving rows, columns and headers
- OCR for scans, images and handwriting
- Layout and reading-order preservation
- Chunking strategies for LLM and RAG use
- Enrichments such as image descriptions and entity recognition
- Embedding generation via selectable models
- 30+ source and 30+ destination connectors
- Scheduled workflows with skip of already processed files
- API, UI and MCP interfaces
- Plugin architecture for custom connectors and transformation nodes
- Docker image and PyPI installation for the open-source library
- SaaS, hybrid, VPC and bare-metal deployment options

## Integrations
Amazon S3, SharePoint, Google Drive, Snowflake, Databricks, Azure, Zendesk, LangChain, Model Context Protocol (MCP), Vector databases

## Platforms
API, CLI, DEVELOPER_SDK, WEB, LINUX, MACOS, WINDOWS

## Pricing
Open Source

## Version
0.27.25

## Links
- Website: https://www.unstructured.io/
- Documentation: https://docs.unstructured.io/
- Repository: https://github.com/Unstructured-IO/unstructured
- EveryDev.ai: https://www.everydev.ai/tools/unstructured
