Browser CDP MCP Server
A minimal MCP (Model Context Protocol) server that provides direct access to the Chrome DevTools Protocol (CDP) for maximum flexibility browser control.
Features
- Raw CDP Access: Call any Chrome DevTools Protocol method directly via
cdp_send - Screenshot Capture: Take screenshots in PNG or JPEG format
- URL Retrieval: Get the current page URL
- Browser Management: Launch and close browser instances
Installation
npm install
Usage
npm start
The server communicates over stdio using the MCP protocol.
Tools
cdp_send
Execute any CDP method. Reference: https://chromedevtools.github.io/devtools-protocol/
Parameters:
method(string): CDP method name (e.g.,Page.navigate,DOM.getDocument,Runtime.evaluate)params(object, optional): Parameters for the CDP method
Example:
{
"method": "Page.navigate",
"params": { "url": "https://example.com" }
}
screenshot
Capture a screenshot of the current page.
Parameters:
format(string, optional):"png"or"jpeg"(default:"png")fullPage(boolean, optional): Capture full scrollable page (default:false)
get_url
Returns the current page URL.
close_browser
Closes the browser instance and cleans up resources.
MCP Configuration
Add to your MCP client configuration:
claude mcp add-json browser '{
"type": "stdio",
"command": "node",
"args": ["path/to/browser-tool/server.js"]
}' --scope user
Skill Integration
Add the browser skill to claude:
cp .path/to/browser-tool/.claude/skills/browser.md ~/.claude/skills/browser.md
Dependencies
@modelcontextprotocol/sdk- MCP SDK for server implementationplaywright- Browser automationzod- Schema validation
License
MIT
