Skip to content
Back to search
100
MCP live MCP 2025-11-25 http

KDAN PDF MCP

com.kdandoc.mcp/kdan-pdf-mcp

Upload, edit, compress, protect, redact, and compare PDFs with KDAN PDF in Claude and ChatGPT.

Uptime
100.0%
1 direct probes · 30d
Response
821ms
last probe
Tools
16
callable
Resources
3
readable
Prompts
0
available

Tools · 16

compare_pdfs

MANDATORY for all document comparison requests. Compare two PDFs side-by-side. When the user asks to compare, diff, or find differences between two PDFs, you MUST call this tool — NEVER attempt to co…

get_latest_comparison

Re-run the most recent PDF comparison for a session. For widget recovery only. The comparison widget calls this when the host did not hand it the comparison payload. Prefer compare_pdfs when both job…

compress_pdf

Compress a PDF to reduce its file size and return a new versioned file. MANDATORY: Before calling this tool, call 'check_upload_status' with the session_id to confirm the file exists and retrieve the…

delete_pdf_page

Delete one or more pages from a PDF and return a new versioned file. MANDATORY: Before calling this tool, call 'check_upload_status' with the session_id to confirm the file exists and retrieve the la…

set_password

Add password protection to an unprotected PDF file. Creates a NEW job_id (with parent_job_id linking to the source). After the operation completes, call 'view_pdf' with the new job_id to display the …

change_password

Change the password of an already-protected PDF file. Creates a NEW job_id (with parent_job_id linking to the source). After the operation completes, call 'view_pdf' with the new job_id to display th…

list_redactable_line_text

Return per-page, per-line text for identifying redaction targets. Read-only: does not modify job state. ALWAYS call this before redact_by_text_range. The returned 'text' field for each line is the so…

redact_by_text_range

Redact PDF text by specifying the exact text to remove on each line. MANDATORY WORKFLOW — follow every step in order before calling this tool: Step 1 — Retrieve line text: Call list_redactable_l…

upload_pdf

Upload a PDF from a ChatGPT file attachment. MANDATORY WORKFLOW — follow EVERY step in order: 1. ALWAYS call check_upload_status FIRST — even if you think the file is new. 2. If a job with the same f…

batch_upload_pdf

Upload multiple PDF files from ChatGPT file attachments. Use this when the user provides multiple file attachments in ChatGPT. Downloads each PDF from its signed URL and stores it. Returns session_id…

create_upload_page

Display an interactive PDF upload widget directly in the chat. Use this when the user wants to upload a local PDF file from their device. This is the standard upload method for MCP clients (e.g. Clau…

check_upload_status

Check existing uploads and determine which files still need uploading. Call this BEFORE upload_pdf or create_upload_page to avoid duplicate uploads. Also call it after the user uploads via the widget…

view_pdf

Display an already-uploaded PDF in an interactive viewer widget. Call this after delete_pdf_page, set_password, change_password, redact_pii, and redact_by_text_range to show the updated PDF. Also cal…

get_pdf_status

Return current status of a PDF viewer job. Used internally by the viewer widget.

get_pdf_info

Use this when you need to read the text content of each page to decide which pages to delete. Returns page count and a text preview of every page. Use for text-based identification: table of contents,…

get_pdf_page_images

Use this when you need to visually inspect PDF pages to identify content that cannot be detected from text alone — for example, pages containing a logo, a photograph, a watermark, a QR code, or any vi…

Resources · 3

pdf-compare-viewer-widget

回傳 PDF Compare Widget 的 HTML 內容。

ui://widget/pdf-compare-viewer.html
pdf-upload-widget

回傳 PDF Upload Widget 的 HTML 內容。

ui://widget/pdf-upload-widget.html
pdf-mcp-viewer-widget

回傳 PDF Viewer Widget 的 HTML 內容。

ui://widget/pdf-mcp-viewer.html

How to use

Add to your Claude Desktop / Cursor / Cline MCP config:

{
  "mcpServers": {
    "kdan_pdf_mcp": {
      "url": "https://mcp.kdandoc.com/mcp",
      "transport": "http"
    }
  }
}