UNPKG

levisnkyyy-browser-use-mcp

Version:

MCP server for Browser-Use API

120 lines (88 loc) 2.69 kB
# Browser-Use MCP Server An MCP (Model Context Protocol) server that provides browser automation capabilities through the Browser-Use API. ## Installation ```bash cd mcp npm install npm run build ``` ## Configuration 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 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. ## Usage ### With Claude Desktop 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" } } } } ``` ### With other MCP clients ```bash export BROWSER_USE_API_URL=http://localhost:8000 node dist/index.js ``` ## Available Tools ### Task Management - `browser_use_create_task` - Create a new browser automation task - `browser_use_get_task` - Get task status and results - `browser_use_list_tasks` - List all tasks - `browser_use_cancel_task` - Cancel a running task - `browser_use_pause_task` - Pause a running task - `browser_use_get_task_history` - Get task execution history - `browser_use_get_screenshot` - Get current browser screenshot - `browser_use_stream_task` - Stream real-time task updates ### Session Management - `browser_use_create_session` - Create a reusable browser session - `browser_use_close_session` - Close a browser session ### System - `browser_use_health` - Check API health status ## Examples ### Create a task ```typescript { "task": "Navigate to example.com and take a screenshot", "browser_config": { "headless": false, "viewport": { "width": 1920, "height": 1080 } } } ``` ### Create a reusable session ```typescript { "headless": false, "viewport": { "width": 1280, "height": 720 }, "cookies": [ { "name": "session", "value": "abc123", "domain": ".example.com" } ] } ``` ## Development ```bash # Run in development mode with hot reload npm run dev # Build for production npm run build # Start production server npm start ```