MCP LaTeX Server
MCP LaTeX Server
Ein Model Context Protocol (MCP) Server zum Erstellen, Bearbeiten, Validieren und Kompilieren von LaTeX-Dateien. Erstellt mit FastMCP und Pydantic für typsichere, strukturierte Ausgaben.
Funktionen
Erstellen von LaTeX-Dokumenten aus Parametern oder gebündelten Vorlagen (article, beamer, report)
Bearbeiten von Dateien mit Ersetzen-, Einfügen-, Anhängen- und Voranstellen-Operationen
Lesen und Auflisten von
.tex-Dateien innerhalb eines sicheren BasisverzeichnissesValidieren der Syntax — Klammern, Umgebungen, Referenzen, erforderliche Deklarationen
Kompilieren zu PDF mit
pdflatex,xelatexoderlualatexRessourcen — Durchsuchen und Abrufen gebündelter Vorlagen über
latex://URIs
Voraussetzungen
Python 3.11.9+
LaTeX-Distribution (für die Kompilierung):
Installation
Verwendung von uv (empfohlen)
git clone https://github.com/RobertoDure/mcp-latex-server
cd mcp-latex-server
uv pip install -e .Verwendung von pip
git clone <repository-url>
cd mcp-latex-server
python -m venv .venv
# Windows
.venv\Scripts\activate
# macOS/Linux
source .venv/bin/activate
pip install -e .Schnelleinrichtung (Windows)
python quick_setup.pyDies überprüft die Python-Version, installiert Abhängigkeiten, verifiziert, dass der Server korrekt importiert wird, und konfiguriert optional Claude Desktop.
Konfiguration
Der Server verwendet eine einzige Umgebungsvariable:
Variable | Beschreibung | Standardwert |
| Stammverzeichnis für alle Dateioperationen |
|
Alle an Werkzeuge übergebenen Dateipfade werden relativ zu diesem Basisverzeichnis aufgelöst. Der Zugriff außerhalb dieses Verzeichnisses wird verweigert.
MCP-Client-Konfiguration
Claude Desktop
Hinzufügen zu Ihrer claude_desktop_config.json:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"latex-server": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcp-latex-server",
"run",
"latex_server.py"
],
"env": {
"LATEX_SERVER_BASE_PATH": "/path/to/your/latex/files"
}
}
}
}VS Code (GitHub Copilot)
Hinzufügen zu .vscode/mcp.json in Ihrem Arbeitsbereich:
{
"servers": {
"latex-server": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcp-latex-server",
"run",
"latex_server.py"
],
"env": {
"LATEX_SERVER_BASE_PATH": "${workspaceFolder}"
}
}
}
}Werkzeuge
create_latex_file
Erstellen eines neuen LaTeX-Dokuments aus Parametern.
Parameter | Typ | Standardwert | Beschreibung |
|
| erforderlich | Pfad für die neue |
|
|
| Dokumentenklasse |
|
|
| Dokumententitel |
|
|
| Dokumentenautor |
|
|
| Dokumentendatum |
|
|
| Hauptinhalt |
|
|
| Zusätzliche LaTeX-Pakete |
|
|
| Geometrieeinstellungen (z. B. |
create_from_template
Erstellen eines Dokuments aus einer gebündelten Vorlage.
Parameter | Typ | Standardwert | Beschreibung |
|
| erforderlich | Pfad für die neue |
|
|
| Vorlagenname |
edit_latex_file
Bearbeiten einer bestehenden LaTeX-Datei.
Parameter | Typ | Standardwert | Beschreibung |
|
| erforderlich | Pfad zur Datei |
|
| erforderlich | Bearbeitungsoperation |
|
| erforderlich | Text zum Einfügen oder Ersetzen |
|
|
| Zu suchender Text (erforderlich für Ersetzen/Einfügen) |
|
|
| Zeilennummer (1-basiert, Alternative zu |
read_latex_file
Lesen und Zurückgeben des Inhalts einer .tex-Datei.
Parameter | Typ | Standardwert | Beschreibung |
|
| erforderlich | Pfad zur Datei |
list_latex_files
Auflisten aller .tex-Dateien in einem Verzeichnis.
Parameter | Typ | Standardwert | Beschreibung |
|
|
| Zu durchsuchendes Verzeichnis |
|
|
| Unterverzeichnisse durchsuchen |
validate_latex
Überprüfen der LaTeX-Syntax: erforderliche Deklarationen, ausgeglichene Klammern, Umgebungsabgleich, undefinierte Referenzen.
Parameter | Typ | Standardwert | Beschreibung |
|
| erforderlich | Pfad zur Datei |
get_latex_structure
Extrahieren der Dokumentenstruktur: Klasse, Titel, Autor, Pakete und Abschnittshierarchie.
Parameter | Typ | Standardwert | Beschreibung |
|
| erforderlich | Pfad zur Datei |
compile_latex
Kompilieren einer .tex-Datei zu PDF (führt die Engine zweimal aus für Referenzen/Inhaltsverzeichnis).
Parameter | Typ | Standardwert | Beschreibung |
|
| erforderlich | Pfad zur Datei |
|
|
| LaTeX-Engine |
Ressourcen
URI | Beschreibung |
| Verfügbare gebündelte Vorlagen auflisten |
| Inhalt einer bestimmten Vorlage abrufen |
Testen
Testen mit dem MCP Inspector:
uv run mcp dev latex_server.pyOder führen Sie die enthaltene Test-Suite aus:
python test_server.pyFehlerbehebung
Server startet nicht — Überprüfen Sie Python 3.10+ (python --version) und ob mcp installiert ist (pip list | grep mcp).
Kompilierung schlägt fehl — Stellen Sie sicher, dass eine LaTeX-Distribution in Ihrem PATH vorhanden ist (pdflatex --version). Installieren Sie MiKTeX oder TeX Live, falls diese fehlen.
"Access denied"-Fehler — Der angeforderte Dateipfad liegt außerhalb von LATEX_SERVER_BASE_PATH. Verwenden Sie relative Pfade oder passen Sie die Umgebungsvariable an.
Claude kann keine Verbindung herstellen — Überprüfen Sie die Dateipfade in Ihrer MCP-Konfiguration, starten Sie Claude Desktop neu und verifizieren Sie mit uv run mcp dev latex_server.py.
Lizenz
MIT
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/RobertoDure/mcp-latex-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server