TeXFlow
A document authoring and composition server for creating PDFs from LaTeX and Markdown, supporting collaborative editing and project-based workflows.
TeXFlow MCP
A LaTeX document compiler with an MCP interface. AI agents operate on a structured document model — sections, paragraphs, figures, tables — while TeXFlow handles all LaTeX mechanics: packages, preamble, fonts, and compilation.
Install
pip install texflow-mcp
Or run without installing:
uvx texflow-mcp
System dependencies (optional)
TeXFlow compiles documents to PDF using XeLaTeX. Without it, you can still build and export .tex files.
# Arch
pacman -S texlive-xetex texlive-fontsrecommended texlive-fontsextra
# Debian/Ubuntu
apt install texlive-xetex texlive-fonts-recommended texlive-fonts-extra
# Fedora
dnf install texlive-xetex texlive-collection-fontsrecommended texlive-collection-fontsextra
For page preview (PNG), install poppler-utils (provides pdftoppm).
Configure with Claude Code
claude mcp add texflow -- uvx texflow-mcp
That's it. Restart Claude Code and the tools are available.
To set a workspace directory (where documents are saved):
claude mcp add texflow -- uvx texflow-mcp ~/Documents/TeXFlow
Configure with Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"texflow": {
"command": "uvx",
"args": ["texflow-mcp"]
}
}
}
How it works
TeXFlow has two entry flows, both converging on the same in-memory document model:
- Scaffold —
document(action="create")builds an empty document skeleton. Add content withedit(action="insert"). - Markdown ingest —
document(action="ingest", source="paper.md")parses markdown into the model. Refine layout from there.
The model auto-saves to disk as JSON. LaTeX is only ever an output artifact — you never edit .tex directly.
Tools
| Tool | Purpose |
|---|---|
document | Create, ingest markdown, show outline, read sections |
layout | Columns, fonts, paper, margins, headers/footers, TOC |
edit | Insert, replace, delete, move blocks (section, paragraph, figure, table, code, equation, list, raw) |
render | Compile to PDF, preview page as PNG, export .tex |
reference | Search LaTeX commands, symbols, packages, error help |
queue | Batch multiple operations in one call |
Every response includes a workflow state hint showing where you are and what to do next.
Example session
> document(action="create", title="My Paper", document_class="article")
> queue(operations=[
{"tool": "edit", "action": "insert", "block_type": "section", "title": "Introduction", "level": 1},
{"tool": "edit", "action": "insert", "content": "This paper explores...", "section": "Introduction"},
{"tool": "edit", "action": "insert", "block_type": "section", "title": "Methods", "level": 1},
{"tool": "layout", "font": "palatino", "columns": 2}
])
> render(action="compile")
Development
git clone https://github.com/aaronsb/texflow-mcp
cd texflow-mcp
uv sync
uv run pytest tests/ -v # 222 tests
uv run texflow # Start MCP server
License
MIT
Related Servers
Google Sheets
A server that connects to the Google Sheets API, enabling AI-driven spreadsheet automation and data manipulation.
Google MCP Tools
Integrate Google services like Gmail, Calendar, Drive, and Tasks with MCP.
Doc Lib MCP
An MCP server for document ingestion, chunking, semantic search, and note management.
IT Tools
Provides access to over 70 IT tools and utilities for developers and IT professionals, including encoding, text manipulation, and network tools.
Desktop Automation
Control your desktop with AI. Automate mouse movements, keyboard inputs, and screen captures.
MCP Data Analizer
Analyze and visualize data from .xlsx and .csv files using matplotlib and plotly.
Canvas
Integrates with the Canvas Learning Management System (LMS), supporting FERPA-compliant anonymization and privacy controls.
OneNote
Interact with Microsoft OneNote using AI language models like Claude and other LLMs.
Unified MCP Suite
A collection of MCP servers for media tools, information retrieval, PDF creation, and presentation generation.
MCP Client Configuration Server
Manages configurations for MCP clients, automatically detecting file paths based on OS and client.