markdown2pdf-mcp

by 2b3pro

Integrations

  • Converts Markdown documents to PDF files with support for syntax highlighting, custom styling, and optional watermarking. Handles standard Markdown elements including headers, lists, tables, code blocks, and images.

  • Uses Puppeteer and Chrome's rendering engine to generate high-quality PDFs from Markdown content with reliable resource loading and rendering of modern web features and fonts.

Markdown2PDF MCP Server (markdown2pdf-mcp)

An MCP server for converting Markdown documents to PDF files. This server provides a simple and efficient way to generate PDFs from Markdown content with support for syntax highlighting and custom styling. Also allows for watermarking on page 1.

Inspired by Alan Shaw's markdown-pdf.

Features

  • Convert Markdown to PDF with a single command
  • Syntax highlighting for code blocks
  • Custom CSS styling for PDF output
  • Support for standard Markdown formatting
  • Modern PDF generation using Chrome's rendering engine
  • Excellent support for modern web features and fonts
  • Reliable resource loading and rendering

Limitations

The following markdown elements are not supported:

  • LaTeX math equations (e.g., $x^2$ or $$\sum_{i=1}^n x_i$$)
  • Complex mathematical formulas or scientific notation

Stick to these supported markdown elements:

  • Headers (all levels)
  • Text formatting (bold, italic, strikethrough)
  • Lists (ordered and unordered)
  • Code blocks with syntax highlighting
  • Tables
  • Blockquotes
  • Links
  • Images (both local files and external URLs)
  • Task lists

Installation

# Clone the repository git clone https://github.com/2b3pro/markdown2pdf-mcp.git # Navigate to the project directory cd markdown2pdf-mcp # Install dependencies npm install # Build the project npm run build

Usage

Starting the Server

npm start

Using the MCP Tool

The server provides a single tool create_pdf_from_markdown with the following parameters:

{ // Required parameters markdown: string; // Markdown content to convert // Optional parameters with defaults outputFilename?: string; // Filename for the PDF (e.g., "output.pdf") paperFormat?: string; // 'letter' (default), 'a4', 'a3', 'a5', 'legal', 'tabloid' paperOrientation?: string; // 'portrait' (default), 'landscape' paperBorder?: string; // '2cm' (default), accepts decimal values with CSS units (e.g., '1.5cm', '2.5mm', '0.5in', '10.5px') watermark?: string; // Optional watermark text (max 15 characters, uppercase) }

Example with options:

await use_mcp_tool({ server_name: "markdown2pdf", tool_name: "create_pdf_from_markdown", arguments: { markdown: "# Hello World\n\nThis is a test document.", outputFilename: "output.pdf", paperFormat: "a4", paperOrientation: "landscape", paperBorder: "1.5cm", watermark: "DRAFT", }, });

Example minimal usage:

await use_mcp_tool({ server_name: "markdown2pdf", tool_name: "create_pdf_from_markdown", arguments: { markdown: "# Hello World\n\nThis is a test document.", outputFilename: "output.pdf", }, });

Configuration

Output Directory

You can configure the output directory in your MCP settings file for apps that use MCP such as Cline or Claude. If not configured, it will save files to $HOME:

{ "mcpServers": { "markdown2pdf": { "command": "node", "args": ["path/to/markdown2pdf-mcp/build/index.js"], "env": { "M2P_OUTPUT_DIR": "/path/to/output/directory" } } } }

The tool automatically handles file name conflicts by appending incremental numbers (e.g., output.pdf, output-1.pdf, output-2.pdf).

Dependencies

Chrome Version

This package uses Chrome v131.0.6778.204 for consistent PDF generation across all installations. This version is automatically installed when you run npm install.

  • tmp - Temporary file handling

Development

# Build the project npm run build # Start the server npm start

License

MIT

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

local-only server

The server can only run on the client's local machine because it depends on local resources.

An MCP server for converting Markdown documents to PDF files.

  1. Features
    1. Limitations
      1. Installation
        1. Usage
          1. Starting the Server
          2. Using the MCP Tool
        2. Configuration
          1. Output Directory
        3. Dependencies
          1. Chrome Version
            1. Development
              1. License
                1. Contributing

                  Related MCP Servers

                  • A
                    security
                    A
                    license
                    A
                    quality
                    MCP server for seamless document format conversion using Pandoc, supporting Markdown, HTML, PDF, DOCX (.docx), csv and more.
                    Last updated -
                    1
                    104
                    Python
                    MIT License
                    • Apple
                  • A
                    security
                    A
                    license
                    A
                    quality
                    MCP server for collecting code from files and directories into a single markdown document.
                    Last updated -
                    2
                    4
                    Python
                    MIT License
                  • A
                    security
                    A
                    license
                    A
                    quality
                    Converts various file formats to Markdown using the MarkItDown utility and can be integrated with MCP clients for seamless document processing and conversion.
                    Last updated -
                    26
                    Python
                    MIT License
                  • -
                    security
                    A
                    license
                    -
                    quality
                    An MCP server that provides multiple file conversion tools for AI agents, supporting various document and image format conversions including DOCX to PDF, PDF to DOCX, image conversions, Excel to CSV, HTML to PDF, and Markdown to PDF.
                    Last updated -
                    3
                    Python
                    MIT License
                    • Linux
                    • Apple

                  View all related MCP servers

                  ID: t13rjduffx