ai_invoice_parser
AI Invoice Parser: Extracts data from invoices using AI. Ref: https://developer.pdf.co/api/ai-invoice-parser.md
Read a PDF out as JSON, CSV, XLSX or searchable text, build one from a document, webpage or email, then fill, split, merge or lock the result.
LABSCO SUMMARY
The value is coverage: nearly every crossing between PDF, spreadsheet, image, web page and email has a tool, so a chain like scan to OCR to CSV never leaves the conversation. Two habits matter when driving it — long conversions return a job rather than a result, so pair them with wait_job_completion, and find_text returns coordinates rather than text, which is what makes annotation and form placement possible.
A client for the PDF.co document API, covering conversion in both directions, OCR, form handling, search by coordinate and file assembly. Long operations run as background jobs you poll or wait on.
A PDF.co account and its API key, passed as X_API_KEY. UV supplies the runtime — install it, then launch with uvx pdfco-mcp over stdio.
One command plus a key — uvx pdfco-mcp, then supply credentials
USE CASES
Locate the tables by coordinate first when the layout is awkward, then convert to CSV or XLSX.
Run OCR to add an invisible text layer, then confirm the words are really there by searching for one.
Let the AI parser read the fields instead of writing a regex per vendor template.
Read the field names out of the document first — filling by guessed name is what fails.
Render the URL to PDF with your own header and footer markup, then lock it.
Merge PDFs, spreadsheets and images into a single document, then split off the section someone asked for.
Counted once with only startup setup. Other versions, modes or optional credentials may expose a different list.
ai_invoice_parserAI Invoice Parser: Extracts data from invoices using AI. Ref: https://developer.pdf.co/api/ai-invoice-parser.md
create_fillable_formsCreate new fillable form elements in a PDF document.
Example annotations format: [ { "text": "prefilled text", "x": 10, "y": 30, "size": 12, "pages": "0-", "type": "TextField", "id": "textfield1" }, { "x": 100, "y": 150, "size": 12, "pages": "0-", "type": "Checkbox", "id": "checkbox1" } ]
Ref: https://developer.pdf.co/api/pdf-add.md
csv_to_pdfConvert CSV or spreadsheet files (XLS, XLSX) to PDF. Ref: https://developer.pdf.co/api/pdf-from-document/csv.md
document_to_pdfConvert various document types (DOC, DOCX, RTF, TXT, XLS, XLSX, CSV, HTML, JPG, PNG, TIFF, WEBP) into PDF. Ref: https://developer.pdf.co/api/pdf-from-document/doc.md
email_to_pdfConvert email to PDF. Ref: https://developer.pdf.co/api/pdf-from-email.md
excel_to_csvConvert Excel(XLS, XLSX) to CSV. Ref: https://developer.pdf.co/api/convert-from-excel/csv.md
excel_to_htmlConvert Excel(XLS, XLSX) to HTML. Ref: https://developer.pdf.co/api/convert-from-excel/html.md
excel_to_jsonConvert Excel(XLS, XLSX) to JSON. Ref: https://developer.pdf.co/api/convert-from-excel/json.md
excel_to_pdfConvert Excel(XLS, XLSX) to PDF. Ref: https://developer.pdf.co/api/convert-from-excel/pdf.md
excel_to_txtConvert Excel(XLS, XLSX) to TXT. Ref: https://developer.pdf.co/api/convert-from-excel/text.md
excel_to_xmlConvert Excel(XLS, XLSX) to XML. Ref: https://developer.pdf.co/api/convert-from-excel/xml.md
extract_attachmentsExtracts attachments from a source PDF file. Ref: https://developer.pdf.co/api/pdf-extract-attachments.md
fill_formsFill existing form fields in a PDF document.
Example fields format: [ { "fieldName": "field_name_from_form_info", "pages": "1", "text": "Value to fill" } ]
Use 'read_pdf_forms_info' first to get the fieldName values of the form.
Ref: https://developer.pdf.co/api/pdf-add.md
find_tableFind tables in PDF and get their coordinates. Ref: https://developer.pdf.co/api/pdf-find/table.md
find_textFind text in PDF and get coordinates. Supports regular expressions. Ref: https://developer.pdf.co/api/pdf-find/basic.md
get_job_checkCheck the status and results of a job Status can be:
html_to_pdfConvert HTML to PDF. Ref: https://developer.pdf.co/api/pdf-from-html/convert.md
The header and footer parameters can contain valid HTML markup with the following classes used to inject printing values into them:
For example, the following markup will generate Page N of NN page numbering:
<span style='font-size:10px'>Page <span class='pageNumber'></span> of <span class='totalPages'></span>.</span>image_to_pdfConvert various image formats (JPG, PNG, TIFF) to PDF. Ref: https://developer.pdf.co/api/pdf-from-image.md
pdf_add_annotations_images_fieldsAdd text, images, forms, other PDFs, fill forms, links to external sites and external PDF files. You can update or modify PDF and scanned PDF files.
This tool supports three main ways to add content:
Example annotations: [{"text": "Sample Text - Click here to test link", "x": 250, "y": 240, "size": 24, "pages": "0-", "color": "CCBBAA", "link": "https://pdf.co/", "fontName": "Comic Sans MS", "fontItalic": true, "fontBold": true, "fontStrikeout": false, "fontUnderline": true}]
Example images: [{"url": "https://pdfco-test-files.s3.us-west-2.amazonaws.com/pdf-edit/logo.png", "x": 270, "y": 150, "width": 159, "height": 43, "pages": "0"}]
Example fields: [{"fieldName": "topmostSubform[0].Page1[0].YourSocial_ReadOrderControl[0].f1_05[0]", "pages": "1", "text": "Joan B.", "fontName": "Arial", "size": 6, "fontBold": true, "fontItalic": true, "fontStrikeout": true, "fontUnderline": true}]
Ref: https://developer.pdf.co/api/pdf-add.md
pdf_add_passwordAdd password protection to a PDF file. Ref: https://developer.pdf.co/api/pdf-password/add.md
pdf_info_readerGet detailed information about a PDF document - number of pages, metadata, security, form fields, and more. Ref: https://developer.pdf.co/api/pdf-info-reader.md
pdf_make_searchableConvert scanned PDF documents or image files into a text-searchable PDF. Runs OCR and adds an invisible text layer that can be used for text search. Ref: https://developer.pdf.co/api/pdf-change-text-searchable/searchable.md
pdf_make_unsearchableMake existing PDF document non-searchable by removing the text layer from it. Ref: https://developer.pdf.co/api/pdf-change-text-searchable/unsearchable.md
pdf_mergeMerge PDF from two or more PDF, DOC, XLS, images, even ZIP with documents and images into a new PDF. Ref: https://developer.pdf.co/api/merge/various-files.md
pdf_remove_passwordRemove password protection from a PDF file. Ref: https://developer.pdf.co/api/pdf-password/remove.md
pdf_splitSplit a PDF into multiple PDF files using page indexes or page ranges. Ref: https://developer.pdf.co/api/pdf-split/by-pages.md
pdf_to_csvConvert PDF and scanned images into CSV representation with layout, columns, rows, and tables. Ref: https://developer.pdf.co/api/pdf-to-csv.md
pdf_to_htmlConvert PDF and scanned images to HTML format. Ref: https://developer.pdf.co/api/pdf-to-html.md
pdf_to_imageConvert PDF and scanned images to various image formats (JPG, PNG, WebP, TIFF). Ref:
pdf_to_jsonConvert PDF and scanned images into JSON representation with text, fonts, images, vectors, and formatting preserved using the /pdf/convert/to/json2 endpoint. Ref: https://developer.pdf.co/api/pdf-to-json/basic.md
pdf_to_textConvert PDF and scanned images to text with layout preserved. Ref: https://developer.pdf.co/api/pdf-to-text/basic.md
pdf_to_xlsConvert PDF and scanned images to XLS (Excel 97-2003) format. Ref: https://developer.pdf.co/api/pdf-to-excel/xls.md
pdf_to_xlsxConvert PDF and scanned images to XLSX (Excel 2007+) format. Ref: https://developer.pdf.co/api/pdf-to-excel/xlsx.md
pdf_to_xmlConvert PDF and scanned images to XML format. Ref: https://developer.pdf.co/api/pdf-to-xml.md
read_pdf_forms_infoExtracts information about fillable PDF fields from an input PDF file. Ref: https://developer.pdf.co/api/forms/info-reader.md
upload_fileUpload a file to the PDF.co API
wait_job_completionWait for a job to complete
webpage_to_pdfConvert external webpage URL to PDF. Ref: https://developer.pdf.co/api/pdf-from-url.md
The header and footer parameters can contain valid HTML markup with the following classes used to inject printing values into them:
For example, the following markup will generate Page N of NN page numbering:
<span style='font-size:10px'>Page <span class='pageNumber'></span> of <span class='totalPages'></span>.</span>BEFORE YOU INSTALL
38 tools when we connected. The form-filling tool is called fill_forms, not fill_pdf_forms as documented. upload_file, get_job_check and wait_job_completion handle PDF.co's asynchronous jobs rather than PDF work.
Both documented clients run the server on your machine.
CONTEXT COST
Rated by the size of the 38 tool definitions that ride along on every turn, not by how many there are
INSTALLATION
uvx pdfco-mcp{
"mcpServers": {
"pdfco": {
"command": "uvx",
"args": [
"pdfco-mcp"
],
"env": {
"X_API_KEY": "<YOUR_API_KEY>"
}
}
}
}