Labsco
MCP SERVER

Unstructured MCP

by MKhalusova

Extract text content from more than fifty document formats — PDF, Office, email, images, ebooks — through the Unstructured API.

Document Conversion, PDF & Translation
Summary
The format list is the product.

Almost every extraction tool covers PDF and Word. The reason to reach for this one is the long tail — Hangul documents, signed email, AppleWorks and Lotus files, images that need OCR — where the alternative is a manual conversion step. The trade is that documents go to the Unstructured API, so it is the wrong choice for anything you cannot send off the machine.

What it is

An MCP server that hands a model the contents of a document it otherwise cannot open. It calls the Unstructured partitioning API, so the format coverage is unusually wide: alongside the obvious PDF and Office files it handles email, ebooks, images, Hangul and Korean office formats, spreadsheets, and older formats like `.wk2` and `.dbf`. The author labels the repository work in progress.

What you get
  • Text and structure extracted from a document so the model can reason over its content rather than its filename
  • Documents: `.pdf`, `.doc`, `.docx`, `.odt`, `.rtf`, `.pages`, `.epub`, `.txt`, `.md`, `.rst`, `.org`, `.html`, `.htm`, `.xml`
  • Spreadsheets and data files: `.xls`, `.xlsx`, `.xlsm`, `.xlsb`, `.csv`, `.tsv`, `.dif`, `.dbf`, `.fods`
  • Presentations: `.ppt`, `.pptx`, `.pptm`, `.pot`, `.potm`
  • Email and signed mail: `.eml`, `.p7s`
  • Images that need reading rather than viewing: `.png`, `.jpg`, `.jpeg`, `.tiff`, `.bmp`, `.heic`, `.gif`, `.webp`, `.svg`
  • Legacy and regional formats most extractors drop: `.hwp`, `.uof`, `.uos1`, `.uos2`, `.abw`, `.cwk`, `.mcw`, `.sdp`, `.sgl`, `.wk2`
Requirements

An Unstructured API key in `UNSTRUCTURED_API_KEY`, placed in a `.env` in the project root — extraction happens on Unstructured's side, so document content leaves your machine and usage bills to that account. Clone the repository, set up the `uv` environment, and run `uv run doc_processor.py`; the client config points at the project directory with absolute paths. The README is explicit that this is work in progress.