Rod MCP服务器
用于浏览器自动化的MCP(模型上下文协议)服务器 罗德.
非常适合测试HTMX-R应用程序和自动化浏览器交互。
特性
- 浏览器控件:导航、单击、填写表单
- HTMX-R测试:检查
data-state-*属性 - 截图:捕获整个页面或视口
- DOM检查:读取文本、属性、评估JavaScript
- 等待条件:等待元素出现
安装
go install github.com/birddigital/rod-mcp-server@latest或者从源代码构建:
git clone https://github.com/birddigital/rod-mcp-server
cd rod-mcp-server
go build -o rod-mcp main.go配置
添加到您的Claude桌面配置(~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"rod": {
"command": "/path/to/rod-mcp"
}
}
}可用工具
rod_navigate
导航到URL。
论据:
url(字符串,必填):要导航到的URL
rod_click
通过CSS选择器单击元素。
论据:
selector(字符串,必填):CSS选择器
rod_screenshot
截图。
论据:
filename(字符串,可选):文件名(默认值:时间戳)fullPage(布尔值,可选):捕获整页(默认值:false)
屏幕截图保存到: /tmp/rod-screenshots/
rod_get_attribute
获取HTML属性值(非常适合HTMX-R状态)。
论据:
selector(字符串,必填):CSS选择器attribute(字符串,必填):属性名称
rod_get_text
获取元素的文本内容。
论据:
selector(字符串,必填):CSS选择器
rod_wait_for
等待元素出现。
论据:
selector(字符串,必填):CSS选择器timeout(数字,可选):超时秒数(默认值:30)
rod_eval
在页面上下文中执行JavaScript。
论据:
script(字符串,必填):JavaScript代码
rod_fill
填写输入字段。
论据:
selector(string,必填):用于输入的CSS选择器text(字符串,必填):要填写的文本
使用示例
测试HTMX-R状态变化
Use rod_navigate to go to http://localhost:8080
Use rod_get_attribute on "[data-state-demo]" for attribute "data-state-demo"
Result: "hidden"
Use rod_click on "button[hx-state-toggle='demo']"
Use rod_get_attribute on "[data-state-demo]" for attribute "data-state-demo"
Result: "visible"拍摄屏幕截图
Use rod_navigate to go to http://localhost:8080
Use rod_screenshot with fullPage: true, filename: "landing-page.png"
Result: Screenshot saved to /tmp/rod-screenshots/landing-page.png需求
- 转到1.21+
- Chrome/Chromium浏览器
- macOS/Linux/Windows
许可证
麻省理工学院
