julien-calibre

majiayu000's avatarfrom majiayu000

Complete Calibre library management - add/remove books, convert PDF to EPUB, metadata editing, library analysis, cleanup, and e-reader sync (Sony PRS-T1). Use for any ebook or Calibre operation.

⭐0stars🔀0forks📁View on GitHub🕐Updated Jan 5, 2026

When & Why to Use This Skill

This Claude skill provides a comprehensive interface for managing Calibre ebook libraries through natural language. It automates complex digital library workflows including batch format conversion (PDF to EPUB), metadata optimization, library health analysis, and e-reader synchronization, enabling users to maintain a professional-grade ebook collection without manual CLI or GUI navigation.

Use Cases

  • Automated Format Conversion: Effortlessly convert large batches of PDF documents into EPUB format using heuristic analysis to ensure optimal readability on mobile devices and e-readers.
  • Library Maintenance and Cleanup: Automatically identify and remove duplicate books, find entries with missing formats, and fix metadata errors like incorrect titles, authors, or missing covers.
  • Smart Content Sourcing: Search Project Gutenberg for classic literature via web tools and automatically download, format, and import books directly into the Calibre database.
  • Database Analysis and Reporting: Generate detailed statistics about your library, such as language distribution, format counts, and identifying 'empty' book entries that lack actual files.
  • E-Reader Workflow Integration: Prepare and manage book transfers to hardware devices like the Sony PRS-T1, ensuring all files are in the correct format before syncing.
namejulien-calibre
descriptionComplete Calibre library management - add/remove books, convert PDF to EPUB, metadata editing, library analysis, cleanup, and e-reader sync (Sony PRS-T1). Use for any ebook or Calibre operation.
licenseApache-2.0

Calibre Library Management

Complete ebook library management with Calibre.

Configuration

Property Value
Calibre C:\Program Files\Calibre2\
Library C:\Users\julien\OneDrive\Calibre\Calibre Library
E-Reader Sony PRS-T1 (EPUB, PDF, TXT)

IMPORTANT: Close Calibre before using CLI commands.


1. Add Books

Add Local File

& 'C:\Program Files\Calibre2\calibredb.exe' add 'PATH\TO\BOOK.epub' --library-path 'C:\Users\julien\OneDrive\Calibre\Calibre Library'

Add with Metadata

calibredb add "book.epub" --title "Title" --authors "Author" --library-path "..."

Add Folder Recursively

calibredb add "C:\Folder" --recurse --library-path "..."

Download from Project Gutenberg

  1. Search: WebSearch: "TITLE AUTHOR site:gutenberg.org/ebooks"
  2. Extract ID from URL (/ebooks/24850 → 24850)
  3. Download: curl -L "https://www.gutenberg.org/ebooks/24850.epub3.images" -o "book.epub"
  4. Add to Calibre

2. Remove Books

Remove by ID

calibredb remove 123 --permanent --library-path "..."

Remove Multiple

calibredb remove 98,99,100,101 --permanent --library-path "..."

Remove Format Only (keep book)

calibredb remove_format 123 PDF --library-path "..."

Search Then Remove

# Find IDs
calibredb search "author:Zola" --library-path "..."
# Remove
calibredb remove ID1,ID2 --permanent --library-path "..."

3. Convert PDF to EPUB

Basic Conversion

& 'C:\Program Files\Calibre2\ebook-convert.exe' 'input.pdf' 'output.epub'

With Heuristics (better quality)

ebook-convert 'input.pdf' 'output.epub' --enable-heuristics

Add EPUB to Existing Book

calibredb add_format BOOK_ID 'output.epub' --library-path "..."

Find Books Without EPUB

calibredb list --search 'formats:PDF NOT formats:EPUB' --fields id,title,formats --library-path "..."

PDF Types

Type Quality Notes
Text PDF Good Direct conversion
Scanned/Image Poor Needs OCR
Mixed Variable Use heuristics

4. Metadata Management

View Metadata

calibredb show_metadata BOOK_ID --library-path "..."

Set Metadata

calibredb set_metadata BOOK_ID -f 'title:New Title' --library-path "..."
calibredb set_metadata BOOK_ID -f 'authors:Author Name' --library-path "..."
calibredb set_metadata BOOK_ID -f 'languages:fra' --library-path "..."
calibredb set_metadata BOOK_ID -f 'tags:Fiction, Classic' --library-path "..."

Set Cover

calibredb set_metadata BOOK_ID -c 'cover.jpg' --library-path "..."

Extract from File

& 'C:\Program Files\Calibre2\ebook-meta.exe' 'book.epub'

5. Library Analysis

List All Books

calibredb list --library-path "..."

Search by Language

calibredb list --search 'language:eng' --library-path "..."

Find Duplicates

calibredb list --search 'formats:PDF AND formats:EPUB' --fields id,title --library-path "..."

Analysis Scripts

python scripts/analyze/find_empty_books.py      # Books with no format
python scripts/analyze/find_books_without_epub.py  # PDF-only
python scripts/analyze/find_english_books.py    # Filter by language
python scripts/analyze/analyze_library.py       # Format statistics

6. Library Cleanup

Workflow

# 1. Close Calibre + OneDrive
Stop-Process -Name calibre,OneDrive -Force -ErrorAction SilentlyContinue

# 2. Analyze
python scripts/analyze/find_empty_books.py

# 3. Remove
calibredb remove ID1,ID2 --permanent --library-path "..."

# 4. Clean orphaned folders
python scripts/force_delete_orphans.py

# 5. Reopen Calibre

Remove PDF When EPUB Exists

# Find books with both formats
calibredb list --search 'formats:PDF AND formats:EPUB' --fields id,title --library-path "..."

# Remove PDF format
calibredb remove_format BOOK_ID PDF --library-path "..."

7. E-Reader Sync

Device: Sony PRS-T1

  • Formats: EPUB (preferred), PDF, TXT

Check Connection

Get-PnpDevice | Where-Object { $_.FriendlyName -like "*Sony*" -or $_.FriendlyName -like "*Reader*" }

Transfer Books

Use Calibre GUI (no CLI for device sync):

  1. Connect e-reader
  2. Select books in Calibre
  3. Right-click → "Send to device"

Troubleshooting

Issue Solution
Device not detected Unplug, wait 5s, replug
"No suitable format" Convert to EPUB first
Transfer fails Check device storage

Scripts Reference

Script Purpose
scripts/analyze/find_empty_books.py Books with no format
scripts/analyze/find_books_without_epub.py PDF-only books
scripts/analyze/find_english_books.py Filter by language
scripts/manage/remove_books.py Batch removal
scripts/convert/batch_convert.py Batch conversion
scripts/force_delete_orphans.py Clean orphaned folders

Quick Reference

# Add book
calibredb add "book.epub" --library-path "..."

# Remove book
calibredb remove ID --permanent --library-path "..."

# Convert PDF
ebook-convert "input.pdf" "output.epub" --enable-heuristics

# View metadata
calibredb show_metadata ID --library-path "..."

# Set metadata
calibredb set_metadata ID -f 'title:New Title' --library-path "..."

# List all
calibredb list --library-path "..."

# Search
calibredb search "author:Name" --library-path "..."