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
myAI Memory Sync
Synchronizes memory templates across different Claude interfaces.
Yandex Tracker
Integrates with Yandex Tracker, allowing an AI assistant to interact with its task management system via the MCP protocol.
MCP Currency Converter Server
Provides real-time currency conversion and exchange rate data using the Frankfurter API.
Linear MCP Server
Manage projects, issues, and teams using the Linear API.
CyberEdu MCP Server
This is the Oficial Model Context Protocol (MCP) server for the CyberEdu CTF platform (cyber-edu.co / cyberedu.ro)
GSuite
Interact with Google products, including Gmail and Calendar.
Todoist
An unofficial server for managing Todoist tasks, allowing agents to create, list, and complete them.
Shortcut
Access and search tickets on Shortcut.com.
Google Sheets MCP
A server for interacting with Google Sheets, allowing you to read, write, and manage spreadsheet data.
Teamwork MCP
Connects to the Teamwork API to interact with projects and tasks.