使用说明
go_computer_use_mcp_server
[!警告] 此服务器旨在作为 受信任的本地MCP工具.
它目前提供 广泛的本地桌面控制 并且是 默认情况下不沙盒.
在没有额外安全控制的情况下,不要将其暴露给不受信任的网络、用户或代理。
用于计算机自动化的Go中的MCP(模型上下文协议)服务器。用途 机器人 桌面自动化库。
特性
- 鼠标控制:移动、单击、拖动、滚动
- 键盘控制:按键、文本输入、热键
- 屏幕操作:屏幕截图、像素颜色、显示信息
- 窗口管理:移动、调整大小、最小化/最大化
- 过程管理:列出进程、搜索、终止
- 系统实用程序:系统信息、对话框、延迟
npx快速入门
运行服务器最简单的方法是通过npx(需要Node.js 18+):
# Run with stdio transport (for MCP clients)
npx go-computer-use-mcp-server -t stdio
# Run with SSE transport
npx go-computer-use-mcp-server -t sse -h 0.0.0.0 -p 8080
MCP官方登记处
该服务器准备在MCP官方注册表中发布为:
io.github.hightemp/go-computer-use-mcp-server
注册表元数据在中定义 server.jsonnpm包中包含一个匹配的 mcpName 领域 package.json,注册表使用它来验证包所有权。
对于维护者来说,发布工作流首先发布npm包,等待该包版本在npm注册表中可见,然后发布 server.json 通过GitHub OIDC身份验证。
与AI工具集成
克劳德桌面版
添加到您的Claude Desktop配置文件中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
视窗: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"computer-use": {
"command": "npx",
"args": ["-y", "go-computer-use-mcp-server", "-t", "stdio"]
}
}
}
克劳德代码
使用CLI命令:
claude mcp add computer-use -- npx -y go-computer-use-mcp-server -t stdio
claude mcp add --transport stdio \
--env DISPLAY="$DISPLAY" \
--env XAUTHORITY="${XAUTHORITY:-$HOME/.Xauthority}" \
computer-use -- \
npx -y go-computer-use-mcp-server -t stdio
或者手动添加到项目的 .mcp.json 文件:
{
"mcpServers": {
"computer-use": {
"command": "npx",
"args": ["-y", "go-computer-use-mcp-server", "-t", "stdio"]
}
}
}
开源代码
添加到您的 opencode.jsonc 配置文件:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"computer-use": {
"type": "local",
"command": ["npx", "-y", "go-computer-use-mcp-server", "-t", "stdio"],
"enabled": true
}
}
}
食品法典委员会(OpenAI)
使用CLI命令:
codex mcp add computer-use -- npx -y go-computer-use-mcp-server -t stdio
或添加到 ~/.codex/config.toml:
[mcp_servers.computer-use]
command = "npx"
args = ["-y", "go-computer-use-mcp-server", "-t", "stdio"]
env_vars = ["DISPLAY", "XAUTHORITY"]
光标
添加到光标MCP配置中。首选 Cursor Settings > Features > MCP Servers 并添加:
{
"mcpServers": {
"computer-use": {
"command": "npx",
"args": ["-y", "go-computer-use-mcp-server", "-t", "stdio"]
}
}
}
帆板运动
添加 ~/.codeium/mcp_config.json 或通过 Settings > Cascade > MCP Servers > Add Server:
{
"mcpServers": {
"computer-use": {
"command": "npx",
"args": ["-y", "go-computer-use-mcp-server", "-t", "stdio"]
}
}
}
Cline(VS代码扩展)
单击临床面板中的MCP服务器图标,选择“配置”选项卡,然后选择“配置MCP服务器”进行编辑 cline_mcp_settings.json:
{
"mcpServers": {
"computer-use": {
"command": "npx",
"args": ["-y", "go-computer-use-mcp-server", "-t", "stdio"],
"disabled": false
}
}
}
通用MCP客户端
对于任何兼容MCP的客户端,请使用:
npx -y go-computer-use-mcp-server -t stdio
从源安装
需求
- 转到1.21+
- GCC编译器
- X11库(Linux)
Ubuntu/Debian
# Go (if not installed)
sudo snap install go --classic
# GCC
sudo apt install gcc libc6-dev
# X11
sudo apt install libx11-dev xorg-dev libxtst-dev
# Clipboard support
sudo apt install xsel xclip
# Bitmap support (for image operations)
sudo apt install libpng++-dev
# Event hook support
sudo apt install xcb libxcb-xkb-dev x11-xkb-utils libx11-xcb-dev libxkbcommon-x11-dev libxkbcommon-dev
一个衬垫:
sudo apt install gcc libc6-dev libx11-dev xorg-dev libxtst-dev xsel xclip libpng++-dev xcb libxcb-xkb-dev x11-xkb-utils libx11-xcb-dev libxkbcommon-x11-dev libxkbcommon-dev
菲多拉
# GCC (if not installed)
sudo dnf install gcc
# X11
sudo dnf install libX11-devel libXtst-devel
# Clipboard support
sudo dnf install xsel xclip
# Bitmap support
sudo dnf install libpng-devel
# Event hook support
sudo dnf install libxkbcommon-devel libxkbcommon-x11-devel xorg-x11-xkb-utils-devel
一个衬垫:
sudo dnf install gcc libX11-devel libXtst-devel xsel xclip libpng-devel libxkbcommon-devel libxkbcommon-x11-devel xorg-x11-xkb-utils-devel
构建
# Download dependencies
make deps
# Build for current platform
make build
# Build for all platforms
make build-all
正在运行(来源)
SSE传输(默认)
./go_computer_use_mcp_server -t sse -h 0.0.0.0 -p 8080
标准运输
./go_computer_use_mcp_server -t stdio
命令行参数
| 参数 | 描述 | 默认值 |
|---|---|---|
-t |
运输: sse 或 stdio |
sse |
-h |
SSE服务器主机 | 0.0.0.0 |
-p |
SSE服务器端口 | 8080 |
可用工具
鼠标控制(12个工具)
| 工具 | 说明 |
|---|---|
mouse_move |
将光标移动到绝对坐标 |
mouse_move_smooth |
平滑的光标移动(类似人类) |
mouse_move_relative |
相对光标移动 |
mouse_get_position |
获取当前光标位置 |
mouse_click |
鼠标点击 |
mouse_click_at |
移动并单击 |
mouse_toggle |
按下/松开鼠标按钮 |
mouse_drag |
拖动操作 |
mouse_drag_smooth |
平稳拖动操作 |
mouse_scroll |
滚动 |
mouse_scroll_direction |
按方向滚动 |
mouse_scroll_smooth |
平滑滚动 |
键盘控制(7个工具)
| 工具 | 说明 |
|---|---|
key_tap |
按键(带修改器) |
key_toggle |
按下/松开键 |
type_text |
键入文本(UTF-8) |
type_text_delayed |
键入带有延迟的文本 |
clipboard_read |
读取剪贴板 |
clipboard_write |
写入剪贴板 |
clipboard_paste |
通过剪贴板粘贴 |
屏幕操作(7个工具)
| 工具 | 说明 |
|---|---|
screen_get_size |
获取屏幕尺寸 |
screen_get_displays_num |
监视器数量 |
screen_get_display_bounds |
监控边界 |
screen_capture |
屏幕截图(返回MCP图像内容) |
screen_capture_save |
捕获并保存到文件 |
screen_get_pixel_color |
坐标处的像素颜色 |
screen_get_mouse_color |
光标下的像素颜色 |
窗口管理(9个工具)
| 工具 | 说明 |
|---|---|
window_get_active |
活动窗口信息 |
window_get_title |
窗口标题 |
window_get_bounds |
窗口边界 |
window_set_active |
激活窗口 |
window_move |
移动窗口 |
window_resize |
调整窗口大小 |
window_minimize |
最小化窗口 |
window_maximize |
最大化窗口 |
window_close |
关闭窗口 |
流程管理(6个工具)
| 工具 | 说明 |
|---|---|
process_list |
列出所有流程 |
process_find_by_name |
按名称查找流程 |
process_get_name |
通过PID获取进程名称 |
process_exists |
检查流程是否存在 |
process_kill |
终止进程 |
process_run |
运行命令 |
系统实用程序(3个工具)
| 工具 | 说明 |
|---|---|
system_get_info |
系统信息 |
util_sleep |
睡眠/延迟 |
alert_show |
显示对话框 |
使用示例
移动鼠标并单击
{
"tool": "mouse_click_at",
"arguments": {
"x": 100,
"y": 200,
"button": "left",
"double": false
}
}
键入文本
{
"tool": "type_text",
"arguments": {
"text": "Hello, World!",
"delay": 50
}
}
快捷键
{
"tool": "key_tap",
"arguments": {
"key": "c",
"modifiers": ["ctrl"]
}
}
屏幕捕获
{
"tool": "screen_capture",
"arguments": {
"x": 0,
"y": 0,
"width": 800,
"height": 600
}
}
支持的密钥
字母与数字
a-z, A-Z, 0-9
功能键
f1-f24
导航
up, down, left, right, home, end, pageup, pagedown
特殊钥匙
backspace, delete, enter, tab, escape, space, insert, capslock
修饰符
alt, ctrl, shift, cmd (或 command)
多媒体
audio_mute, audio_vol_down, audio_vol_up, audio_play, audio_stop, audio_pause
许可证
麻省理工学院