mcpField
R
Robotgo Mcp

Robotgo Mcp

本地服务
github.com/lian-yang其他333 周前更新

关于 Robotgo Mcp

Robotgo Mcp 是一个使用 robotgo 实现桌面自动化的 Go MCP 服务。它提供屏幕、鼠标、键盘、剪贴板、进程和窗口控制,并支持 stdio 与 SSE 传输模式。

主要功能

  1. 01鼠标移动、点击、滚动和拖拽
  2. 02键盘输入与组合键操作
  3. 03屏幕截图、尺寸和像素颜色
  4. 04剪贴板读写
  5. 05进程与窗口管理
  6. 06stdio 和 SSE 传输及 SSE 认证

适用场景

  1. 01截取屏幕或检查像素颜色
  2. 02自动执行鼠标和键盘操作
  3. 03读取或更新剪贴板内容
  4. 04查找进程或控制窗口

MCP 相关

该 MCP 服务向 AI 客户端提供桌面自动化工具,包括屏幕、鼠标、键盘、剪贴板、进程和窗口操作。它支持 stdio 与 SSE 传输;SSE 可使用 Bearer Token 认证。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

来自项目 README

RobotGo MCP Server

一个基于 Go 语言的 MCP (Model Context Protocol) 服务器,使用 robotgo 自动化库实现桌面自动化功能。这个服务允许 AI 客户端(如 Claude Desktop)通过 MCP 协议控制鼠标、键盘、屏幕等桌面元素。

✨ 特性

  • 🖱️ 鼠标控制: 移动、点击、滚动、拖拽
  • ⌨️ 键盘控制: 输入文本、按键、组合键
  • 📸 屏幕操作: 截图、获取屏幕尺寸、获取像素颜色
  • 📋 剪贴板: 读写剪贴板内容
  • 🔄 进程管理: 列出、查找、终止进程
  • 🪟 窗口管理: 获取、激活、关闭、最小化、最大化窗口
  • 🔌 双传输模式: 支持 stdio 和 SSE 传输
  • 🔐 SSE 认证: Bearer Token 认证支持
  • 📊 结构化日志: JSON 格式日志输出

🚀 快速开始

安装

使用 go install(推荐):

go install github.com/lian-yang/robotgo-mcp/cmd/robotgo-mcp@latest

安装后,可执行文件会在 $GOPATH/bin 或 $HOME/go/bin 目录中。

从源码构建:

# 克隆仓库
git clone https://github.com/lian-yang/robotgo-mcp.git
cd robotgo-mcp

# 编译
make build
运行

stdio 模式(推荐用于 Claude Desktop):

./robotgo-mcp --transport=stdio

SSE 模式(用于远程访问):

./robotgo-mcp --transport=sse --port=8080 --auth-token=your-secret-token
配置 Claude Desktop

在 Claude Desktop 配置文件中添加:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "robotgo": {
      "command": "/path/to/robotgo-mcp",
      "args": ["--transport=stdio"]
    }
  }
}

📖 使用示例

屏幕截图
使用 screen:capture 工具截取整个屏幕
鼠标操作
使用 mouse:move 移动鼠标到坐标 (100, 200)
使用 mouse:click 点击鼠标左键
使用 mouse:scroll 向下滚动 10 个单位
键盘输入
使用 keyboard:type 输入 "Hello, World!"
使用 keyboard:hotkey 执行 Ctrl+C 复制操作
进程管理
使用 process:list 列出所有进程
使用 process:find 查找名称包含 "chrome" 的进程
使用 process:kill 终止 PID 为 1234 的进程

🛠️ 可用工具

屏幕工具 (Screen)
  • screen:capture - 截取屏幕或指定区域
  • screen:get_size - 获取屏幕尺寸
  • screen:get_pixel - 获取指定位置像素颜色
鼠标工具 (Mouse)
  • mouse:move - 移动鼠标
  • mouse:click - 点击鼠标按钮
  • mouse:scroll - 滚动鼠标滚轮
  • mouse:drag - 拖拽鼠标
  • mouse:get_position - 获取鼠标位置
键盘工具 (Keyboard)
  • keyboard:type - 输入文本
  • keyboard:tap - 按下并释放单个键
  • keyboard:hotkey - 执行组合键
  • keyboard:press - 按下并保持
  • keyboard:release - 释放按键
剪贴板工具 (Clipboard)
  • clipboard:get - 读取剪贴板
  • clipboard:set - 写入剪贴板
  • clipboard:clear - 清空剪贴板
进程工具 (Process)
  • process:list - 列出所有进程
  • process:find - 查找进程
  • process:kill - 终止进程
窗口工具 (Window)
  • window:get_active - 获取活动窗口
  • window:set_active - 设置活动窗口
  • window:close - 关闭窗口
  • window:minimize - 最小化窗口
  • window:maximize - 最大化窗口
  • window:get_title - 获取窗口标题

完整文档请查看 docs/tools.md

⚙️ 配置

命令行参数
参数环境变量默认值说明
--transportROBOTGO_TRANSPORTstdio传输方式 (stdio/sse)
--portROBOTGO_PORT8080SSE 端口
--hostROBOTGO_HOST127.0.0.1SSE 绑定地址
--auth-tokenROBOTGO_AUTH_TOKEN""SSE 认证令牌
--log-levelROBOTGO_LOG_LEVELinfo日志级别
--debug-false启用调试模式

🔧 开发

系统要求
  • Go 1.21+
  • GCC (robotgo 依赖)
构建
go build -o robotgo-mcp ./cmd/robotgo-mcp
测试
# 使用 MCP Inspector 测试
npx @modelcontextprotocol/inspector ./robotgo-mcp

# 手动测试
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | ./robotgo-mcp

⚠️ 权限说明

macOS

在 macOS 上,需要授予辅助功能权限:

  1. 系统偏好设置 → 安全性与隐私 → 隐私
  2. 选择"辅助功能"
  3. 添加终端或您的应用程序到列表中
Linux

在 Linux 上,可能需要安装额外的依赖:

# Ubuntu/Debian
sudo apt-get install libx11-dev libxrandr-dev libxtst-dev

# Fedora
sudo dnf install libX11-devel libXrandr-devel libXtst-devel
Windows

Windows 通常不需要额外配置。

📝 许可证

MIT License

🤝 贡献

欢迎提交 Issue 和 Pull Request!

🙏 致谢

  • robotgo - Go 跨平台桌面自动化库
  • mcp-go - Go 语言的 MCP SDK

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。