Skip to main content
Glama
Business PDF Field Extractor MCP Server

Business PDF Field Extractor MCP Server

Business PDF Field Extractor MCP Server

npm version license

An MCP server for the Mamba Labs Business PDF Field Extractor actor on Apify. Read invoices, purchase orders, and contracts from PDFs as fixed fields.

What's Inside

Related MCP server: doc-extract

What it does

Give PDF addresses. The actor reads each file's text, or runs OCR on scanned pages, works out whether it is an invoice, a purchase order, or a contract, and returns fixed fields. Invoices and purchase orders return numbers, dates, parties, totals, line items, and a check that the amounts add up. Contracts return parties, dates, term, renewal, notice days, governing law, and which standard clauses appear. It uses labels and column position with no AI, so a value with no known label stays null and is listed as missing.

All of the work runs on Apify. This package is a thin client that starts the actor run, waits for it, and hands back the dataset rows.

Quick start

You need Node.js 18 or newer and an Apify account with an API token.

Add this to your Claude Desktop config (claude_desktop_config.json), Cursor, or any MCP client:

{
  "mcpServers": {
    "mamba-business-pdf-field-extractor": {
      "command": "npx",
      "args": [
        "-y",
        "@mambalabsdev/mcp-business-pdf-field-extractor"
      ],
      "env": {
        "APIFY_TOKEN": "your-apify-token"
      }
    }
  }
}

Restart the client. The extract_business_pdf_fields tool appears.

Prerequisites

Example prompts

  • "Extract the fields from this invoice PDF: "

  • "Read these purchase orders and list the line items: "

  • "What is the renewal and notice wording in this contract PDF: "

Tool

extract_business_pdf_fields. One tool. Example arguments:

{
  "pdf_urls": [
    "https://docs.oasis-open.org/ubl/cd-UBL-1.0/fs/Order/pdf/OfficeOrder.Example-us.pdf",
    "https://raw.githubusercontent.com/Azure/azure-sdk-for-python/main/sdk/formrecognizer/azure-ai-formrecognizer/samples/sample_forms/forms/Invoice_1.pdf",
    "https://gba.georgia.gov/document/publication/services-contractsample-agreement-templatepdf/download"
  ]
}

Inputs

Every buyer facing input of the actor. Omitted inputs take the actor's own defaults.

Input

Type

Required

Description

pdf_urls

array

no

Web addresses of PDF files, up to 1,000. Each file up to 40 MB. The address must answer without a login. In Clay, put the column in a one item list.

pdf_file

string

no

Optional. One PDF file from your computer, stored in your Apify account.

document_type

string

no

auto (default) works it out per file. Set invoice, purchase_order, or contract to read every file as that type.

date_order

string

no

How to read a date such as 03/04/2025 when both readings are valid. mdy (default) reads March 4, dmy reads 3 April. Unambiguous dates ignore this.

read_scans

boolean

no

yes (default): a page with no text layer goes through OCR, charged per page. no: those pages are skipped and the row says so.

ocr_language

string

no

Language of scanned pages: eng (default), deu, fra, spa, nld, ita, or por.

max_pages

number

no

Pages to read per file, up to 500. Default 50.

max_ocr_pages

number

no

Scanned pages to read per file, up to 100. Default 10. This caps the OCR charge per file.

max_documents

number

no

Files to read in this run, up to 1,000. Default 100.

line_item_rows

boolean

no

yes (default): each line item is also its own free row, which suits CSV and Clay. no: line items stay in the line_items field only.

include_text

boolean

no

yes: add the document text to the row, up to 200,000 characters. Default no.

max_charge_usd

string

no

Optional. The run stops before a charge that would pass this amount. Summary rows are always returned.

Pricing

Pay per event on Apify, billed to your Apify account. Prices in USD.

Event

Free plan

Bronze

Silver

Gold

document-row, one PDF with at least one field read

$0.01

$0.0095

$0.009

$0.0085

ocr-page, one scanned page read by OCR, charged when OCR returned text

$0.015

$0.01425

$0.0135

$0.01275

apify-actor-start, per run start

$0.004

$0.004

$0.004

$0.004

Line item rows, documents with no fields read, failed downloads, and refused input are free. Mamba Labs pays the platform costs of the run, Apify proxy traffic included.

Full actor documentation

apify.com/mambalabs/business-pdf-field-extractor

License

MIT. See LICENSE.

Available Tools

1 tool
extract_business_pdf_fieldsExtract fields from business PDFsA
Read-onlyIdempotent

Read invoices, purchase orders, and contracts from PDF addresses and return fixed fields: numbers, dates, parties, totals, line items, and a totals check, or contract parties, dates, term, renewal, notice days, governing law, and clauses found. Scans go through OCR. Rule based with no AI, so a value with no known label stays null. Pay per event on Apify: 0.01 USD per document, 0.015 USD per scanned page.

Inputs: pdf_file, pdf_urls, max_pages, date_order, +8 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.2/5.0

    Scored across 1 tool

    Disambiguation5/5

    There is only one tool, so there is no possibility of tool selection confusion. Its purpose (extracting fixed fields from business PDFs) is stated clearly and covers both invoice/PO and contract extraction paths.

    Naming Consistency5/5

    The single name extract_business_pdf_fields follows a clear verb_noun snake_case convention that matches the domain. There are no competing conventions to introduce inconsistency.

    Tool Count3/5

    A single tool is thin relative to the stated scope, which spans invoices, purchase orders, and contracts with two distinct output schemas. It is defensible as a wrapper around one extraction actor, but a second tool (e.g. contract vs. invoice extraction, or batch input) would sharpen the surface.

    Completeness4/5

    The tool covers the full read-only extraction lifecycle, including OCR, line items, totals validation, and contract clauses, which is complete for a pay-per-document extractor. Minor gaps exist: no batch/multi-document input, no schema or field-selection option, and null results for unlabeled values leave no verification path beyond the totals check.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables AI-powered extraction and analysis of PDF documents with 40+ specialized tools for text, tables, images, layout analysis, security assessment, and document intelligence. Supports both text-based and scanned PDFs with OCR capabilities.
      385 PyPI
      11
      MIT
    • F
      license
      Not graded
      quality
      C
      maintenance
      Enables reading entire PDF documents into validated structured JSON, including tables, key-values, and markdown, with read-only extraction tools and layout reconstruction.
      -
    • A
      license
      A
      quality
      C
      maintenance
      Provides deterministic, schema-driven structured data extraction from PDF documents via regex/heuristic matching, enabling repeatable, inspectable, and cost-free field extraction without LLM API calls.
      3
      MIT
    • F
      license
      Not graded
      quality
      C
      maintenance
      Enables accounts payable teams to extract invoice data from PDFs and images, detect duplicates, normalize vendor names, calculate payment terms, and validate invoice completeness. Supports local extraction for text PDFs and optional vision providers for scanned documents.
      -