tree: 226e2f766140fecb943b528f2555b4e31463b27c [path history] [tgz]
  1. blink-spec/
  2. build-information/
  3. chromium-tools/
  4. depot-tools/
  5. example-server/
  6. landmines/
  7. perf/
  8. install.py
  9. install_unittest.py
  10. OWNERS
  11. PRESUBMIT.py
  12. README.md
agents/extensions/README.md

Gemini Extensions

This directory contains extensions / MCP (model context protocol) server configurations useful for Chromium development. Each subdirectory within this directory corresponds to one extension.

Configuration are provided in gemini-cli extensions format.

Managing Configurations

Use agents/extensions/install.py to manage extensions. This script is a wrapper around the gemini extensions commands.

Migrating from Project-Level Extensions

If you have previously installed extensions at the project-level, you will be prompted to run the fix command to migrate them to the new user-level model:

vpython3 agents/extensions/install.py fix

Listing Extensions

To see a list of available extensions and their install status:

vpython3 agents/extensions/install.py list

The output table includes the following columns:

  • EXTENSION: The name of the extension.
  • AVAILABLE: The version of the extension found in the Chromium source tree. A - indicates it's not available locally.
  • INSTALLED: The version of the extension currently installed in your Gemini CLI user-level extensions directory. A - indicates it's not installed.
  • LINKED: Indicates if the installed extension is a symbolic link (yes) to the source directory or a copy (no).
  • ENABLED: Indicates if the extension is enabled for the current workspace (workspace) or not (-).

Adding Extensions

By default, extensions are installed as links in your user-level extension directory (~/.gemini/extensions).

vpython3 agents/extensions/install.py add <extension_name_1> <extension_name_2>

To copy the extension directory instead of creating a link, use the --copy flag:

vpython3 agents/extensions/install.py add --copy <extension_name_1>

Updating Extensions

vpython3 agents/extensions/install.py update <extension_name>

You can also update all installed extensions at once:

vpython3 agents/extensions/install.py update

Removing Extensions

vpython3 agents/extensions/install.py remove <extension_name>

Types of MCP Servers

There are three types of MCP server configurations supported:

  1. Local MCP Server (chromium tree): The configuration for these servers points to a local MCP server that is located elsewhere within the Chromium source tree.

  2. Local MCP Server (prebuilt): These servers are prebuilt as CIPD packages and located within the same subdirectory as their configuration files.

  3. Remote MCP Server: The configuration for these servers contains a reference to a remote URL where the MCP server is hosted.

Creating an MCP server

See the example server for a minimal example for creating an MCP tool with python and FastMCP