rod-mcp

rod-mcp

17

Rod MCP Server provides browser automation capabilities using Rod, enhancing web interaction for applications. It supports headless/GUI modes, high performance, and is designed for LLMs. Easy configuration and extensibility are key features.

Rod MCP Server

logo

Wow! It's awesome, now you can use the MCP server of Rod!πŸš€


Rod-MCP provides browser automation capabilities for your applications by using Rod. The server provides many useful mcp tools enable LLMs to interact with the web pages, like click, take screenshot, save page as pdf etc.

Engilsh |

Features

  • πŸš€ Browser automation powered by Rod
  • 🎯 Rich web interaction capabilities
    • Element clicking
    • Screenshot capture
    • PDF generation
    • And more...
  • 🎨 Headless/GUI mode support
  • ⚑ High performance and stability
  • πŸ”§ Easy to configure and extend
  • πŸ€– Designed for LLMs interaction

Installation

Prerequisites

  • Go 1.23 or higher
  • Chrome/Chromium browser

Steps

  1. Clone the repository:
git clone https://github.com/go-rod/rod-mcp.git
cd rod-mcp
  1. Install dependencies:
go mod tidy
  1. Build the project:
go build

Usage

Basic Usage

  1. Clone Repo and Build Self or Go to Download Release
  2. Configure MCP:
{
    "mcpServers": {
        "rod-mcp": {
            "command": "rod-mcp",
            "args": [
                "-c", "rod-mcp.yaml"
            ]
        }
    }
}

Configuration

The configuration file supports the following options:

  • serverName: Server name, default is "Rod Server"
  • browserBinPath: Browser executable file path, use system default browser if empty
  • headless: Whether to run the browser in headless mode, default is false
  • browserTempDir: Browser temporary file directory, default is "./rod/browser"
  • noSandbox: Whether to disable sandbox mode, default is false
  • proxy: Proxy server settings, supports socks5 proxy

Project Structure

rod-mcp/
β”œβ”€β”€ assets/          # Static resources
β”œβ”€β”€ banner/          # Banner resources
β”œβ”€β”€ cmd.go           # Command line processing
β”œβ”€β”€ main.go          # Program entry
β”œβ”€β”€ resources/       # Resource files
β”œβ”€β”€ server.go        # Server implementation
β”œβ”€β”€ tools/           # Tool implementation
β”œβ”€β”€ types/           # Type definitions
└── utils/           # Utility functions

Contribution Guidelines

Welcome to submit Pull Request or create Issue!

License

This project is licensed under the MIT License - see the file