PickSkill
← Back

MarceauSolutions/md-to-pdf-mcp

README.md
Rendered from GitHub raw
View raw ↗

Markdown to PDF Converter

Convert markdown (.md) files into professional, interactive PDF documents with automatic table of contents.

mcp-name: io.github.wmarceau/md-to-pdf

Features

  • Automatic Table of Contents - Generated from markdown headers
  • Interactive Navigation - Clickable TOC links to sections
  • Professional Styling - Clean, readable PDF output
  • Code Block Support - Syntax highlighting preserved
  • Table Support - Markdown tables convert to PDF tables
  • Image Support - Embedded images in PDFs
  • Batch Conversion - Process multiple files at once
  • MCP Integration - Use as an MCP server for AI assistants

Use Cases

  • Convert documentation to shareable PDFs
  • Create professional reports from markdown
  • Generate user manuals with navigation
  • Archive markdown content in PDF format
  • Prepare presentations or handouts
  • AI-powered document generation workflows

Project Structure

md-to-pdf/
├── src/
│   ├── md_to_pdf.py          # Core conversion logic
│   └── convert.sh            # Wrapper script (sets library paths)
├── mcp-server/
│   └── md_to_pdf_mcp.py      # MCP server wrapper
├── registry/
│   └── manifest.json         # MCP Registry manifest
├── workflows/
│   └── convert-md-to-pdf.md  # Conversion workflow guide
├── testing/                  # Multi-agent test infrastructure
├── VERSION                   # Current version
├── CHANGELOG.md              # Version history
├── SKILL.md                  # MCP skill documentation
└── README.md                 # This file

Requirements

  • Python 3.8+
  • markdown2 (markdown parsing)
  • weasyprint (PDF generation)
  • pygments (code syntax highlighting)
  • mcp (MCP server - for MCP mode only)

macOS Additional Requirements

brew install pango cairo

Quick Start

CLI Usage

# Set library path (macOS)
export DYLD_LIBRARY_PATH=/opt/homebrew/lib:$DYLD_LIBRARY_PATH
 
# Convert single file
python src/md_to_pdf.py input.md output.pdf
 
# Using wrapper script
./src/convert.sh input.md output.pdf
 
# Batch convert
python src/md_to_pdf.py "docs/*.md" --output-dir pdfs/
 
# With custom styling
python src/md_to_pdf.py input.md output.pdf --css custom.css
 
# Without table of contents
python src/md_to_pdf.py input.md output.pdf --no-toc

MCP Server Usage

# Install MCP SDK
pip install mcp
 
# Run MCP server
python mcp-server/md_to_pdf_mcp.py

MCP Tools

Tool Description
convert_markdown_to_pdf Convert markdown to PDF with optional TOC
extract_toc Extract table of contents structure
get_default_styles Get default CSS for customization

See SKILL.md for detailed MCP tool documentation.

Version

Current version: 1.0.0

License

MIT License