LaTeX PDF MCP Server
Enables AI assistants to convert LaTeX source code into professionally formatted PDF documents with comprehensive error handling and local file generation capabilities.
README
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:
- Node.js (version 18 or higher)
- LaTeX Distribution: A complete LaTeX installation such as:
- latexmk: Usually included with LaTeX distributions
Installation
From npm (Recommended)
npm install -g latexpdf-mcp
From Source
- Clone the repository:
git clone https://github.com/ihor-sokoliuk/latexpdf-mcp.git
cd latexpdf-mcp
- Install dependencies:
pnpm install
- 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:
- Navigate to the output directory (default:
C:\Users\Admin\Documents\GeneratedPDF, or your customLATEXPDF_OUTPUT_DIR):
cd [YOUR_OUTPUT_DIRECTORY]
- Start a local HTTP server:
python -m http.server
- 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
- LaTeX not found: Ensure LaTeX is properly installed and
latexmkis in your PATH - Permission errors: Check write permissions for the output directory
- 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
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
License
This project is licensed under the MIT License. See the LICENSE file for details.
Links
- Repository: https://github.com/ihor-sokoliuk/latexpdf-mcp
- Issues: https://github.com/ihor-sokoliuk/latexpdf-mcp/issues
- Model Context Protocol: https://modelcontextprotocol.io
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.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.