colab-mcp
Officialby googlecolab
README.md
# Colab-mcp
An MCP server for bridging your local agent to a Colab session in the browser.
# Supported Clients
This MCP server requires client support for `notifications/tools/list_changed` and for the client to be running locally on your device.
Popular clients that fit these criteria include:
- Gemini CLI
- Claude Code
- Windsurf
# Setup
- Install `uv` (`pip install uv`)
- Configure for usage (eg for mcp.json style services):
```
...
"mcpServers": {
"colab-mcp": {
"command": "uvx",
"args": ["git+https://github.com/googlecolab/colab-mcp"],
"timeout": 30000
}
}
...
```
(If you have a non-standard default package index (**Googlers**), you may also need to add `--index https://pypi.org/simple`)
# Issues & Discussions
We are using GitHub [discussions](https://github.com/googlecolab/colab-mcp/discussions) as the
place for issue discussion and feature requests. As discussions mature into action items, we
will add those items as issues. This helps us ensure that issues in the issue tracker are
well-understood, deduplicated, and actionable. For these reasons, **please do <u>NOT</u> open
issues directly.**
# Contributing
We unfortunately don't have the bandwidth to support review of external contributions, and we
don't want user PRs to languish, so we aren't accepting any external contributions right now.
If you have a great idea or pain point, we would love to hear about it on our
[discussions](https://github.com/googlecolab/colab-mcp/discussions) page - the preferred place
for issue discussion and feature requests.
# Internal - For Colab Developers
### Prerequisites
- `uv` is required (`pip install uv`)
- Configure git hooks to run repo presubmits
```shell
git config core.hooksPath .githooks
```
### Gemini CLI setup
```
...
"mcpServers": {
"colab-mcp": {
"command": "uv",
"args": ["run", "colab-mcp"],
"cwd": "/path/to/github/colab-mcp",
"timeout": 30000
}
}
...
```
TDQS
A3.5/5.0
Scored across 1 tool
Disambiguation5/5
Only one tool exists, so there is no risk of confusion or overlap with other tools.
Naming Consistency5/5
The single tool name follows a clear verb_noun pattern ('open_colab_browser_connection'), so consistency is not an issue.
Tool Count2/5
A single tool is too few for a server intended to enable Colab notebook editing; the tool merely opens a connection, suggesting many necessary actions are missing.
Completeness1/5
The tool set is severely incomplete: it only provides a connection opener and lacks any tools for actual notebook editing, despite claiming to unlock such tools.
Maintenance
ActivityInactive
ResponsivenessWithin a week