Skip to content

feat(colab): add Google Colab Tools plugin (v0.1.2) - #175

Open
tahatehran wants to merge 2 commits into
zai-org:mainfrom
tahatehran:feat/colab-official-marketplace
Open

tahatehran wants to merge 2 commits into
zai-org:mainfrom
tahatehran:feat/colab-official-marketplace

Conversation

@tahatehran

Copy link
Copy Markdown

Plugin type: Standard plugin — affected plugin: colab (no MCP Apps / ui.surfaces; MCP tools + skills only)

What user problem does this solve?

ZCode users currently have no integrated way to use Google Colab from the agent: GPU/TPU runtimes must be provisioned by hand in the browser, and code executed manually. This plugin integrates Google's official open-source tools — the colab-mcp browser-bridge MCP proxy and the google-colab-cli headless CLI — so the agent can pair with a browser Colab notebook (dynamic notebook tools over a token-protected local WebSocket) or provision raw GPU/TPU runtimes and run headless jobs.

Visible behavior and how it was tested

  • End-to-end OAuth round-trip verified (2026-11-05): colab sessions → browser consent → authorization-code exchange → token persisted → authenticated Colab API call returning [colab] No active sessions found on server. Second invocation reused the stored token without re-prompting.
  • MCP handshake smoke test against the real server: initialize → tools/list returns the pairing tool open_colab_browser_connection (ColabMCP 2.14.5); notebook tools appear dynamically after browser pairing.
  • 15-point repository validator (JSON, manifest/marketplace consistency, path containment, skill frontmatter) — all green; source-repo CI green on every push.
  • Official scripts/validate.py on this PR's tree: no issues reported for colab (name, version match, en/zh-CN description_i18n parity between manifest and marketplace entry, category, directory registration).
  • git diff --check clean.
  • The same plugin content is installed and running in production ZCode from the movtigroup/Colab-Plugin git marketplace.

Version changes and marketplace registration

  • New plugin colab v0.1.2, registered in the root marketplace.json under developer-tools with source: ./external_plugins/colab.
  • Manifest and marketplace versions identical; description_i18n (en, zh-CN) matches exactly between both files.
  • Both language READMEs included (README.md / README_CN.md) plus LICENSE (Apache-2.0) and NOTICE.md (non-affiliation with Google; upstream attribution).

Dependencies, network requests, permissions, and side effects

  • Runtime dependency: uv launches the MCP server via python -m uv tool run git+https://github.com/googlecolab/colab-mcp.
  • Network: the MCP server opens a local WebSocket server and talks to colab.research.google.com; google-colab-cli talks to Google Colab APIs; uv fetches the official tools from PyPI/GitHub at build time. All documented in both READMEs ("Network access and dependencies").
  • Command execution / file writes: colab CLI commands (session management, exec, upload/download); uv cache and Colab session metadata writes.
  • Credentials: none stored in the plugin; Google authorization happens in the user's browser session (OAuth flow verified working).

Licensing / provenance of third-party material

  • Plugin content: Apache-2.0 (LICENSE included).
  • Upstream Google projects (colab-mcp, google-colab-cli) are fetched at runtime from their official repos and are not redistributed — attribution in NOTICE.md.
  • Independent project, not affiliated with Google.

Source of truth: movtigroup/Colab-Plugin (tag v0.1.2).

- colab-cli skill: correct default --auth (oauth2) and document the
  verified Windows behavior with WSL as the supported path
- manifest and marketplace entry version aligned at 0.1.2

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants