Skip to main content
Glama

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 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 NOT 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 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

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
    }
  }
...

Available Tools

1 tool
open_colab_browser_connectionA

Opens a connection to a Google Colab browser session and unlocks notebook editing tools. Returns a boolean representing whether the connection attempt succeeded

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

There are no annotations, so the description must fully disclose behavioral traits. It discloses the return type (boolean) but does not explain side effects, prerequisites, or failure behavior. 'Opens a connection' implies a state change but doesn't specify whether it's idempotent, whether it requires authentication, or what happens on failure. This is a significant gap for a tool that likely mutates browser state.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the primary action and followed by the return type. No unnecessary words, and it achieves clarity without fluff. It is an excellent example of concise, well-structured documentation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (zero parameters, no siblings, output schema present), the description covers the essential information: what it does and what it returns. It lacks additional behavioral context that would enhance completeness, but for a tool this straightforward, it is largely adequate. The missing failure semantics and side-effect details prevent a perfect score.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the description does not need to add parameter details. The schema is empty, and the baseline for 0 params is 4. The description correctly omits any parameter references, consistent with the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action (opens a connection) and its resource (Google Colab browser session), and mentions the effect (unlocks notebook editing tools). It also specifies the return type, making the purpose unambiguous. With no sibling tools to differentiate from, this is a fully specified purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on what the tool does and its purpose (connecting to a Colab browser session), implying when it would be used. However, it does not explicitly state when not to use it or any alternatives, but since there are no sibling tools, this is not a significant gap. The phrasing 'unlocks notebook editing tools' gives a sense of the intended use case.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool updatev1.0.1
    • First observedopen_colab_browser_connection

TDQS

A3.8/5.0

Scored across 1 tool

Disambiguation5/5

Only one tool exists, so there is no possibility of confusion between tools. The purpose is clearly stated as opening a Colab browser connection.

Naming Consistency5/5

The single tool name follows a clear snake_case pattern with a verb and object (open_colab_browser_connection). There is no inconsistency since only one name exists.

Tool Count2/5

A single tool is too few for a Colab integration server. The description references 'unlocking notebook editing tools' but none are actually provided, making the tool count inappropriate for the apparent scope.

Completeness1/5

The server only offers a connection opener, with no actual editing or interaction tools. The functionality implied by 'unlocking notebook editing tools' is completely absent, leaving the surface severely incomplete.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/erdhirajpatel/colab-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server