LabscoMCP early access ↗
gstieblerMCP SERVER

PDF MCP Server

Read PDFs from local paths — the text of every page, the tables as rows, and the page count and metadata.

by gstiebler ↗Document Conversion, PDF & TranslationCommunity

LABSCO SUMMARY

It reads PDFs; it does not change them.

Three read-only calls cover what an assistant usually needs from a PDF someone sent: the text, the tables, and a quick check of page count and metadata before pulling the whole document into the conversation. Tables come back as rows with their page number, so a report's figures stay usable instead of being flattened into prose.

What it is

A local PDF reader built on pdfplumber. Three tools take a file path and return the document's text, its tables, or its page count, metadata and first-page size.

What you get

  • Text from every page of a PDF, returned as plain text — extract_text
  • Tables as rows of cell values, each tagged with the page it was found on, for the whole file or a single page — extract_tables
  • Page count, the document metadata and the width and height of the first page — get_pdf_info

Requirements

PDF files on paths the server can read — every tool takes a local file path and only reads it. Python 3.10+; it runs with uvx straight from the GitHub repository, or from a clone with uv sync. No credentials.

Setup effort

One command — uvx --from git+https://github.com/gstiebler/pdf-mcp-server.git pdf-mcp-server