mcpField
O
overleaf

overleaf

github.com/alothDocuments24170 installsUpdated 2d ago
Repository

About overleaf

overleaf is a skill for managing Overleaf LaTeX projects through the olcli command-line interface. It is intended for authors who edit projects locally and need to sync files, compile documents, or retrieve build outputs.

Key features

  1. 01Pull, push, and bidirectionally sync projects
  2. 02Upload and download project files
  3. 03Compile projects and download PDFs
  4. 04Retrieve .bbl and other build outputs
  5. 05Preview changes before pushing

Use cases

  1. 01Edit a paper locally and sync it with Overleaf
  2. 02Compile a paper and download its PDF
  3. 03Prepare the .bbl file for an arXiv submission

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/aloth/overleaf-skill --skill overleaf

After installing, type/overleafin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

CITATION.cff
README.md
package.json
LICENSE.md
.github/ISSUE_TEMPLATE/
bug-report.yml
feature-request.yml
references/
API.md
scripts/
install.sh

Details

From the project README

Overleaf Skill

Manage Overleaf LaTeX projects via the olcli CLI.

Installation

# Homebrew (recommended)
brew tap aloth/tap && brew install olcli

# npm
npm install -g @aloth/olcli

Authentication

Get your session cookie from Overleaf:

  1. Log into overleaf.com
  2. Open DevTools (F12) → Application → Cookies
  3. Copy the value of overleaf_session2
olcli auth --cookie "YOUR_SESSION_COOKIE"

Verify with:

olcli whoami

Debug authentication issues:

olcli check

Clear stored credentials:

olcli logout

Common Workflows

Pull a project to work locally
olcli pull "My Paper"
cd My_Paper/
Edit and sync changes
# After editing files locally
olcli push              # Upload changes only
olcli sync              # Bidirectional sync (pull + push)
Compile and download PDF
olcli pdf                      # Compile and download
olcli pdf -o paper.pdf         # Custom output name
olcli compile                  # Just compile (no download)
Download .bbl for arXiv submission
olcli output bbl               # Download compiled .bbl
olcli output bbl -o main.bbl   # Custom filename
olcli output --list            # List all available outputs
Upload figures or assets
olcli upload figure1.png "My Paper"          # Upload to project root
olcli upload diagram.pdf                      # Auto-detect project from .olcli.json
Download specific files
olcli download main.tex "My Paper"           # Download single file
olcli zip "My Paper"                          # Download entire project as zip

arXiv Submission Workflow

Complete workflow for preparing an arXiv submission:

# 1. Pull your project
olcli pull "Research Paper"
cd Research_Paper

# 2. Compile to ensure everything builds
olcli compile

# 3. Download the .bbl file (arXiv requires .bbl, not .bib)
olcli output bbl -o main.bbl

# 4. Download any other needed outputs
olcli output aux -o main.aux    # If needed

# 5. Package for submission
zip arxiv.zip *.tex main.bbl figures/*.pdf

# 6. Verify the package compiles locally (optional)
# Then upload arxiv.zip to arxiv.org

Commands Reference

CommandDescription
olcli auth --cookie <value>Authenticate with session cookie
olcli whoamiCheck authentication status
olcli logoutClear stored credentials
olcli checkShow config paths and credential sources
olcli listList all projects
olcli info [project]Show project details
olcli pull [project] [dir]Download project files
olcli push [dir]Upload local changes
olcli sync [dir]Bidirectional sync
olcli upload <file> [project]Upload a single file
olcli download <file> [project]Download a single file
olcli zip [project]Download as zip archive
olcli compile [project]Trigger compilation
olcli pdf [project]Compile and download PDF
olcli output [type]Download compile outputs

Tips

  • Auto-detect project: Run commands from a synced directory (contains .olcli.json) to skip the project argument
  • Dry run: Use olcli push --dry-run to preview changes before uploading
  • Force overwrite: Use olcli pull --force to overwrite local changes
  • Project ID: You can use project ID instead of name (24-char hex from URL)
  • Debug auth: Run olcli check to see where credentials are loaded from

Comments

Markdown supported