doc.page PDF Extraction
by doc.page · remote · no sign-in to list tools · v1.1.0 · published by page.doc
Extract PDFs to Markdown, RAG chunks and cited tables; publish tracked Doc Links with read stats.
7 tools: 1 can delete or cancel things, 1 do something that can't be undone, 1 change things and 4 only read.
Scanned Oct 21, 2026
- Deletes or cancels1Claude Code: deny: see these tools
- Can't be undone1Claude Code: ask: see these tools
- Changes things1Claude Code: ask: see these tools
- Only reads4Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http pdf-extract https://doc.page/api/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
7 tools
Deletes or cancels 1Claude Code: deny
revoke_doc_linkDisable a Doc Link of the API key's account (by id or slug) so the public URL stops serving.No findings
Why it is in this group
- The name "revoke_doc_link" says "revoke": a word for removing or ending something.
Description, as the server wrote it Disable a Doc Link of the API key's account (by id or slug) so the public URL stops serving. The item and its stats remain in the library; on the free plan this frees an active-link slot. Requires an API key.
Can't be undone 1Claude Code: ask
create_doc_linkPublish a PDF as a tracked doc.page Doc Link and get back a shareable URL.No findings
Why it is in this group
- The name "create_doc_link" says "create": a word for a change.
- The description's first verb is "publish": a word for a change that another call does not undo.
Description, as the server wrote it Publish a PDF as a tracked doc.page Doc Link and get back a shareable URL. The link belongs to the API key's account and also appears in its doc.page library. Requires an API key. Free plan: up to 3 active links; custom vanity slugs are premium-only. Optional expiry and open-notification toggle.
Changes things 1Claude Code: ask
extract_pdfExtract a PDF into clean Markdown and structured elements (headings, paragraphs).No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Extract a PDF into clean Markdown and structured elements (headings, paragraphs). Returns the canonical ExtractedDocument object. mode "hybrid" runs a heavier semantic engine that also reconstructs tables and bounding boxes; the default "fast" engine is prose-only (low confidence.tables).
Only reads 4Claude Code: allow
get_chunksSplit a PDF into semantic chunks ready for embeddings (RAG).No findings
Why it is in this group
- The name "get_chunks" says "get": a word for reading.
Description, as the server wrote it Split a PDF into semantic chunks ready for embeddings (RAG). Each chunk carries its text, estimated tokens, starting page, section heading and the source element ids for citation.
get_doc_link_statsReading analytics for one Doc Link of the API key's account, by id or slug.No findings
Why it is in this group
- The name "get_doc_link_stats" says "get": a word for reading.
Description, as the server wrote it Reading analytics for one Doc Link of the API key's account, by id or slug. Always returns the summary (total views, unique visitors, last visit). Premium plans additionally get countries, visitor companies (as_org) and per-page views + average dwell time; pass include:["visits"] for the recent visit rows. Requires an API key.
list_doc_linksList the Doc Links of the API key's account (id, slug, URL, name, disabled/expiry state, total views, last view).No findings
Why it is in this group
- The name "list_doc_links" says "list": a word for reading.
Description, as the server wrote it List the Doc Links of the API key's account (id, slug, URL, name, disabled/expiry state, total views, last view). Use this to recover links created in earlier sessions before querying stats. Requires an API key.
list_tablesReturn every table in a PDF as structured JSON (reconstructed rows and columns) with page and bounding box for verifiable citations.No findings
Why it is in this group
- The name "list_tables" says "list": a word for reading.
Description, as the server wrote it Return every table in a PDF as structured JSON (reconstructed rows and columns) with page and bounding box for verifiable citations. Uses the semantic (hybrid) engine.
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.1.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http pdf-extract https://doc.page/api/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__pdf-extract__get_chunks",
"mcp__pdf-extract__list_tables",
"mcp__pdf-extract__list_doc_links",
"mcp__pdf-extract__get_doc_link_stats"
],
"ask": [
"mcp__pdf-extract__extract_pdf",
"mcp__pdf-extract__create_doc_link"
],
"deny": [
"mcp__pdf-extract__revoke_doc_link"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as pdf-extract. Review it before you use it.