◆ ClaudeThings
PromptsBlogUse casesFree toolsGet ClaudeThings
Home/Blog/Documents
Document workflows

Claude Skills for PDF: Extract, Fill, Merge, OCR, and Generate Real Files

July 20268 min readReal files, not summaries

PDF is the format everyone has to deal with and nobody enjoys: invoices, contracts, statements, scanned forms, hundred-page reports. Claude can read a PDF you upload — but reading is only half the job. A PDF skill lets Claude operate on the file: merge, split, fill, extract, OCR, and generate real documents. Here is how that works, and why the skill approach is dramatically more reliable than prompting.

Reading a PDF vs working with PDFs

Drop a PDF into a chat and Claude will happily summarize it, pull out the key numbers, or answer questions about clause fourteen. That is document comprehension, and it needs no skill at all.

What comprehension cannot do is give you a file back. Merging six PDFs into one, filling a form with three hundred rows of data, splitting a report by chapter, stamping a watermark on every page, OCR-ing a stack of scans so they become searchable — these are file operations. They are deterministic, they have exactly one correct answer, and a language model approximating them is the wrong tool. So a well-built PDF skill does not ask Claude to approximate: it ships the code.

What a PDF skill actually contains

A skill is a folder — .claude/skills/pdf/SKILL.md plus whatever it bundles. The markdown holds the routing logic and the scripts do the work. Anthropic's open-source document skills are the reference implementation of this pattern, and it looks roughly like this:

  • A description that triggers on real situations — anything involving a .pdf file, extracting text or tables, merging, splitting, filling a form, or producing a PDF as the deliverable.
  • A decision tree in the body. Is the PDF text-based or scanned? Does it have a form layer, or does the form need to be filled by overlay? Is the task extraction, transformation, or creation? Each branch points at a different tool.
  • Bundled Python scripts using the standard libraries — pypdf and friends for structure, an OCR engine for scans, a rendering library for generation.
  • Explicit failure handling. If text extraction returns almost nothing, the document is scanned: run OCR rather than reporting an empty file. This single rule fixes the most common PDF failure people hit.

The jobs a PDF skill does well

Extraction. Text, tables, and images out of a document and into something usable — CSV, JSON, markdown. Tables are the hard part, and a script that understands page structure beats a model reading a wall of characters.

Form filling. Given a fillable PDF and a data source, populate every field programmatically. This is the classic case where doing it once by hand takes ten minutes and doing it two hundred times takes a script.

Merging, splitting, and rotating. Combine an appendix into a report, split a scanned batch into individual invoices, fix pages someone scanned upside down.

OCR. Turn scans into searchable documents, so everything downstream — grep, extraction, analysis — starts working.

Generation. Produce a properly typeset PDF report, invoice, or one-pager from data, with real page breaks and real headers, rather than a markdown file someone has to print.

Encryption and redaction. Lock a document with a password, or strip sensitive content before sharing. Redaction deserves a warning: covering text with a black rectangle does not remove it. A serious skill deletes the underlying content.

Installing a PDF skill

Copy the skill folder into .claude/skills/ in a project, or ~/.claude/skills/ to have it everywhere — document skills are the classic case for installing globally, since PDFs show up in every kind of work. Then check that the dependencies the scripts need are installed, and confirm the skill fires by asking for something ordinary like "pull the tables out of this statement".

If nothing happens, the description is almost certainly too vague. Our free SKILL.md validator catches the frontmatter issues that stop a skill from loading at all, and the triggering guide explains how descriptions get matched.

The pattern worth stealing

PDF skills teach a lesson that applies far beyond documents: let the model decide, let the code execute. The markdown handles judgment — which branch applies, what the user actually wants, when to ask. The scripts handle everything with a single correct answer. Skills that follow this split are reliable. Skills that ask a model to do arithmetic-grade work in prose are the ones that quietly produce wrong output and sound confident about it.

Document skills, pre-installed: ClaudeThings bundles PDF, Word, Excel, and PowerPoint skills — scripts included, triggers tuned — among 103 skills, 89 agents, and 181 commands. See the kits →

FAQ

Can Claude actually edit a PDF, or just describe changes? +
With a PDF skill it edits the real file — merging, splitting, filling, watermarking, encrypting — because the skill bundles scripts that manipulate the document directly. Without one, you get a description of what should change.
What about scanned PDFs? +
A scan is a picture of text, so extraction returns nothing. A good skill detects the empty result and runs OCR to add a text layer first — a branch that is written into the skill rather than remembered by you.
Does this work with Word and Excel too? +
Yes. The same pattern covers .docx, .xlsx, and .pptx, and the skills are usually installed as a set — most real document work crosses formats anyway.

Keep reading

Claude Skills Examples

What a SKILL.md looks like, across six categories.

Read →

Claude Skills for Research

The natural companion: PDFs in, literature review out.

Read →

The Skills Worth Installing First

Where document skills sit in a complete library.

Read →
◆ ClaudeThings

Your AI engineering & marketing team for Claude Code.

Product
What's insideKitsPricingFAQ
Resources
Claude promptsBlogUse casesComparisonsFree tools
Legal
LegalTermsPrivacyRefundsDisclaimer
Connect
epictools.io@gmail.comclaudethings.com
Unofficial & independent. ClaudeThings is not affiliated with, endorsed by, or sponsored by Anthropic. "Claude," "Claude Code," and "Anthropic" are trademarks of Anthropic. Content on this site is for educational purposes — see our disclaimer.

© 2026 ClaudeThings. All rights reserved.