MCP server for Browser-Use API
npm install levisnkyyy-browser-use-mcpAn MCP (Model Context Protocol) server that provides browser automation capabilities through the Browser-Use API.
``bash`
cd mcp
npm install
npm run build
The MCP server requires the following environment variables:
- BROWSER_USE_API_URL: The URL of the Browser-Use API server (default: http://localhost:8000)BROWSER_USE_API_KEY
- : Optional API key for authentication with the Browser-Use API
LLM provider API keys (OpenAI, Anthropic, Google) must be configured on the Browser-Use API server side as environment variables:
- OPENAI_API_KEY: For OpenAI models (e.g., gpt-4o)ANTHROPIC_API_KEY
- : For Anthropic models (e.g., claude-3-5-sonnet)GOOGLE_API_KEY
- : For Google models (e.g., gemini-pro)
These keys are not passed through the MCP protocol for security reasons.
Add the following to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json):
`json`
{
"mcpServers": {
"browser-use": {
"command": "node",
"args": ["/path/to/browser-use/mcp/dist/index.js"],
"env": {
"BROWSER_USE_API_URL": "http://localhost:8000"
}
}
}
}
`bash`
export BROWSER_USE_API_URL=http://localhost:8000
node dist/index.js
- browser_use_create_task - Create a new browser automation taskbrowser_use_get_task
- - Get task status and resultsbrowser_use_list_tasks
- - List all tasksbrowser_use_cancel_task
- - Cancel a running taskbrowser_use_pause_task
- - Pause a running taskbrowser_use_get_task_history
- - Get task execution historybrowser_use_get_screenshot
- - Get current browser screenshotbrowser_use_stream_task
- - Stream real-time task updates
- browser_use_create_session - Create a reusable browser sessionbrowser_use_close_session
- - Close a browser session
- browser_use_health - Check API health status
`typescript`
{
"task": "Navigate to example.com and take a screenshot",
"browser_config": {
"headless": false,
"viewport": { "width": 1920, "height": 1080 }
}
}
`typescript`
{
"headless": false,
"viewport": { "width": 1280, "height": 720 },
"cookies": [
{
"name": "session",
"value": "abc123",
"domain": ".example.com"
}
]
}
`bashRun in development mode with hot reload
npm run dev