overleaf-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OVERLEAF_BASE_URL | No | Defaults to https://www.overleaf.com | https://www.overleaf.com |
| OVERLEAF_READ_ONLY | No | Set to 1 to disable all mutating tools entirely. | |
| OVERLEAF_MAX_READ_BYTES | No | read_file size cap, default 1000000. | 1000000 |
| OVERLEAF_SESSION_COOKIE | No | Value of the overleaf_session2 cookie. Exactly one of OVERLEAF_SESSION_COOKIE or OVERLEAF_SESSION_COOKIE_FILE is required. | |
| OVERLEAF_ALLOWED_PROJECTS | No | Comma-separated project-ID allowlist. | |
| OVERLEAF_ALLOW_DESTRUCTIVE | No | Set to 1 to permit destructive tools on clients that cannot prompt. | |
| OVERLEAF_SESSION_COOKIE_FILE | No | Path to a file containing the overleaf_session2 cookie (preferred). Exactly one of OVERLEAF_SESSION_COOKIE or OVERLEAF_SESSION_COOKIE_FILE is required. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_projectsA | List projects in the account. Archived and trashed projects are excluded by default. |
| list_filesA | List every document, binary file, and folder in an Overleaf project. |
| read_fileA | Read a text document from an Overleaf project, including collaborators' unsaved edits. Binary files and documents over the size cap require outputPath. |
| export_projectA | Download the whole Overleaf project as a ZIP archive written to outputPath. |
| write_fileA | Create or overwrite a text document in an Overleaf project. Overwriting records a new version in Overleaf history. |
| upload_fileB | Upload or overwrite a binary file (image, PDF, data) in an Overleaf project. |
| create_folderC | Create a folder inside an Overleaf project. |
| move_entityB | Move a document, file, or folder to a different folder in the project. |
| delete_entityA | Permanently delete a document, file, or folder from an Overleaf project. Requires human confirmation. |
| compile_projectA | Compile the project on Overleaf and return structured LaTeX diagnostics (file, line, level, message). Compiles typically take 10-60 seconds. |
| get_compile_logC | Return the full raw LaTeX log from a compile. Use when structured diagnostics are insufficient. |
| get_pdfA | Compile the project and write the resulting PDF to outputPath on disk. |
| create_projectC | Create a new, empty Overleaf project and return its id. |
| rename_projectC | Change the name of an Overleaf project. |
| archive_projectA | Archive an Overleaf project, removing it from the active list. Requires human confirmation. |
| delete_projectA | Permanently delete an entire Overleaf project. Requires human confirmation. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 16 tools
Each tool targets a distinct resource-action pair: projects, files/folders, and compilation outputs are clearly separated. Even closely related tools like write_file vs upload_file and compile_project vs get_compile_log are differentiated by explicit text/binary and structured/raw output descriptions.
All tool names follow a consistent snake_case verb_noun pattern (list_projects, create_folder, move_entity, compile_project). The use of list, get, create, write, upload, move, delete, etc. is predictable and maps cleanly to CRUD and domain actions.
16 tools is one above the typical 15-tool sweet spot, but each tool covers a meaningful project, file, or compile operation without redundancy. The count feels slightly heavy but remains well-scoped for a full Overleaf workflow.
The surface covers project lifecycle, file/folder management, and compilation well. Minor gaps exist: there is no unarchive/restore operation, no rename for files/folders, and no single-file download, but these are workaroundable via export_project or move_entity.