Chrome Actuator
Enables agents to drive an existing Chrome window by creating tabs, taking snapshots, pressing keys, and filling form fields via native messaging without opening a new browser instance.
README
Chrome Actuator
Unofficial companion: drive the Chrome window you already have open from an agent (tested with Grok Build). New work lands in a pink Actuator tab group in the current session, not a new Chrome window.
tabs_create → snapshot → press @e12 / fill @e5 "text" → settle
v1 is an actuator, not a side-panel chatbot. The agent stays in the terminal.
The extension sees the page, assigns @eN refs, and clicks/types. Your cookies
and logins stay in Chrome.
Not affiliated with, endorsed by, or sponsored by xAI. "Grok" and "Grok Build" are xAI marks, used here only to describe compatibility. See NOTICE.
Status
Phases 0–3 are in. pnpm gauntlet covers unit tests, the content-script
actuator, and a live Chromium tab driven through native messaging.
| Phase | What | State |
|---|---|---|
| 0 | Workspace, stable extension id, side panel | done |
| 1 | Native messaging heartbeat | done |
| 2 | snapshot / press / fill on a real tab | done |
| 3 | Agent plugin + /chrome + skill |
done |
Load the extension
cd /path/to/chrome-actuator
pnpm install
pnpm --filter @chrome-actuator/extension build
- Open
chrome://extensions - Enable Developer mode
- Load unpacked →
packages/extension/dist - Pin the extension and click it (or
Cmd+Shift+G)
Then register the native host (once) and fully quit Chrome:
node packages/host/dist/install.js
--trust on the plugin install lets the agent operate this Chrome profile.
Only do that if you trust the agent.
grok plugin install ./packages/plugin --trust
Side panel should say connected once the MCP host is running.
pnpm gauntlet # unit + L3 + live native-messaging L4
Stable unpacked id (from the committed manifest key): lgkcgenkjaalkfnpmglgpfclkaokblfj
Decisions we will not reopen
- Brain in the agent, body in Chrome. No in-extension LLM loop in v1.
- Native messaging, not WebSocket, not Playwright, not agent-device-the-binary.
- agent-device contract only (
snapshot/press/fill). - No
chrome.debuggerin v1 (no yellow infobar). - Independent implementation. Do not copy another vendor's brand, marks, or reverse-engineered internals into this tree.
Layout
packages/shared protocol, snapshot grammar, target parser
packages/extension MV3 side panel + service worker
packages/host MCP + native host
packages/plugin Grok Build plugin (compatibility layer)
Tests
pnpm --filter @chrome-actuator/shared test
License
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.