About
MCP server for browser automation with AI agent
Security Report
This MCP server implements browser automation via a Chrome extension with a hub-and-worker architecture. Authentication is delegated to the extension and LLM provider (no MCP-level auth vulnerability). The code quality is generally good with proper error handling and message validation. Findings are limited to low-severity issues: a 5-minute timeout that could cause resource leaks, overly broad exception handling in message parsing, and minor logging of task data that could theoretically expose sensitive information in debug logs. Permissions appropriately match the server's purpose (network access for WebSocket coordination, environment variable access for port configuration). Supply chain analysis found 3 known vulnerabilities in dependencies (0 critical, 2 high severity). Package verification found 1 issue.
7 files analyzed · 8 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Permissions Required
This plugin requests these system permissions. Most are normal for its category.
How to Install
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-runbook-ai-browser-agent": {
"args": [
"-y",
"runbook-ai-mcp"
],
"command": "npx"
}
}
}Documentation
View on GitHubFrom the project's GitHub README.
Runbook AI MCP Server
An MCP (Model Context Protocol) server that provides browser automation capabilities through a Chrome extension. It allows terminal-based agents like Claude Code to interact with any website through your live browser session.
Part of the Runbook AI ecosystem. Join the Discord community to provide your feedback and get involved in the development!
https://github.com/user-attachments/assets/a43fba64-bc40-4ef6-9840-e100203e2cf5
Why Runbook AI?
Most browser-based MCP tools (like chrome-devtools-mcp) blow up your LLM context window by sending the entire DOM after every browser action.
Runbook AI is different:
- Optimized Context: It generates a highly simplified version of the HTML. It strips the junk but keeps essential text and interaction elements. It’s condensed, fast, and won’t eat your tokens.
- The Ultimate Catch-all: If a site doesn't have a dedicated MCP server (like Expedia, LinkedIn, or internal tools), this fills the gap perfectly.
- Privacy First: It runs entirely in your browser. No remote calls except to your chosen LLM provider. No
eval()or shady scripts (enforced by the Chrome extension sandbox). - Efficient Navigation: The simplified HTML goes beyond the viewport, making scrolling and multi-page tasks much more efficient.
Installation
MCP Server
Add to your MCP settings configuration:
{
"mcpServers": {
"runbook-ai": {
"command": "npx",
"args": ["-y", "runbook-ai-mcp@latest"]
}
}
}
Chrome Extension
Install the Runbook AI extension from Chrome Web Store.
Enable MCP in the extension settings opened from extension side panel.
Set LLM API key, and model name, base URL. Use of Gemini 3 Flash (gemini-3-flash-preview) is recommended. Get your free API key from Google AI Studio.
By default the extension has access to all websites. If you want to limit the access, go to Chrome Extension Details, and add individual sites to Site access setting.
Usage
Open Chrome and keep the extension side panel open.
Start the MCP server (it will automatically start when invoked by your MCP client).
Tool Schema
The server exposes a single tool:
browser-agent
Run a task in Chrome browser with AI and automation capabilities.
Parameters:
prompt(string, required): The task prompt for the AI agent to executemaxIterations(number, optional): Maximum number of agent iterations for the task (default: 15). Each iteration is one agent action (navigate, click, type, etc.); raise this for long multi-page tasks. Token budgets scale with it.ephemeral(boolean, optional, defaulttrue): Each call runs in an isolated browser session — it starts on a fresh blank tab, cannot see tabs left by previous calls, and closes every tab it opened when it finishes. Passfalseto continue from the tabs of a previous call and leave the final page open (e.g. multi-call workflows that build on the same page).effort(string, optional, defaultnormal): How much exploration the agent invests —quick(one fast pass over loaded content, missing optional details reported as "not specified", tighter iteration budget),normal(exploration matched to what the ask requires), orthorough(follow all pagination, open detail pages, check candidates one by one, larger iteration budget). Accuracy rules apply at every level.outputDir(string, optional): Directory on the machine running the MCP server where files produced by the agent are written (created if missing; same-named files are overwritten). Default: a fresh per-call directoryrunbook-ai-mcp/task-<timestamp>-<id>under$RUNBOOK_AI_FILES_DIRif set, else the OS temp dir.
Files: Anything the agent saves during the run — data it writes to a file (e.g. a scraped list or an API payload it captured with saveToFile), downloads, extracted datasets, screenshots — is written to disk and listed at the end of the result text as absolute paths with MIME type and size. File content is never inlined into the result, so bulk data stays out of your context; read the files with your own tools. Image files (≤ 4 MB) are additionally returned as inline MCP image content so screenshots are visible directly.
To get bulk data as a file, say so in the prompt, e.g. "... collect all orders from the account page and save them to orders.json".
Example:
{
"name": "browser-agent",
"arguments": {
"prompt": "Go to google.com and search for 'MCP protocol'"
}
}
Development
# Install dependencies
npm install
# Build
npm run build
# Run in development mode
npm run dev
# Run tests
npm test
Architecture
- MCP Server: Communicates with MCP clients via stdio
- WebSocket Server: Listens for Chrome extension connections on port 9003
- Chrome Extension: Executes browser automation tasks
When a tool is invoked:
- MCP client sends request to MCP server via stdio
- MCP server forwards request to Chrome extension via WebSocket
- Extension executes the task and returns result
- Result is sent back to MCP client; files the agent produced are written to disk (
outputDir) and their paths appended to the result
Contributing
Contributions are welcome! Feel free to send out a PR.
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Fetch
Freeby Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
Git
Freeby Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
mcp-creator-python
Freeby mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
MarkItDown
Freeby Microsoft · Content & Media
Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption
