Chrome Extension MCP Server (Go Version)
About
Chrome Extension MCP Server implemented in Go - For Model Context Protocol to interact with Chrome extensions
Details
- Author
- fujiron
- Downloads
- 407
- Categories
- Developer Tools
Jump to
- WebSocket server bridging Claude with Chrome extensions
- Tab management (active, all tabs, create tab)
- DOM manipulation via script execution
- CSS injection into web pages
- Cookie access and screenshot capture
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Chrome Extension MCP Server (Go Version)Command (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Install the Chrome extension by either building the Docker container and extracting the extension package, or manually loading the extension directory from extension/. Run the Go server with go run main.go or the compiled binary. Then configure Claude’s MCP server settings in claude_desktop_config.json by specifying the server binary and the CHROME_EXTENSION_ID environment variable.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"chrome extension mcp server (go version)": {
"chrome-extension-mcp-go": {
"command": "docker",
"args": [
"build",
"-t",
"mcp/chromeextension-go",
"."
]
}
}
}
}
McpServers
{
"chrome-extension-mcp-go": {
"command": "docker",
"args": [
"build",
"-t",
"mcp/chromeextension-go",
"."
]
}
}
Chrome Extension MCP Server (Go Version)
A Go implementation of the Model Context Protocol (MCP) server for Chrome Extension API, enabling Claude to interact with Chrome browser extensions.
Overview
This project is a Go implementation of the original TypeScript version of the Chrome Extension MCP Server. It provides a WebSocket server that bridges the Claude AI with Chrome extensions, allowing Claude to perform various browser operations through the Chrome API.
Features
- WebSocket server for Chrome extension communication
- Support for Model Context Protocol (MCP)
- Various Chrome browser operations through tools:
- Tab management
- DOM manipulation
- CSS injection
- Extension management
- Cookie access
- Screenshot capture
- And more
Installation
1. Install Chrome Extension
Using Docker
1. Build and run the Docker container:docker build -t mcp/chromeextension-go .
docker run -i --rm mcp/chromeextension-go
2. Extract the extension package (if not already available):
docker cp $(docker ps -q -f ancestor=mcp/chromeextension-go):/app/extension extension
3. Install in Chrome:
- Open Chrome and go to chrome://extensions/
- Enable "Developer mode" in the top right
- Click "Load unpacked" and select the extracted extension directory
Manual Installation
1. Navigate to the extension directory:cd extension
2. Load in Chrome:
- Open Chrome and go to chrome://extensions/
- Enable "Developer mode" in the top right
- Click "Load unpacked" and select the extension directory
2. Running the Server
From Source
go run main.go
Using Binary
go build
./chrome-extension-mcp-go
3. Configure MCP Server for Claude
Add the following to your claude_desktop_config.json:
{
"mcpServers": {
"chromeextension": {
"command": "path/to/chrome-extension-mcp-go",
"args": [],
"env": {
"CHROME_EXTENSION_ID": "your-extension-id"
}
}
}
}
Tools
This MCP server provides the following tools to Claude:
1. chrome_get_active_tab: Get information about the currently active tab
2. chrome_get_all_tabs: Get information about all open tabs
3. chrome_execute_script: Execute DOM operations in the context of a web page
4. chrome_inject_css: Inject CSS into a web page
5. chrome_get_extension_info: Get information about installed extensions
6. chrome_send_message: Send a message to an extension's background script
7. chrome_get_cookies: Get cookies for a specific domain
8. chrome_capture_screenshot: Take a screenshot of the current tab
9. chrome_create_tab: Create a new tab with specified URL and options
License
This project is licensed under the MIT License.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





