Overleaf MCP Server

MCP server that lets compatible clients (e.g., Claude Desktop, Cursor, VS Code) interact with Overleaf projects via tools and resources.

Local serverstdioPython

What is the Overleaf MCP server?

If you already use Overleaf, the overleaf mcp server is the piece that lets your assistant work with it directly. MCP server that lets compatible clients (e.g., Claude Desktop, Cursor, VS Code) interact with Overleaf projects via tools and resources.

What the server does

  • List projects and files
  • Safe, read-only mode

Installation

Setup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client. The configuration blocks on this page cover the common clients.

Available tools

The toolset is worth reading before you wire it up, because it tells you what the integration is really for:

  • list_of_files — List all files in the project
  • read_file — Read a specified file from the project

Credentials and setup notes

Configuration is passed through the environment: PROJECT_ID, OVERLEAF_TOKEN, YOUR_PROJECT_ID, YOUR_OVERLEAF_TOKEN. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.

  • Python 3.10+ - An Overleaf account (or session cookie)

Worth knowing first

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

Where it fits

This sits in the developer tooling group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. Overleaf's toolset — list_of_files, read_file — is a fair guide to whether it matches your workflow. It is maintained by m-h-amini; worth a glance at recent repository activity before you build anything load-bearing on it.

This entry was verified against Overleaf's own documentation before publication; SyncDev keeps the directory reviewed rather than auto-generated.

Available tools

ToolWhat it does
list_of_filesList all files in the project.
read_fileRead a specified file from the project.

How to install the Overleaf MCP server

{
  "mcpServers": {
    "overleaf": {
      "command": "uvx",
      "args": ["overleaf-mcp"],
      "env": {
        "PROJECT_ID": "<YOUR_PROJECT_ID>",
        "OVERLEAF_TOKEN": "<YOUR_OVERLEAF_TOKEN>"
      },
      "timeout": 120000
    }
  }
}

Configuration as documented by the project. Restart the client after saving.

Configuration

  • Python 3.10+ - An Overleaf account (or session cookie)
VariableDescriptionRequired
PROJECT_IDConfiguration value read at startup.Optional
OVERLEAF_TOKENCredential the server authenticates with.Yes
YOUR_PROJECT_IDConfiguration value read at startup.Optional
YOUR_OVERLEAF_TOKENCredential the server authenticates with.Yes

Example prompts to try

  • Use Overleaf to list of files.
  • Use Overleaf to read file.

Frequently asked questions

It connects Overleaf to MCP-compatible AI assistants such as Claude and Cursor, exposing 2 tools (list_of_files, read_file) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Overleaf directly.