Skip to content
FunCoding

iyeque-pdf-reader

PDF reader skill using PyMuPDF (fitz) for text extraction and metadata retrieval. Supports encrypted PDFs and handles large documents efficiently.

Star
859
Last commit
Aug 20, 2026

skills/iyeque-pdf-reader/SKILL.md

View on GitHub

PDF Reader (Iyeque)

PDF reader skill for text extraction and metadata retrieval using PyMuPDF.


Installation

pip install pymupdf

Tool API

The skill provides two commands:

1. extract — Extract Text

Extracts plain text from the specified PDF file.

Parameters:

ParameterTypeRequiredDescription
file_pathstring✅Path to the PDF file
--max_pagesinteger❌Maximum number of pages to extract

Usage:

# Extract all text
python3 skills/pdf-reader/reader.py extract /path/to/document.pdf

# Extract first 5 pages only
python3 skills/pdf-reader/reader.py extract /path/to/document.pdf --max_pages 5

Output: Plain text content from the PDF.


2. metadata — Get Document Info

Retrieve metadata about the document.

Parameters:

ParameterTypeRequiredDescription
file_pathstring✅Path to the PDF file

Usage:

python3 skills/pdf-reader/reader.py metadata /path/to/document.pdf

Output: Structured JSON with document metadata.


Metadata Fields

FieldDescription
titleDocument title
authorDocument author
subjectDocument subject
creatorSoftware that created the PDF
producerPDF producer software
creationDateCreation date
modDateModification date
formatPDF format version
encryptionEncryption info (if any)

Example Output

Extract Output

Plain text content from the PDF...

Metadata Output

{
  "title": "Annual Report 2024",
  "author": "John Doe",
  "creationDate": "D:20240115120000Z",
  "creator": "Microsoft Word",
  "producer": "Adobe PDF Library",
  "format": "PDF 1.7"
}

Features

  • Fast extraction using PyMuPDF (fitz)
  • Metadata retrieval including creation/modification dates
  • Page limiting with --max_pages for large documents
  • Encrypted PDF support (password required if applicable)
  • Error handling for corrupted or malformed PDFs

When to Use This Skill

  • Extract text content from PDF files
  • Get document metadata (title, author, dates)
  • Process multiple PDFs for analysis
  • Quick PDF content preview
  • Academic paper text extraction

Python API Alternative

You can also use PyMuPDF directly in Python:

import fitz  # PyMuPDF

# Open PDF
doc = fitz.open("document.pdf")

# Get metadata
print(doc.metadata)

# Extract text from all pages
for page in doc:
    text = page.get_text()
    print(text)

# Extract from specific page
page = doc[0]  # First page (0-indexed)
text = page.get_text()

Notes

  • Uses PyMuPDF (imported as fitz) for fast, reliable PDF processing
  • Supports encrypted PDFs (will modify if password required)
  • Handles large PDFs efficiently with --max_pages option
  • Returns error message if file not found or invalid PDF

Error Handling

ErrorCauseSolution
File not foundInvalid pathCheck file path
Not a valid PDFCorrupted fileVerify file integrity
Encrypted PDFPassword protectedProvide password if required

Similar Skills

Featured

pdf

Read and edit PDFs: extract text and tables, merge, split, rotate, and fill forms.

ANanthropics/skills181k1,119 new stars in the last 7 days

Featured

canvas-design

Create posters and visual art as PNG or PDF, guided by a design philosophy.

ANanthropics/skills181k1,119 new stars in the last 7 days

Featured

docx

Create and edit Word docs with TOC, page numbers, headers and more.

ANanthropics/skills181k1,119 new stars in the last 7 days

Featured

doc-coauthoring

Co-write specs, proposals and decision docs through a structured, iterative workflow.

ANanthropics/skills181k1,119 new stars in the last 7 days

Featured

xlsx

Read and edit spreadsheets: add columns, compute formulas, format, and clean messy data.

ANanthropics/skills181k1,119 new stars in the last 7 days

Featured

pptx

Create and edit slide decks, generate slides from templates, and extract text.

ANanthropics/skills181k1,119 new stars in the last 7 days