Overleaf MCP Server
# Overleaf MCP Server
An MCP server that integrates with Overleaf's Git feature, allowing you to manage Overleaf projects directly from your MCP-enabled environment (like Cursor).
## Features
- **Clone Projects**: Clone Overleaf projects to your local machine using the Project ID.
- **Pull Changes**: Sync latest changes from Overleaf to your local copy.
- **Push Changes**: Commit and push your local edits back to Overleaf.
- **Get Status**: Check the status of your local repository (modified files, etc.).
- **Authentication Management**: Securely configure and store your Overleaf Git credentials.
## Installation
1. Clone this repository:
```bash
git clone https://github.com/juho127/overleafMCP.git
cd overleafMCP
```
2. Install dependencies:
```bash
npm install
```
"args": ["/path/to/overleafMCP/build/index.js"]
}
}
}
```
### Other Clients (e.g., Cursor)
For other MCP-supported clients like Cursor:
1. Go to **Settings** > **Features** > **MCP Servers**.
2. Click **+ Add New**.
3. Enter the command to run the server:
- Command: `node`
- Args: `/absolute/path/to/overleafMCP/build/index.js` (Replace with your actual path)
## Usage
### Authentication
Before using the git tools, you should configure your authentication. You can find your Git token in your Overleaf Account Settings.
**Tool**: `configure_auth`
- `email`: Your Overleaf email address.
- `token`: Your Overleaf Git token (or password).
### Cloning a Project
**Tool**: `clone_project`
- `projectId`: The ID from your Overleaf project URL (e.g., `65a1b2c3d4e5f6...`).
- `localPath`: Absolute path where you want to clone the project.
### Managing Changes
- **Pull**: Use `pull_changes` to get updates from Overleaf.
- **Status**: Use `get_status` to see what files you've changed.
- **Push**: Use `push_changes` to save your work back to Overleaf.
## License
MIT
TDQS
Scored across 5 tools
Each tool has a clearly distinct purpose with no overlap: clone_project for initial setup, configure_auth for credentials, get_status for local state, pull_changes for syncing from remote, and push_changes for syncing to remote. The actions and targets are well-defined and unambiguous.
All tools follow a consistent verb_noun pattern with snake_case: clone_project, configure_auth, get_status, pull_changes, push_changes. The naming is predictable and readable throughout the set.
With 5 tools, this server is well-scoped for managing Overleaf projects locally. Each tool earns its place by covering essential operations for cloning, authentication, status checking, and bidirectional syncing, without being too sparse or bloated.
The toolset covers core workflows for local Overleaf project management: setup (clone, auth), status checking, and syncing (pull, push). Minor gaps might include project creation or deletion on Overleaf, but agents can work around this by using existing tools for most common tasks.