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:
-
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.
-
Local MCP Server (prebuilt): These servers are prebuilt as CIPD packages and located within the same subdirectory as their configuration files.
-
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