LaTeX PDF MCP Server

Converts LaTeX source code into professionally formatted PDF documents.

LaTeX PDF MCP Server

A Model Context Protocol (MCP) server that provides tools for converting LaTeX source code into PDF documents. This server enables AI assistants to generate high-quality PDF documents from LaTeX markup with professional formatting capabilities.

Features

  • LaTeX to PDF Conversion: Convert LaTeX source code directly to PDF format
  • Professional Document Generation: Supports all standard LaTeX features for academic and professional documents
  • Local File Generation: Creates PDF files in a specified directory for easy access
  • HTTP Server Integration: Generates downloadable links for created PDFs
  • Error Handling: Comprehensive error reporting for LaTeX compilation issues

Prerequisites

Before using this MCP server, ensure you have:

  1. Node.js (version 18 or higher)
  2. LaTeX Distribution: A complete LaTeX installation such as:
  3. latexmk: Usually included with LaTeX distributions

Installation

From npm (Recommended)

npm install -g latexpdf-mcp

From Source

  1. Clone the repository:
git clone https://github.com/ihor-sokoliuk/latexpdf-mcp.git
cd latexpdf-mcp
  1. Install dependencies:
pnpm install
  1. Build the project:
pnpm run build

Configuration

Claude Desktop Configuration

Add the server to your Claude Desktop configuration file:

Windows: %APPDATA%\Claude\claude_desktop_config.json macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Linux: ~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "latexpdf-mcp": {
      "command": "latexpdf-mcp",
      "env": {
        "LATEXPDF_OUTPUT_DIR": "/path/to/your/pdf/directory"
      }
    }
  }
}

Output Directory

By default, PDFs are generated in: C:\Users\Admin\Documents\GeneratedPDF

You can customize the output directory by setting the LATEXPDF_OUTPUT_DIR environment variable in your MCP configuration.

Example configurations:

Windows:

{
  "mcpServers": {
    "latexpdf-mcp": {
      "command": "latexpdf-mcp",
      "env": {
        "LATEXPDF_OUTPUT_DIR": "C:\\Users\\YourName\\Documents\\MyPDFs"
      }
    }
  }
}

macOS/Linux:

{
  "mcpServers": {
    "latexpdf-mcp": {
      "command": "latexpdf-mcp",
      "env": {
        "LATEXPDF_OUTPUT_DIR": "/home/yourname/Documents/PDFs"
      }
    }
  }
}

Usage

Once configured, you can use the server through your MCP-compatible client:

Available Tools

create_pdf

Converts LaTeX source code into a PDF document.

Parameters:

  • file_name (string, required): Name of the output PDF file (must end with .pdf)
  • latex_source (string, required): LaTeX source code to convert

Example:

\documentclass{article}
\usepackage[utf8]{inputenc}
\title{Sample Document}
\author{Your Name}
\date{\today}

\begin{document}
\maketitle

\section{Introduction}
This is a sample LaTeX document generated via MCP.

\subsection{Features}
\begin{itemize}
    \item Professional formatting
    \item Mathematical expressions: $E = mc^2$
    \item Cross-references and citations
\end{itemize}

\end{document}

PDF Access

After generating a PDF, you can access it via HTTP server:

  1. Navigate to the output directory (default: C:\Users\Admin\Documents\GeneratedPDF, or your custom LATEXPDF_OUTPUT_DIR):
cd [YOUR_OUTPUT_DIRECTORY]
  1. Start a local HTTP server:
python -m http.server
  1. Access your PDFs at http://localhost:8000/[filename].pdf

The server automatically provides download links in this format when PDFs are generated.

Development

Project Structure

latexpdf-mcp/
├── index.ts              # Main server implementation
├── package.json          # Package configuration
├── tsconfig.json         # TypeScript configuration
├── pnpm-lock.yaml        # Dependency lock file
└── dist/                 # Compiled JavaScript output

Building

pnpm run build

Development Mode

pnpm run watch

Troubleshooting

Common Issues

  1. LaTeX not found: Ensure LaTeX is properly installed and latexmk is in your PATH
  2. Permission errors: Check write permissions for the output directory
  3. Compilation errors: Review LaTeX syntax and required packages

Error Messages

The server provides detailed error messages for:

  • Missing LaTeX installation
  • Compilation failures
  • File system permissions
  • Invalid input parameters

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

License

This project is licensed under the MIT License. See the LICENSE file for details.

Links

Author

Ihor Sokoliuk - GitHub Profile


This MCP server enables seamless LaTeX to PDF conversion within AI-assisted workflows, perfect for generating academic papers, technical documentation, and professional reports.

Related Servers