About Texflow MCP
Texflow MCP is an MCP server in the Security category: laTeX document compiler with MCP interface — AI agents author documents via structured model, TeXFlow handles LaTeX mechanics.
Install
git clone https://github.com/aaronsb/texflow-mcpThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Tools (6)
documentCreate, ingest markdown, show outline, read sections
Parameters not published.
editInsert, replace, delete, move blocks (section, paragraph, figure, table, code, equation, list, raw)
Parameters not published.
layoutColumns, fonts, paper, margins, headers/footers, TOC
Parameters not published.
queueBatch multiple operations in one call
Parameters not published.
referenceSearch LaTeX commands, symbols, packages, error help
Parameters not published.
renderCompile to PDF, preview page as PNG, export `.tex`
Parameters not published.
Ask AI
Ask AI about Texflow MCP
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
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
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.