Once connected, talk to your assistant in plain language. It picks the tools.
"Create a new project called Grant renewal from the folder I zipped, and make proposal.tex the root."
"List my Overleaf projects and open the one called ."
Read, edit, compile, and review Overleaf projects through your own signed-in web session, from an MCP client, the command line, or TypeScript.
2026-11-14
Bintang
—
Tool
—
Uptime
—
Thesis
"Rewrite the introduction of main.tex for a general audience, as a tracked change."
"Compile the paper and tell me whether it built cleanly, and where any errors are."
"Which figures in ./figures differ from what's in the project? Upload only those."
"Make the project match ~/papers/thesis, and show me what would be deleted first."
"Summarize the open review comments and reply to the one about Table 2."
Get started
You need Node.js 20 or newer, a Chrome-family browser (Chrome, Chromium, Brave, or Edge), and an Overleaf account.
[!NOTE]
The server uses Overleaf's private web APIs, which can change without notice, and automating www.overleaf.com may carry Terms-of-Service and account risk. Try it on a disposable project first and keep request volume low.
1. Sign in once. A dedicated browser window opens. Complete the normal Overleaf login, including SSO or two-factor. Only cookies for the Overleaf origin are saved, to a file only your user can read. The session lasts five days from its last use, so sign in again after five idle days, or schedule npx overleaf-web-mcp keepalive daily to keep it alive (see configuration).
npx overleaf-web-mcp login
2. Connect your MCP client. For Claude Code:
claude mcp add overleaf --scope user -- npx -y overleaf-web-mcp serve
VS Code uses a servers key and "type": "stdio" instead; the installation guide has the exact block for each client.
3. Restart the client and ask it to check your Overleaf connection.
Client-by-client steps, self-hosted Overleaf, and troubleshooting, including the "failed to connect" you get when node is older than 20, are in the installation guide.
Without an MCP client
Every tool is also a command, for scripts, CI jobs, and agents that work in a shell. After npx overleaf-web-mcp login:
Each command prints one JSON value on stdout, or one JSON error line on stderr, and its exit code says what is safe to do next: 0 complete, 1 failed, 2 fix the call, 3 not allowed, 4 read or plan again, 5 outcome unknown (never re-run it blindly), 6 partial, 7 retry later. Document text goes through a file or stdin, never the command line. The command line guide has every command and exit code. Three Agent Skills in skills/ use it to revise a manuscript, handle reviewer comments, and sync figures and sources.
From TypeScript, overleaf-web-mcp/core has one typed method per tool (TypeScript SDK):
Start and manage projects. Create a blank or example project, clone one, or import a zip; rename, trash, restore, or archive projects with the name confirmed first; set the root document, TeX engine, and TeX Live image so the web editor's Recompile follows.
Browse and organize. List and search projects, read the file tree with the configured root document and compiler, create folders and files, rename, move, upload one file or a list of them, download a file or the whole project as a zip, and delete with confirmation.
Sync a folder. Compare a local folder with the project without changing anything, then upload only what changed, and optionally delete what you removed locally, in one confirmed call. Changed text files go through the same revision-checked edits as a single write, so a collaborator's concurrent edit is never overwritten.
Write safely. Replace a whole document or a single section. Every edit is checked against the revision you read first, so a collaborator's concurrent change is reported instead of overwritten. Edits can be recorded as Overleaf tracked changes.
Work by section. Parse \section headings in a file, read one section, replace one section.
Compile. Build the project's configured root document, or any document you name, and get the errors and warnings from its log by file and line, with a clear yes or no on whether it built cleanly. Read the full log, save the PDF or any other output locally, or stop a running compile.
Review. List comment threads with their locations, reply, add a comment anchored to exact text, and resolve or reopen threads.
Follow history. Poll recent project history with a version cursor to see who changed what.
Tools
31 tools in eight groups: account, project lifecycle, files, folder sync, sections, compilation, review, and history. Read-only tools change nothing on Overleaf and write nothing on your computer. Destructive tools can replace or remove existing content, and all but stop_compile need a value repeated back first: the path, name, or count of what they delete, the revision of the document they replace, the planToken of a folder sync, or overwrite for a file that exists.
An upload that would replace a file, and a folder sync without a planToken, are refused unless that replacement or unplanned sync is asked for by name. The last column shows which tools read or write files on the computer the server runs on. Every parameter and result is in the tool reference; each tool is also overleaf-web-mcp call <name> and a method of createOverleafClient.
Group
Tool
What it does
Annotation
Local effect
Account
auth_status
Verify the saved session and report when it expires
read-only
Account
list_projects
List and search projects, newest first
read-only
Project lifecycle
create_project
Create a blank or example project
Project lifecycle
clone_project
Copy a project, files and settings included
Project lifecycle
import_project_zip
Create a project from a local .zip archive
reads
Project lifecycle
manage_project
Rename, trash, restore, archive, unarchive, or delete a project
destructive
Project lifecycle
update_project_settings
Set the root document, TeX engine, TeX Live image, or spell-check language
Files
get_project_tree
Read the file tree with the project's compile settings
read-only
Files
read_file
Read a text document and its revision
read-only
Files
write_file
Replace a document with a revision-checked, minimal edit
destructive
reads
Files
create_file
Create a text document, optionally with content
Files
manage_entity
Create a folder, or rename, move, or delete an entity
destructive
Files
upload_file
Upload a local file, replacing what is at that path when confirmed
destructive
reads
Files
batch_upload
Upload a list of local files to the paths given, creating missing folders
destructive
reads
Files
download_file
Save a document or binary file locally
destructive
writes
Files
download_project_zip
Save the whole project locally as one zip archive
destructive
writes
Folder sync
plan_sync
Compare a local folder with the project and show what a sync would do
read-only
reads
Folder sync
sync_directory
Upload what changed, and in mirror mode delete what is gone locally
destructive
reads
Folder sync
delete_entities
Delete several files or folders in one confirmed call
destructive
Sections
get_sections
Parse the section headings of one file
read-only
Sections
get_section_content
Read one section's body
read-only
Sections
write_section
Replace one section's body, revision-checked
destructive
Compilation
compile_project
Compile the project and report its errors and warnings from the log
Compilation
stop_compile
Stop the active compile
destructive
Compilation
get_compile_log
Read the end of a build's LaTeX or BibTeX log
read-only
Compilation
download_compile_output
Save the compiled PDF, or another output file, locally
destructive
writes
Review
list_comments
List review threads with their locations
read-only
Review
reply_to_comment
Reply in an existing thread
Review
add_comment
Add a comment anchored to exact text
Review
set_comment_status
Resolve or reopen a thread
destructive
History
monitor_project_history
Poll recent project history with a cursor
read-only
How it keeps your project safe
Text edits require the revision from a prior read and fail with a conflict if the document changed underneath.
Tracked changes are opt-in and never silently downgraded to plain edits.
Deleting a file requires its path to be confirmed, deleting several requires their count, and trashing or deleting a project requires its name. Projects go to the trash first; permanent deletion only works from there. Downloads, including a whole-project zip, never overwrite a local file unless asked, and never write over the saved session.
A write that times out is observed, never resubmitted, so nothing is applied twice. The same holds for each file in a batch upload.
A folder sync needs the planToken from plan_sync, and stops before changing anything if the project or the folder changed since the plan. It deletes only in mirror mode, only with the delete count confirmed, and never after a failed upload.
An upload never replaces a file unless asked: a binary needs overwrite, and a text document, which an upload replaces with no revision check, needs uncheckedDocumentReplace.
Optionally, you can limit which projects, which folders on your computer, and which kinds of change the server may touch (access policy). It keeps an assistant inside what you gave it; it is not a sandbox.
Your session cookie stays on your machine in a file only you can read, and is never returned by any tool, command, or SDK method.
While a project is open, up to 90 seconds after the last call, you may appear online to collaborators. Each command is its own session, so for many files use one sync or batch command rather than a command per file.
How it compares
The three most-starred Overleaf MCP servers and the two closest in design to this one, each checked against its own source code on 2026-10-25. They change often, so follow the links for their current state. The capability rows describe each project's MCP tools. ✅ supported, 🟡 partly (see the numbered notes), ❌ not supported.
The server sends usage instructions to the MCP client when it connects, and every tool description is self-contained, so an assistant does not need this README to use it correctly. An agent working in a shell can use the command line instead, with overleaf-web-mcp --help and the three Agent Skills in skills/, which call only public commands. Coding agents contributing to the repository should read AGENTS.md.
License
MIT. An independent project, not affiliated with or endorsed by Overleaf.
Belum ada daftar tool. Server remote mendapatkannya setelah pemeriksaan kesehatan pertama.
FAQ
Pertanyaan
Bagaimana cara menginstal Overleaf Web?
Salin konfigurasi stdio untuk Cursor, Claude Desktop, Claude Code, atau VS Code di halaman ini. Konfigurasi ini memakai instalasi dari penerbit, bukan proxy PlugMCP.
Apakah Overleaf Web memerlukan kunci API?
Tidak ada variabel lingkungan wajib yang tercantum di catatan ini.
Transport apa yang digunakan Overleaf Web?
Overleaf Web berjalan secara lokal melalui stdio.
Kapan Overleaf Web terakhir diperiksa?
Terakhir diperiksa 2026-11-14. Read, edit, compile, and review Overleaf projects through your own signed-in web session, from an MCP client, the command line, or TypeScript.