io.github.YounesBensafia/overleaf-mcp-server
MCP server for managing Overleaf projects through Git synchronization.
What can you do with io.github.YounesBensafia/overleaf-mcp-server?
- Connects MCP-compatible clients to your Overleaf project through Git sync.
- Exposes file-level tools to list, read, write, and sync project content.
- Keeps workflow simple: pull latest files, edit, then push back to Overleaf.
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
overleaf-mcp-integrationclaude mcp add overleaf-mcp-server -- uvx overleaf-mcp-integration==0.1.0
{
"mcpServers": {
"overleaf-mcp-server": {
"command": "uvx",
"args": [
"overleaf-mcp-integration==0.1.0"
]
}
}
}
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Contents
Overleaf MCP Server
An MCP server for managing Overleaf projects through Git synchronization.
What This Server Does
- Connects MCP-compatible clients to your Overleaf project through Git sync.
- Exposes file-level tools to list, read, write, and sync project content.
- Keeps workflow simple: pull latest files, edit, then push back to Overleaf.
Architecture
flowchart LR
C[MCP Client\nClaude Desktop / other MCP host] -->|Tool Call| S[Overleaf MCP Server]
S -->|Git Sync| O[Overleaf Git Remote]
S -->|Read / Write| L[Local Repo Mirror]
L -->|Commit + Push| O
O -->|Pull / Fetch| L
S -->|Tool Result| C
Tool Workflow
sequenceDiagram
participant Client as MCP Client
participant Server as Overleaf MCP Server
participant Local as Local Mirror
participant Overleaf as Overleaf Git
Client->>Server: list_files / read_file
Server->>Local: Ensure local clone
Server->>Overleaf: git pull
Overleaf-->>Server: latest content
Server-->>Client: file list / file content
Client->>Server: write_file(path, content)
Server->>Local: update file
Server->>Local: git commit
Server->>Overleaf: git push
Server-->>Client: success + metadata
Requirements
- Python 3.13+
uvpackage manager- An Overleaf plan with Git integration (individual, group, or institution license). Check if your institution provides free access at Overleaf for Institutions - use your institutional email. If your institution is not listed, upgrade your plan.
Git Setup
- Enable Git - open your project on Overleaf → Menu → enable Git under Integrations.
- Copy project ID - from the browser URL (e.g.
https://www.overleaf.com/project/69a4f7cc4eaf13bd56de5b04→69a4f7cc4eaf13bd56de5b04). - Generate a Git token - Account Settings → Git integration authentication tokens → Generate new token.
- Configure
.env- copy.env.exampleto.envand fill in:
OVERLEAF_TOKEN=your_git_token
PROJECT_ID=your_project_id
project_idcan also be passed per tool call, butPROJECT_IDis still required by the server configuration.
The Overleaf Git token is account-wide credential material. Store it only in
the MCP client's environment or a protected .env file, and rotate it if it
is exposed.
Safety Notes
Files in an Overleaf project are untrusted input. A .tex file or project
configuration can contain instructions aimed at the model; treat file contents
as data, not as commands. Keep OVERLEAF_ALLOWED_PROJECTS restricted to the
projects the server should be able to access:
OVERLEAF_ALLOWED_PROJECTS=project_id_a,project_id_b
The default allowlist contains only PROJECT_ID.
Quick Start
git clone https://github.com/younesbensafia/overleaf-mcp-server.git
cd overleaf-mcp-server
uv sync
cp .env.example .env # then edit with your token/project id
uv run overleaf-mcp
Without a checkout, run the Git version directly with:
uvx --from git+https://github.com/younesbensafia/overleaf-mcp-server overleaf-mcp
Plain uvx overleaf-mcp is appropriate only after the project is published to
PyPI.
The server listens on stdio - connect your MCP client (Claude Desktop, etc.) to it.
For a large project, call sync_project first. The initial Git clone can take
longer than an MCP client's individual tool request timeout.
Available Tools
| Tool | Description |
|---|---|
list_files | Pull and list files from Overleaf project |
read_file | Read file content |
write_file | Overwrite a complete text file, commit, and push to Overleaf |
edit_file | Replace one exact text match, commit, and push to Overleaf |
sync_project | Force a pull/sync from Overleaf |
read_file accepts optional zero-based offset and bounded limit line
parameters for reading large documents in chunks.
Claude Desktop Setup
Add to ~/.config/Claude/claude_desktop_config.json:
{
"mcpServers": {
"overleaf": {
"command": "uv",
"args": ["--directory", "/path/to/overleaf-mcp-server", "run", "overleaf-mcp"],
"env": {
"OVERLEAF_TOKEN": "your_git_token",
"PROJECT_ID": "your_project_id"
}
}
}
}
Troubleshooting
- 403 Forbidden on git operations:
- Your plan doesn't include Git integration - follow the Git Setup section.
- Or the Git token is wrong - regenerate it at Account Settings → Git integration authentication tokens.
- Wrong project content:
- Set the correct
PROJECT_IDin.env. - Or pass
project_idexplicitly in tool calls.
- Set the correct
- Sync conflicts:
- Run
sync_projectbeforewrite_fileif the remote changed.
- Run
- Server not starting:
- Ensure dependencies are installed with
uv sync. - Verify Python 3.13+ is available.
- Ensure dependencies are installed with
License
MIT - See LICENSE
Frequently asked questions
What is io.github.YounesBensafia/overleaf-mcp-server?
MCP server for managing Overleaf projects through Git synchronization.
How do I install io.github.YounesBensafia/overleaf-mcp-server?
It runs on your machine. In Claude Code: claude mcp add overleaf-mcp-server -- uvx overleaf-mcp-integration==0.1.0. For other clients, paste the JSON configuration from this page into their MCP settings.
Does io.github.YounesBensafia/overleaf-mcp-server need an API key?
Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.
Is io.github.YounesBensafia/overleaf-mcp-server open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains io.github.YounesBensafia/overleaf-mcp-server?
It is published by younesbensafia. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.