Skip to content

Releases: mhmdaskari/overleaf-web-mcp

v0.1.3

Choose a tag to compare

@mhmdaskari mhmdaskari released this 01 Sep 23:21

Documentation, metadata, and small additive fixes. No tools were added or removed; the server still registers 19 tools.

Breaking

  • get_project_tree returns an object instead of a bare array. Entities move under entities, alongside rootDocPath, compiler, imageName, trackChangesActive, and a hashNote. Callers that iterated the result directly must now iterate result.entities. This is the only response-shape change in this release.

Changed

  • compile_project.rootFilePath is now optional and defaults to the root document configured in Overleaf, which is what the web UI's Recompile button builds. A blank project ships with a stub main.tex, so a project whose real manuscript lived elsewhere silently compiled the stub.
  • upload_file is annotated destructiveHint: true. It replaces an existing entity at the destination path in place, so the previous destructiveHint: false misdescribed it.
  • upload_file returns a normalized result: entityId, entityType, path, replaced, and, for binary files, hash.
  • download_file no longer silently overwrites a local file; it fails unless overwrite: true is passed.
  • compile_project results include rootFilePath, the document actually compiled.

Added

  • write_file accepts localPath as an alternative to content, keeping a whole-file replacement revision-checked and optionally tracked without sending the file through the client's tool-argument budget.
  • upload_file accepts destinationName, so a local file can be stored under a different name.
  • Overleaf's upload rejections (duplicate_file_name, invalid_filename, project_has_too_many_files, folder_not_found) surface as INVALID_ARGUMENT with an explanation instead of a bare REMOTE_ERROR.
  • Continuous integration on pushes and pull requests, across Node 20 and 24.
  • A roadmap covering the planned path to 1.0.0, and a changelog.

Documentation

  • The tree's hash is documented as a git blob hash, sha1("blob " + byteLength + "\0" + content), identical to git hash-object <file>. Plain sha1sum never matches. It is present only on binary file entities; Overleaf stores no content hash for documents.
  • upload_file's upsert semantics, including that it is a valid way to replace .tex, .bib, and .bst documents from disk, and that doing so is a blind, untracked write.
  • A decision table for write_file versus upload_file, with the real document and update size limits.

Full changelog: v0.1.2...v0.1.3

Overleaf Web MCP v0.1.2

Choose a tag to compare

@mhmdaskari mhmdaskari released this 20 Jul 18:02

What is new

  • Adds opt-in tracked-change writing for whole files, LaTeX sections, and non-empty initial file content.
  • Adds read-only recent version-history monitoring with a reusable version cursor and gap detection.
  • Reorganizes the README with expandable setup, tool, workflow, configuration, and technical sections.
  • Updates GitHub and npm positioning around complete Overleaf project workflows.

Compatibility

Existing write calls remain untracked by default. No existing MCP tool names were changed, and review replies remain supported. This package continues to use unsupported private Overleaf web APIs, whose availability can vary by deployment and account.

Overleaf Web MCP v0.1.1

Choose a tag to compare

@mhmdaskari mhmdaskari released this 15 Jul 17:08

Repositions the README, hero illustration, GitHub metadata, and npm metadata around complete Overleaf project workflows while retaining review replies as a supported capability.

No MCP tools, schemas, runtime behavior, exports, dependencies, or Node.js compatibility changed.

Overleaf Web MCP v0.1.0

Choose a tag to compare

@mhmdaskari mhmdaskari released this 14 Jul 23:49

Initial public release.

Highlights:

  • Browser-assisted Overleaf authentication with locally persisted session cookies.
  • 18 MCP tools covering files, project trees, sections, compilation, and review threads.
  • Revision-checked ShareJS and history-OT writes with timeout recovery.
  • Node.js 20 or newer is required.

Important limitations:

  • This project uses unofficial Overleaf private APIs that may change and may carry Terms-of-Service or account risk.
  • Writes are untracked in v1, even when track changes is active.
  • Overleaf Community Edition does not provide review comments or track changes.