PDF4me
PYPI · PDF4ME-MCP · 2 COMPONENTS · SCANNED SEP 20
PDF & document automation via the PDF4me API — convert, OCR, extract, edit, secure.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security50
- Malware scan not yet available for this package.Unverified
- No known CVEs affecting this package version or its production dependencies.Pass
- Runs hatchling.build at install time, a recognised native-build step with no shell scripting around it. View diagnostics → Pass
- 1 of 23 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency32
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- License check failed: the license (MIT License) isn't a recognized OSI-approved license. See how to fix → Fail
- Actively maintained (last published 43 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability77
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 14930 tokens (~160/item across 93 items; 92 tools + 1 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management87
- Stability observed for 26 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage76
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 29% of tool parameters carry a description.Partial
Tool Safety75
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 0 of 7 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "delete_blank_pages_from_pdf" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
- An AI judge read all 93 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
How do I install the PDF4me MCP server?
PDF4me runs locally as a PyPI package, launched with uvx pdf4me-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
pypi · pdf4me-mcp
claude mcp add pdf4me-pdf4me-mcp -- uvx pdf4me-mcp
{
"mcpServers": {
"pdf4me-pdf4me-mcp": {
"command": "uvx",
"args": [
"pdf4me-mcp"
]
}
}
} {
"servers": {
"pdf4me-pdf4me-mcp": {
"command": "uvx",
"args": [
"pdf4me-mcp"
]
}
}
} codex mcp add pdf4me-pdf4me-mcp -- uvx pdf4me-mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"pdf4me-pdf4me-mcp": {
"type": "local",
"command": [
"uvx",
"pdf4me-mcp"
],
"enabled": true
}
}
} openclaw mcp add pdf4me-pdf4me-mcp --command uvx --arg pdf4me-mcp
mcp_servers:
pdf4me-pdf4me-mcp:
command: "uvx"
args: ["pdf4me-mcp"] {
"McpServers": {
"pdf4me-pdf4me-mcp": {
"Transport": "stdio",
"Command": "uvx",
"Arguments": [
"pdf4me-mcp"
]
}
}
} assistant mcp add pdf4me-pdf4me-mcp -t stdio -c uvx -a pdf4me-mcp
{
"mcpServers": {
"pdf4me-pdf4me-mcp": {
"command": "uvx",
"args": [
"pdf4me-mcp"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 20 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.
- 17 Sept 26 −3
- Stability: pass → 0.77 functional
- 16 Sept 26 +1
- Stability: 0.97 → pass security
- 14 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.
- 12 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.
- 10 Sept 26 −3
- Security disclosure: unverified → fail ▼ functional
- Stability: pass → 0.80 functional
- 9 Sept 26 +1
- Stability: 0.97 → pass security
- Security disclosure: fail → unverified ▼ functional
- 8 Sept 26 −15
- Malware scan: pass → unverified ▼ security
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 20 Sept 2026 · Analysed pypi/pdf4me-mcp@1.0.0
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | pypi |
Background: How many MCP packages publish verified provenance →
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| build_backend | allowlisted | hatchling.build |
Background: Why install scripts are a supply-chain risk →
Dependencies 23 packages
| Packages resolved | 23 |
|---|---|
| Stale | 1 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
add_attachment_to_pdf Add Attachment To Pdf ~117
Embed one or more files as attachments into a PDF using the PDF4me AddAttachmentToPdf API. Provide the path to the source PDF and a list of local file paths to attach (docName is each file's basename). Optional: request_doc_name for the API docName field (defaults to the PDF's filename) and output path.
| Name | Type | Req | Description |
|---|---|---|---|
| attachment_file_paths | array | yes | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| pdf_file_path | string | yes | – |
| request_doc_name | – | – | – |
No output schema declared.
No examples provided.
add_barcode_to_pdf Add Barcode To Pdf ~287
Draw a barcode or QR code onto PDF pages using the PDF4me addbarcode API (/api/v2/addbarcode). Requires local pdf_file_path, barcode text, barcodeType (e.g. qrCode, code128), pages spec (e.g. all, 1, 1-3, 1,3,5), alignX (Left/Center/Right), alignY (Top/Middle/Bottom), hideText. Optional: size/margins in MM or points, opacity, displayText, showOnlyInPrint, isTextAbove.
| Name | Type | Req | Description |
|---|---|---|---|
| align_x | string | – | – |
| align_y | string | – | – |
| barcode_type | string | – | – |
| display_text | – | – | – |
| height_in_mm | – | – | – |
| height_in_pt | – | – | – |
| hide_text | boolean | – | – |
| is_text_above | – | – | – |
| margin_x_in_mm | – | – | – |
| margin_x_in_pt | – | – | – |
| margin_y_in_mm | – | – | – |
| margin_y_in_pt | – | – | – |
| opacity | – | – | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| pages | string | – | – |
| pdf_file_path | string | yes | – |
| request_doc_name | – | – | – |
| show_only_in_print | – | – | – |
| text | string | yes | – |
| width_in_mm | – | – | – |
| width_in_pt | – | – | – |
No output schema declared.
No examples provided.
add_form_fields_to_pdf Add Form Fields To Pdf ~161
Add an interactive form field (TextBox or CheckBox) to a PDF via PDF4me AddFormField (/api/v2/AddFormField). Provide the PDF path, field name, initial value, position (X/Y in PDF units), Size, pages spec, and formFieldType. Saves the resulting PDF to disk.
| Name | Type | Req | Description |
|---|---|---|---|
| field_name | string | yes | – |
| form_field_type | string | yes | – |
| initial_value | string | yes | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| pages | string | yes | – |
| pdf_file_path | string | yes | – |
| position_x | integer | yes | – |
| position_y | integer | yes | – |
| request_doc_name | – | – | – |
| size | integer | yes | – |
No output schema declared.
No examples provided.
add_html_header_footer_to_pdf Add Html Header Footer To Pdf ~167
Add HTML as header, footer, or both on PDF pages using PDF4me AddHtmlHeaderFooter (/api/v2/AddHtmlHeaderFooter). html_content is a plain HTML string (not base64). header_footer_location is Header, Footer, or Both. Optional: pages (empty string = all), skip_first_page, pixel margins, output path.
| Name | Type | Req | Description |
|---|---|---|---|
| header_footer_location | string | yes | – |
| html_content | string | yes | – |
| margin_bottom | – | – | – |
| margin_left | – | – | – |
| margin_right | – | – | – |
| margin_top | – | – | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| pages | string | – | – |
| pdf_file_path | string | yes | – |
| request_doc_name | – | – | – |
| skip_first_page | – | – | – |
No output schema declared.
No examples provided.
add_image_stamp_to_pdf Add Image Stamp To Pdf ~235
Stamp or watermark a PDF with an image using PDF4me ImageStamp (/api/v2/ImageStamp). Provide pdf_file_path, image_file_path (PNG/JPG/etc.), alignX (Left/Center/Right), alignY (Top/Middle/Bottom). Optional: pages, size in MM or pixels, margins, opacity, is_background, show_only_in_print, output path.
| Name | Type | Req | Description |
|---|---|---|---|
| align_x | string | yes | – |
| align_y | string | yes | – |
| height_in_mm | – | – | – |
| height_in_px | – | – | – |
| image_file_path | string | yes | – |
| image_name | – | – | – |
| is_background | – | – | – |
| margin_x_in_mm | – | – | – |
| margin_x_in_px | – | – | – |
| margin_y_in_mm | – | – | – |
| margin_y_in_px | – | – | – |
| opacity | – | – | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| pages | string | – | – |
| pdf_file_path | string | yes | – |
| request_doc_name | – | – | – |
| show_only_in_print | – | – | – |
| width_in_mm | – | – | – |
| width_in_px | – | – | – |
No output schema declared.
No examples provided.
add_image_watermark_to_image Add Image Watermark To Image ~193
Overlay a watermark image on a source image via PDF4me AddImageWatermarkToImage (/api/v2/AddImageWatermarkToImage). Provide image_file_path, watermark_image_file_path, and position (topright, topleft, bottomright, bottomleft, centralhorizontal, diagonal, centralvertical, custom). Optional: opacity (0.0–1.0), horizontal/vertical offset, position_x/y for custom, rotation (degrees), output path.
| Name | Type | Req | Description |
|---|---|---|---|
| doc_name | – | – | – |
| horizontal_offset | – | – | – |
| image_file_path | string | yes | – |
| opacity | – | – | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| position | string | yes | – |
| position_x | – | – | – |
| position_y | – | – | – |
| rotation | – | – | – |
| vertical_offset | – | – | – |
| watermark_file_name | – | – | – |
| watermark_image_file_path | string | yes | – |
No output schema declared.
No examples provided.
add_margin_to_pdf Add Margin To Pdf ~108
Add margins to a PDF using the PDF4me AddMargin API. Provide a local PDF path and optional margins in millimeters (margin_left/right/top/bottom, 0-100). Saves the resulting PDF to disk.
| Name | Type | Req | Description |
|---|---|---|---|
| margin_bottom | – | – | – |
| margin_left | – | – | – |
| margin_right | – | – | – |
| margin_top | – | – | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| pdf_file_path | string | yes | – |
| request_doc_name | – | – | – |
No output schema declared.
No examples provided.
add_page_number_to_pdf Add Page Number To Pdf ~512
Add page numbers to a PDF via PDF4me POST /api/v2/AddPageNumber. When helping a user, explain how to set page_number_format before calling: use the literal character # for the current page (1, 2, 3, …) and the literal substring {1} for the total page count. Those are placeholders, not Python format specifiers—pass them exactly as strings (e.g. '# of {1}' renders as '1 of 10', 'Page #' as 'Page 1', '# / {1}' as '1 / 10', '(#)' as '(1)', '#' alone as '1'). align_x must be left, center, or right; align_y must be top, middle, or bottom. Optional: margin_x_in_mm and margin_y_in_mm (integers 0–100 mm from the chosen edge), font_size (8–72), is_bold, is_italic, skip_first_page. Requires a local pdf_file_path; output defaults next to the source file.
| Name | Type | Req | Description |
|---|---|---|---|
| align_x | string | – | Horizontal position of the page number text. |
| align_y | string | – | Vertical position of the page number text. |
| font_size | – | – | Font size for the page number (allowed range 8–72 when set). |
| is_bold | – | – | If true, render page numbers in bold. |
| is_italic | – | – | If true, render page numbers in italic. |
| margin_x_in_mm | – | – | Horizontal margin from the aligned edge, in millimeters (0–100). |
| margin_y_in_mm | – | – | Vertical margin from the aligned edge, in millimeters (0–100). |
| output_dir | – | – | Directory for the saved PDF; defaults to the input file's directory. |
| output_file_name | – | – | File name for the saved PDF (e.g. numbered_report.pdf). |
| page_number_format | string | yes | Text pattern for each footer/header line. Use # for current page number and {1} for total pages (both are literal characters in the string). Examples: '# of {1}', 'Page #', '# / {1}', '(#)', '#'. |
| pdf_file_path | string | yes | Absolute or relative path to the input PDF file. |
| request_doc_name | – | – | Output document name sent to the API (should end with .pdf). Defaults to the input file basename. |
| skip_first_page | – | – | If true, do not print a page number on the first page. |
No output schema declared.
No examples provided.
add_text_stamp_to_pdf Add Text Stamp To Pdf ~282
Add a text stamp or watermark to a PDF using PDF4me Text Stamp (/api/v2/Stamp). Provide pdf_file_path, stamp text, pages (e.g. all, 1, 1-3), alignX/alignY, font and margin settings. Uses API field isItalics (italic). Saves the stamped PDF to disk.
| Name | Type | Req | Description |
|---|---|---|---|
| align_x | string | – | – |
| align_y | string | – | – |
| fit_text_over_page | boolean | – | – |
| font_color | string | – | – |
| font_name | string | – | – |
| font_size | integer | – | – |
| is_background | boolean | – | – |
| is_bold | boolean | – | – |
| is_italics | boolean | – | – |
| margin_x_in_mm | string | – | – |
| margin_x_in_px | string | – | – |
| margin_y_in_mm | string | – | – |
| margin_y_in_px | string | – | – |
| opacity | string | – | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| pages | string | – | – |
| pdf_file_path | string | yes | – |
| request_doc_name | – | – | – |
| rotate | integer | – | – |
| show_only_in_print | boolean | – | – |
| text | string | yes | – |
| transverse | boolean | – | – |
| underline | boolean | – | – |
No output schema declared.
No examples provided.
add_text_watermark_to_image Add Text Watermark To Image ~216
Add a text watermark to an image via PDF4me AddTextWatermarkToImage (/api/v2/AddTextWatermarkToImage). image_file_path, watermark_text, text_position (e.g. bottomleft, diagonal, custom), text_font_family, is_underline, is_italic; optional font size, colour, bold, opacity, rotation, position_x/y.
| Name | Type | Req | Description |
|---|---|---|---|
| doc_name | – | – | – |
| image_file_path | string | yes | – |
| is_bold | boolean | – | – |
| is_italic | boolean | – | – |
| is_underline | boolean | – | – |
| opacity | number | – | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| position_x | number | – | – |
| position_y | number | – | – |
| rotation_angle | number | – | – |
| text_colour | string | – | – |
| text_font_family | string | – | – |
| text_font_size | integer | – | – |
| text_position | string | yes | – |
| watermark_text | string | yes | – |
No output schema declared.
No examples provided.
classify_document Classify Document ~68
Classify a PDF by content via PDF4me ClassifyDocument (/api/v2/ClassifyDocument). pdf_file_path; optional request_doc_name and output_dir. Saves classified_document.json.
| Name | Type | Req | Description |
|---|---|---|---|
| output_dir | – | – | – |
| pdf_file_path | string | yes | – |
| request_doc_name | – | – | – |
No output schema declared.
No examples provided.
compress_image Compress Image ~112
Compress an image via PDF4me CompressImage (/api/v2/CompressImage). image_file_path, image_type (JPG, PNG, WebP), compression_level (Max, Medium, Low); optional doc_name, output_dir, output_file_name. Uses async 202 polling when applicable.
| Name | Type | Req | Description |
|---|---|---|---|
| compression_level | string | – | – |
| doc_name | – | – | – |
| image_file_path | string | yes | – |
| image_type | string | – | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
No output schema declared.
No examples provided.
compress_pdf Compress Pdf ~93
Compress a PDF file using the PDF4me API to reduce file size. Provide the local file path to the PDF. Choose an optimization profile: Web (fast download), Print (high-quality), or Screen (screen viewing). Optionally specify an output directory and output file name.
| Name | Type | Req | Description |
|---|---|---|---|
| file_path | string | yes | – |
| optimize_profile | string | – | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
No output schema declared.
No examples provided.
convert_html_to_pdf Convert Html To Pdf ~206
Convert a local HTML file to PDF using the PDF4me ConvertHtmlToPdf API. Provide the file path to the HTML document. Configure layout, page format, scale, margins, print background, and header/footer. Optionally set output directory and output file name.
| Name | Type | Req | Description |
|---|---|---|---|
| bottom_margin | string | – | – |
| display_header_footer | boolean | – | Show header/footer when supported. |
| file_path | string | yes | Local path to the HTML file (.html or .htm). |
| layout | string | – | Portrait or Landscape. |
| left_margin | string | – | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| page_format | string | – | Page size (e.g. A4, Letter). |
| print_background | boolean | – | Include backgrounds in the PDF. |
| right_margin | string | – | – |
| scale | number | – | Content scale (e.g. 0.8 = 80%). |
| top_margin | string | – | – |
No output schema declared.
No examples provided.
convert_image_format Convert Image Format ~132
Convert a local image between formats (BMP, GIF, JPG, PNG, TIFF) using the PDF4me ConvertImageFormat API. Provide the local image path plus current and new format. Supports sync/async processing and optional output directory and output file name.
| Name | Type | Req | Description |
|---|---|---|---|
| current_image_format | string | – | Source image format (BMP, GIF, JPG, PNG, TIFF). |
| file_path | string | yes | Local path to the source image. |
| new_image_format | string | – | Target image format (BMP, GIF, JPG, PNG, TIFF). |
| output_dir | – | – | – |
| output_file_name | – | – | – |
No output schema declared.
No examples provided.
convert_json_to_excel Convert Json To Excel ~235
Convert a local JSON file to Excel (XLSX) using the PDF4me ConvertJsonToExcel API. Provide the file path to UTF-8 JSON. Options: worksheet_name, title formatting, number/date conversion and formats, ignore_null_values, first_row/first_column (1-based), and optional output path.
| Name | Type | Req | Description |
|---|---|---|---|
| convert_number_and_date | boolean | – | Enable number/date cell conversion. |
| date_format | string | – | Date format string for the API. |
| file_path | string | yes | Local path to the JSON file (.json). |
| first_column | integer | – | First data column (1-based). |
| first_row | integer | – | First data row (1-based). |
| ignore_null_values | boolean | – | Skip null values when building the sheet. |
| is_title_bold | boolean | – | Bold title row when supported. |
| is_title_wrap_text | boolean | – | Wrap text in title row when supported. |
| number_format | string | – | Number format string for the API. |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| worksheet_name | string | – | Target worksheet name. |
No output schema declared.
No examples provided.
convert_md_to_pdf Convert Md To Pdf ~111
Convert a local Markdown file (.md) to PDF using the PDF4me ConvertMdToPdf API. Provide the file path to the Markdown file and output_dir where the PDF will be saved. Long HTTP timeouts on requests. complete. Optional output file name (defaults to <input_basename>.pdf).
| Name | Type | Req | Description |
|---|---|---|---|
| file_path | string | yes | Local path to the Markdown file (.md). |
| output_dir | string | yes | Directory to save the PDF (required). |
| output_file_name | – | – | – |
No output schema declared.
No examples provided.
convert_ocr_pdf Convert Ocr Pdf ~197
Convert a PDF to a searchable, editable PDF using the PDF4me ConvertOcrPdf API (OCR). Provide the local path to the input PDF, quality (Draft or High), ocr_when_needed, and language (e.g. eng). The API request body only includes docContent, docName, qualityType, ocrWhenNeeded, and language. If the API returns 202, the tool polls the Location URL until the PDF is ready. Optional output directory and output file name.
| Name | Type | Req | Description |
|---|---|---|---|
| file_path | string | yes | Local path to the PDF to process. |
| language | string | – | OCR language code (e.g. eng). Empty defaults to eng. |
| ocr_when_needed | boolean | – | When true, skip OCR if text is already searchable (sent as "true"/"false"). |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| quality_type | string | – | Draft or High. |
No output schema declared.
No examples provided.
convert_pdf_to_excel Convert Pdf To Excel ~167
Convert a local PDF file to Excel (XLSX) using the PDF4me ConvertPdfToExcel API. Provide the file path to the PDF. Options: quality (Draft/High), merge_all_sheets, language, OCR when needed, and optional output path. Output is always XLSX.
| Name | Type | Req | Description |
|---|---|---|---|
| file_path | string | yes | Local path to the PDF file to convert. |
| language | string | – | Document language hint for OCR/extraction. |
| merge_all_sheets | boolean | – | Merge content into a single sheet when supported. |
| ocr_when_needed | boolean | – | Enable OCR when the API determines it is needed. |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| quality_type | string | – | Draft or High quality for extraction. |
No output schema declared.
No examples provided.
convert_pdf_to_pdfa Convert Pdf To Pdfa ~159
Convert a PDF file to PDF/A (archival ISO format) using the PDF4me PdfA API. Provide the local file path to the PDF. Choose compliance (e.g. PdfA1b), allow_upgrade / allow_downgrade, and optional output path.
| Name | Type | Req | Description |
|---|---|---|---|
| allow_downgrade | boolean | – | Allow downgrading to lower compliance when supported by the API. |
| allow_upgrade | boolean | – | Allow upgrading to higher compliance when supported by the API. |
| compliance | string | – | PDF/A level (PdfA1b is common for basic conformance). |
| file_path | string | yes | Local path to the PDF file to convert. |
| output_dir | – | – | – |
| output_file_name | – | – | – |
No output schema declared.
No examples provided.
convert_pdf_to_powerpoint Convert Pdf To Powerpoint ~170
Convert a local PDF file to PowerPoint (PPTX) using the PDF4me ConvertPdfToPowerPoint API. Provide the file path to the PDF. Options: quality (Draft/High), language, OCR when needed, merge_all_sheets, and optional output path. Output is always PPTX.
| Name | Type | Req | Description |
|---|---|---|---|
| file_path | string | yes | Local path to the PDF file to convert. |
| language | string | – | Document language hint for OCR/extraction. |
| merge_all_sheets | boolean | – | Merge content into a single presentation when supported. |
| ocr_when_needed | boolean | – | Enable OCR when the API determines it is needed. |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| quality_type | string | – | Draft or High quality for extraction. |
No output schema declared.
No examples provided.
convert_pdf_to_word Convert Pdf To Word ~166
Convert a local PDF file to Word (DOCX) using the PDF4me ConvertPdfToWord API. Provide the file path to the PDF. Options: quality (Draft/High), merge_all_sheets, language, OCR when needed, and optional output path. Output is always DOCX.
| Name | Type | Req | Description |
|---|---|---|---|
| file_path | string | yes | Local path to the PDF file to convert. |
| language | string | – | Document language hint for OCR/extraction. |
| merge_all_sheets | boolean | – | Merge content into a single output when supported. |
| ocr_when_needed | boolean | – | Enable OCR when the API determines it is needed. |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| quality_type | string | – | Draft or High quality for extraction. |
No output schema declared.
No examples provided.
convert_to_pdf Convert To Pdf ~87
Convert a local document file (for example DOCX, PPTX, XLSX, images, or text formats) to PDF using the PDF4me ConvertToPdf API. Provide the local file path, plus optional output directory and output file name.
| Name | Type | Req | Description |
|---|---|---|---|
| file_path | string | yes | Local path to the input document file. |
| output_dir | – | – | – |
| output_file_name | – | – | – |
No output schema declared.
No examples provided.
convert_url_to_pdf Convert Url To Pdf ~294
Convert a web page to PDF using the PDF4me ConvertUrlToPdf API. Required input is only web_url (https://...); no local file path is read. Optional: layout, page format, margins, scale, print background, auth (NoAuth or credentials), output_dir/output_file_name for where to save the PDF (default file name output.pdf).
| Name | Type | Req | Description |
|---|---|---|---|
| auth_type | string | – | Site auth mode (e.g. NoAuth; use Basic + username/password if needed). |
| bottom_margin | string | – | – |
| display_header_footer | boolean | – | Print browser header/footer region if supported. |
| layout | string | – | Page orientation (portrait or landscape). |
| left_margin | string | – | – |
| output_dir | – | – | Directory to save the PDF. |
| output_file_name | – | – | File name for the saved PDF. |
| page_format | string | – | Paper size (e.g. A4, Letter, Tabloid per API docs). |
| password | string | – | Optional password when the target URL requires authentication. |
| print_background | boolean | – | Include backgrounds in the PDF. |
| right_margin | string | – | – |
| scale | number | – | Render scale (1.0 = 100%). |
| top_margin | string | – | – |
| username | string | – | Optional username when the target URL requires authentication. |
| web_url | string | yes | Page to render (https://...). |
No output schema declared.
No examples provided.
convert_visio_to_pdf Convert Visio To Pdf ~201
Convert a local Visio file (.vsdx/.vsd/.vsdm) to PDF using the PDF4me ConvertVisio API. Supports PDF options (compliance, page range, hidden pages, foreground/toolbar, auto-fit), sync/async processing, and optional output directory/file name.
| Name | Type | Req | Description |
|---|---|---|---|
| auto_fit | boolean | – | Auto-fit content to page. |
| file_path | string | yes | Local path to the Visio file (.vsdx/.vsd/.vsdm). |
| include_hidden_pages | boolean | – | Include hidden pages. |
| is_pdf_compliant | boolean | – | Make PDF compliant with standards. |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| page_count | integer | – | Number of pages to convert. |
| page_index | integer | – | Start page index (0-based). |
| save_foreground_page | boolean | – | Keep foreground page content. |
| save_tool_bar | boolean | – | Include toolbar content. |
No output schema declared.
No examples provided.
convert_word_to_pdf_form Convert Word To Pdf Form ~91
Convert a local Word document (DOCX) to a PDF form with fillable fields using the PDF4me ConvertWordToPdfForm API. Provide the file path to the DOCX file. Optionally specify async polling and output directory/file name.
| Name | Type | Req | Description |
|---|---|---|---|
| file_path | string | yes | Local path to the Word file (.docx). |
| output_dir | – | – | – |
| output_file_name | – | – | – |
No output schema declared.
No examples provided.
create_barcode Create Barcode ~110
Create a standalone barcode or QR code image (PNG) using the PDF4me Create Barcode API. Pass the text to encode and barcodeType (e.g. qrCode, code128, dataMatrix, ean13, upcA). hideText hides the human-readable label. Saves the file and returns the path.
| Name | Type | Req | Description |
|---|---|---|---|
| barcode_type | string | – | – |
| hide_text | boolean | – | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| text | string | yes | – |
No output schema declared.
No examples provided.
create_images_from_pdf Create Images From Pdf ~239
Render PDF pages to image files using the PDF4me CreateImages API (POST /api/v2/CreateImages). Controls width in pixels, image format (jpeg, png, tiff, etc.), and page selection (top-level pageNrs plus imageAction.PageSelection.PageNrs when the expression parses to integers; use 'all' for all pages). Writes one file per page to output_dir (defaults to the input PDF directory).
| Name | Type | Req | Description |
|---|---|---|---|
| file_path | string | yes | Local path to the PDF file. |
| image_extension | string | – | Output format: jpg, jpeg, bmp, gif, png, tif, tiff, etc. (imageAction.ImageExtension). |
| output_dir | – | – | – |
| page_number | string | – | Page selection string for top-level pageNrs (e.g. '1', '1-2', '1,3,5'). When parseable, also sent as imageAction.PageSelection.PageNrs. 'all' sends pageNrs only (no PageSelection block). |
| width_pixel | string | – | Output image width in pixels (passed as string to imageAction.WidthPixel). |
No output schema declared.
No examples provided.
create_swiss_qr_bill Create Swiss Qr Bill ~404
Create the Swiss QR bill payment part on a PDF using the PDF4me CreateSwissQrBill API (POST /api/v2/CreateSwissQrBill). Required inputs per OpenAPI: docContent, document.Name, iban, crName, crAddressType. Enums match backend: address S|K; currency CHF|EUR; language German|French|Italian|English; referenceType QRR|SCOR|NON; seperatorLine LineWithScissor|Line|None (string None). All other schema fields are optional (amount, creditor/debtor address lines, reference, etc.). Reads the source PDF from pdf_file_path (docContent base64); optional document_name overrides document.Name (defaults to the file basename). Output PDF name is output_file_name if set, otherwise 'swiss_qr_bill.pdf'. Saves next to the PDF unless output_dir is set; optional isAsync / 202 polling.
| Name | Type | Req | Description |
|---|---|---|---|
| amount | – | – | – |
| av1_parameters | – | – | – |
| av2_parameters | – | – | – |
| billing_info | – | – | – |
| cr_address_type | string | – | – |
| cr_city | – | – | – |
| cr_name | string | yes | – |
| cr_postal_code | – | – | – |
| cr_street_or_address_line1 | – | – | – |
| cr_street_or_address_line2 | – | – | – |
| currency | string | – | – |
| document_name | – | – | – |
| iban | string | yes | – |
| language_type | string | – | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| pdf_file_path | string | yes | – |
| reference | – | – | – |
| reference_type | string | – | – |
| seperator_line | string | – | – |
| ud_address_type | – | – | – |
| ud_city | – | – | – |
| ud_name | – | – | – |
| ud_postal_code | – | – | – |
| ud_street_or_address_line1 | – | – | – |
| ud_street_or_address_line2 | – | – | – |
| unstructured_message | – | – | – |
No output schema declared.
No examples provided.
create_zugferd_invoice Create Zugferd Invoice ~338
Create a ZUGFeRD e-invoice using PDF4me CreateZugferdInvoice API (POST /api/v2/CreateZugferdInvoice). Supports inputFormat XML/JSON/CSV, outputMode XmlWithPdf or XmlOnly, conformance level, and language. For XmlWithPdf, provide source PDF via source_pdf_path (docContent/document.Name are derived from the file). Saves output as PDF or XML and returns output metadata.
| Name | Type | Req | Description |
|---|---|---|---|
| conformance_level | string | – | BASIC, COMFORT, or EXTENDED. |
| input_format | string | – | XML, JSON, or CSV. |
| invoice_csv_data | – | – | Local CSV file path when input_format is CSV (file is base64-encoded). |
| invoice_json_data | – | – | Local JSON file path when input_format is JSON (file is base64-encoded). |
| invoice_xml_data | – | – | Local XML file path when input_format is XML (file is base64-encoded). |
| language | – | – | Optional localization language code (e.g. de, en, fr). |
| output_dir | string | – | Directory to save the output file (required). |
| output_file_name | string | – | Output file name (required). |
| output_mode | string | – | XmlWithPdf (PDF with embedded XML) or XmlOnly. |
| render_invoice_on_pdf | boolean | – | Applies to XmlWithPdf output mode. |
| source_pdf_path | – | – | Local source PDF path for XmlWithPdf (used to derive docContent and document.Name). |
| zugferd_version | string | – | ZUGFeRD version (currently only "1.0" per schema). |
No output schema declared.
No examples provided.
crop_image Crop Image ~140
Crop an image via PDF4me CropImage (/api/v2/CropImage). Choose crop_type Border or Rectangle. Border: set left/right/top/bottom border in pixels. Rectangle: set upper_left_x/y and width/height.
| Name | Type | Req | Description |
|---|---|---|---|
| bottom_border | – | – | – |
| crop_type | string | – | – |
| doc_name | – | – | – |
| height | – | – | – |
| image_file_path | string | yes | – |
| left_border | – | – | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| right_border | – | – | – |
| top_border | – | – | – |
| upper_left_x | – | – | – |
| upper_left_y | – | – | – |
| width | – | – | – |
No output schema declared.
No examples provided.
delete_blank_pages_from_pdf Delete Blank Pages From Pdf ~96
Delete blank pages from a PDF via PDF4me DeleteBlankPages (/api/v2/DeleteBlankPages). Provide pdf_file_path and delete_page_option (NoTextNoImages, NoText, NoImages). Saves cleaned PDF to disk.
| Name | Type | Req | Description |
|---|---|---|---|
| delete_page_option | string | – | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| pdf_file_path | string | yes | – |
| request_doc_name | – | – | – |
No output schema declared.
No examples provided.
delete_pdf_pages Delete Pdf Pages ~124
Remove pages from a PDF using the PDF4me DeletePages API. Provide the local PDF path and pageNumbers (e.g. '2', '1,3,5', or '2-4'). Optionally set output directory and output file name.
| Name | Type | Req | Description |
|---|---|---|---|
| file_path | string | yes | Local path to the PDF file. |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| page_numbers | string | yes | Pages to delete, as accepted by the API (e.g. '2', '1,3,5', '2-4'). |
No output schema declared.
No examples provided.
disable_tracking_changes_in_word Disable Track Changes in Word ~100
Disable Word Track Changes via PDF4me /api/v2/DisableTrackingChangesInWord. Input is a local Word file path (.docx or .doc) which is sent as docContent Base64; docName defaults to the input filename. Saves a Word output file with track changes disabled.
| Name | Type | Req | Description |
|---|---|---|---|
| output_dir | – | – | – |
| output_file_name | – | – | – |
| request_doc_name | – | – | – |
| word_file_path | string | yes | – |
No output schema declared.
No examples provided.
enable_tracking_changes_in_word Enable Track Changes in Word ~100
Enable Word Track Changes via PDF4me /api/v2/EnableTrackingChangesInWord. Input is a local Word file path (.docx or .doc) which is sent as docContent Base64; docName defaults to the input filename. Saves a Word output file with track changes enabled.
| Name | Type | Req | Description |
|---|---|---|---|
| output_dir | – | – | – |
| output_file_name | – | – | – |
| request_doc_name | – | – | – |
| word_file_path | string | yes | – |
No output schema declared.
No examples provided.
extract_attachment_from_pdf Extract Attachment From Pdf ~92
Extract embedded file attachments from a PDF via PDF4me ExtractAttachmentFromPdf (/api/v2/ExtractAttachmentFromPdf). pdf_file_path; optional output_dir (defaults next to PDF). Saves extracted_attachments.json when JSON, decodes outputDocuments to files, or saves/extracts ZIP.
| Name | Type | Req | Description |
|---|---|---|---|
| output_dir | – | – | – |
| pdf_file_path | string | yes | – |
| request_doc_name | – | – | – |
No output schema declared.
No examples provided.
extract_form_data_from_pdf Extract Form Data From PDF ~79
Extract all PDF form fields and values via PDF4me /api/v2/ExtractPdfFormData. Input is pdf_file_path; optional request_doc_name and output_dir. Saves extracted_form_data.json with the full API response.
| Name | Type | Req | Description |
|---|---|---|---|
| output_dir | – | – | – |
| pdf_file_path | string | yes | – |
| request_doc_name | – | – | – |
No output schema declared.
No examples provided.
extract_pages_from_pdf Extract Pages From PDF ~100
Extract selected pages from a PDF via PDF4me /api/v2/Extract. Inputs: pdf_file_path and page_numbers (e.g. '1,3,5' or '1-5,10'). Optional request_doc_name and output path settings.
| Name | Type | Req | Description |
|---|---|---|---|
| output_dir | – | – | – |
| output_file_name | – | – | – |
| page_numbers | string | – | – |
| pdf_file_path | string | yes | – |
| request_doc_name | – | – | – |
No output schema declared.
No examples provided.
extract_resources Extract Resources ~105
Extract text and/or embedded images from a PDF via PDF4me ExtractResources (/api/v2/ExtractResources). pdf_file_path, extract_text, extract_images; optional output_dir (defaults next to PDF). Writes extracted_resources.json, extracted_text.txt when text is extracted, and image files.
| Name | Type | Req | Description |
|---|---|---|---|
| extract_images | boolean | – | – |
| extract_text | boolean | – | – |
| output_dir | – | – | – |
| pdf_file_path | string | yes | – |
| request_doc_name | – | – | – |
No output schema declared.
No examples provided.
extract_table_from_pdf Extract Table From Pdf ~88
Extract tables from a PDF via PDF4me ExtractTableFromPdf (/api/v2/ExtractTableFromPdf). pdf_file_path; optional output_dir (defaults next to PDF). Saves extracted_tables.json, per-table table_N.json, and table_N.csv when rows are available.
| Name | Type | Req | Description |
|---|---|---|---|
| output_dir | – | – | – |
| pdf_file_path | string | yes | – |
| request_doc_name | – | – | – |
No output schema declared.
No examples provided.
extract_text_by_expression Extract Text By Expression ~118
Extract text from a PDF matching a regex via PDF4me ExtractTextByExpression (/api/v2/ExtractTextByExpression). pdf_file_path, expression, page_sequence (e.g. '1-' all pages, '1-3', '1,2,3'); optional output_dir. Saves JSON, a matches text file, and CSV.
| Name | Type | Req | Description |
|---|---|---|---|
| expression | string | yes | – |
| output_dir | – | – | – |
| page_sequence | string | – | – |
| pdf_file_path | string | yes | – |
| request_doc_name | – | – | – |
No output schema declared.
No examples provided.
extract_text_from_image Extract Text From Image ~88
Extract text from a local image using the PDF4me ImageExtractText API (POST /api/v2/ImageExtractText). Uses OCR; supports async processing with polling on 202. Returns the parsed JSON response in structured_content and a text summary when possible.
| Name | Type | Req | Description |
|---|---|---|---|
| file_path | string | yes | Local path to the image file (e.g. JPG, PNG, TIFF, WEBP). |
No output schema declared.
No examples provided.
extract_text_from_word Extract Text from Word ~128
Extract text from a Word document via PDF4me /api/v2/ExtractTextFromWord. Supports page range and content filtering options (comments, header/footer, tracked changes). Saves extracted text and JSON response metadata to disk.
| Name | Type | Req | Description |
|---|---|---|---|
| accept_changes | boolean | – | – |
| end_page_number | integer | – | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| remove_comments | boolean | – | – |
| remove_header_footer | boolean | – | – |
| request_doc_name | – | – | – |
| start_page_number | integer | – | – |
| word_file_path | string | yes | – |
No output schema declared.
No examples provided.
fill_pdf_form Fill Pdf Form ~108
Fill form fields in a local PDF using the PDF4me FillPdfForm API. Provide the local PDF path and a JSON object of field/value pairs in form_data. Optionally specify output directory and output file name.
| Name | Type | Req | Description |
|---|---|---|---|
| file_path | string | yes | Local path to the template PDF file to fill. |
| form_data | object | yes | Form field values as key/value pairs (for example {"firstname": "John"}). |
| output_dir | – | – | – |
| output_file_name | – | – | – |
No output schema declared.
No examples provided.
find_and_replace_text Find And Replace Text ~102
Find and replace text in a PDF via PDF4me /api/v2/FindAndReplace. Inputs: pdf_file_path, old_text, new_text, page_sequence; optional output path.
| Name | Type | Req | Description |
|---|---|---|---|
| new_text | string | yes | – |
| old_text | string | yes | – |
| output_dir | – | – | – |
| output_file_name | – | – | – |
| page_sequence | string | – | – |
| pdf_file_path | string | yes | – |
| request_doc_name | – | – | – |
No output schema declared.
No examples provided.
flatten_pdf Flatten Pdf ~79
Flatten a PDF file with the PDF4me API: forms, annotations, and layers become static content. Provide the local file path to the PDF. Optionally specify an output directory and output file name.
| Name | Type | Req | Description |
|---|---|---|---|
| file_path | string | yes | Local path to the PDF file to flatten. |
| output_dir | – | – | – |
| output_file_name | – | – | – |
No output schema declared.
No examples provided.
What is the PDF4me MCP server?
PDF4me is an MCP server listed in the public MCP registry as io.github.pdf4me/pdf4me-mcp. PDF & document automation via the PDF4me API, convert, OCR, extract, edit, secure. This page covers its PyPI package (pdf4me-mcp).
Is the PDF4me MCP server safe to use?
PDF4me scores 62 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the PDF4me MCP server expose?
PDF4me exposes 92 tools: add_attachment_to_pdf, add_barcode_to_pdf, add_form_fields_to_pdf, add_html_header_footer_to_pdf, add_image_stamp_to_pdf, and 87 more. Their descriptions and schemas cost roughly 14,915 tokens of context every time the server is loaded.
Is the PDF4me MCP server still maintained?
PDF4me is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.