autoglm-mcp-server
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"autoglm-mcp-server": {
"args": [
"-y",
"autoglm-mcp-server"
],
"command": "npx",
"env": {
"AUTOGLM_API_KEY": "\u003cyour_zhipu_api_key\u003e"
}
}
}
}
服务介绍
AutoGLM MCP 服务器
一个用于 AutoGLM-Phone API 的模型上下文协议(MCP)服务器,支持在移动设备上进行自动化的图形用户界面交互。
概览
此 MCP 服务器提供了与 AutoGLM-Phone API 交互的工具,允许 AI 模型通过一系列动作控制移动设备。该服务器支持 Android (ADB)。
快速开始
使用 npx(推荐)
# Run directly without installation
npx -y autoglm-mcp-server
# With options
npx -y autoglm-mcp-server --transport http --port 3000
全局安装
npm install -g autoglm-mcp-server
autoglm-mcp-server
本地安装
npm install autoglm-mcp-server
MCP 客户端配置
Claude Desktop / Cursor (stdio 模式)
{
"mcpServers": {
"autoglm": {
"command": "npx",
"args": ["-y", "autoglm-mcp-server"],
"env": {
"AUTOGLM_API_KEY": "<YOUR_API_KEY>"
}
}
}
}
StreamableHTTP 模式
首先启动服务器:
npx -y autoglm-mcp-server --transport http --port 3000
然后配置您的 MCP 客户端:
{
"mcpServers": {
"autoglm": {
"url": "http://127.0.0.1:3000/mcp",
"headers": {
"Authorization": "<YOUR_API_KEY>"
}
}
}
}
配置
设置以下环境变量:
export AUTOGLM_API_KEY="your-api-key-here"
export AUTOGLM_API_URL="https://open.bigmodel.cn/api/paas/v4" # optional
export AUTOGLM_MODEL="autoglm-phone" # optional
或者基于 .env.example 创建一个 .env 文件。
使用
开发
npm run dev
构建
npm run build
生产
# stdio mode (default)
npm start
# HTTP mode
node dist/index.js --transport http --port 3000
# SSE mode
node dist/index.js --transport sse --port 3000
# HTTP mode on all interfaces
node dist/index.js --transport http --host 0.0.0.0 --port 3000
命令行选项
| 选项 | 别名 | 描述 | 默认值 |
|---|---|---|---|
--transport |
-t |
传输类型:stdio、http 或 sse |
stdio |
--port |
-p |
HTTP/SSE 传输的端口 | 3000 |
--host |
-h |
HTTP/SSE 传输的主机 | 127.0.0.1 |
--help |
显示帮助信息 |
可用工具
autoglm_list_adb_devices
列出通过 ADB(Android Debug Bridge)连接的所有 Android 设备。
参数:
response_format('markdown' | 'json', 可选): 输出格式
返回:
- 设备 ID、状态、连接类型、型号、Android 版本、屏幕尺寸
示例:
{}
autoglm_task
使用 AutoGLM 在线模型在已连接的设备上执行任务。模型将迭代地捕获屏幕截图、分析屏幕并执行操作,直到任务完成。
参数:
prompt(字符串, 必需): 自然语言任务描述 (1-5000 个字符)device_id(字符串, 可选): 目标 ADB 设备 IDmax_steps(数字, 可选): 最大执行步骤数 (默认: 100, 范围: 1-200)lang('cn' | 'en', 可选): 响应语言 (默认: 'cn')
工作原理:
- 通过 ADB 捕获当前屏幕
- 将屏幕图像和任务提示发送到 AutoGLM 在线模型
- 模型分析屏幕并决定下一步操作
- 通过 ADB 执行操作
- 重复上述步骤,直到任务完成或达到最大步骤数
示例:
{
"prompt": "Open WeChat and send a message to Mom saying hello",
"max_steps": 50,
"lang": "cn"
}
支持的操作
AutoGLM 模型可以执行以下操作:
| 操作 | 描述 | 参数 |
|---|---|---|
| Launch | 启动应用程序 | app_name |
| Tap | 点击坐标 | x, y (0-1000 缩放) |
| Type | 输入文本 | text |
| Type_Name | 按名称输入文本 | text |
| Swipe | 在坐标之间滑动 | x1, y1, x2, y2, duration |
| Back | 返回 | - |
| Home | 返回主屏幕 | - |
| Double Tap | 双击坐标 | x, y |
| Long Press | 长按坐标 | x, y, duration |
| Wait | 等待时长 | duration (毫秒) |
| Take_over | 请求人工接管 | reason |
| Note | 添加备注 | text |
| Call_API | 调用 API 端点 | endpoint, params |
| Interact | 与 UI 元素交互 | element, action |
坐标系统
所有坐标都使用相对于屏幕大小的 0-1000 缩放:
- (0, 0) 是左上角
- (1000, 1000) 是右下角
项目结构
autoglm-mcp-server/
├── src/
│ ├── index.ts # Main server entry point
│ ├── constants.ts # Configuration constants
│ ├── types.ts # TypeScript type definitions
│ ├── tools/
│ │ └── autoglm-tools.ts # MCP tool implementations
│ ├── services/
│ │ ├── autoglm-api-client.ts # AutoGLM API client
│ │ ├── autoglm-client.ts # AutoGLM client wrapper
│ │ └── adb-service.ts # ADB device service
│ └── schemas/
│ └── index.ts # Zod validation schemas
├── dist/ # Compiled output
├── package.json
├── tsconfig.json
├── .env.example
└── README.md
HTTP/SSE 认证
当使用 HTTP 或 SSE 传输时,可以通过 Authorization 头传递 API 密钥:
# Bearer token format
curl -X POST http://localhost:3000/mcp \
-H "Authorization: Bearer your-api-key" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"initialize",...}'
参考资料
许可证
MIT