一个将openclaw(小龙虾)和智能陪伴机器人联系在一起的项目。现在我们可以语音控制小龙虾了!
OpenClaw MCP 桥接服务
云端 MCP 服务 + 本地桥接客户端,实现云端的 AI 智能体控制本地小龙虾。
项目结构
├── server/ # Java MCP 服务 (云端部署)
├── client/ # Python 桥接客户端 (本地运行)
└── README.md
架构
┌─────────────────────────────────────────────────────────────────────┐
│ 云端 │
│ ┌──────────────┐ ┌──────────────────────────────────────────┐│
│ │ 七牛/小智平台 │ ───→ │ MCP 服务 (server) ││
│ │ (携带MAC地址) │ │ ┌────────────┐ ┌────────────────────┐ ││
│ └──────────────┘ │ │ MCP Tools │ │ WebSocket Server │ ││
│ │ └────────────┘ └────────────────────┘ ││
│ └──────────────────────────────────────────┘│
│ ▲ │
└───────────────────────────────────────────────│─────────────────────┘
│ WebSocket
┌───────────────────────────────────────────────│─────────────────────┐
│ 内网 │ │
│ ┌──────────────────────│─────────────────┐ │
│ │ ▼ │ │
│ │ ┌──────────────────────────────────┐│ │
│ │ │ 桥接客户端 (client) ││ │
│ │ │ (注册时携带MAC地址和会话ID) ││ │
│ │ └──────────────────────────────────┘│ │
│ │ │ │ │
│ │ │ CLI │ │
│ │ ▼ │ │
│ │ ┌──────────────────────────────────┐│ │
│ │ │ 小龙虾 ││ │
│ │ └──────────────────────────────────┘│ │
│ └────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────────┘
功能特性
- 🖥️ 图形界面: 跨平台 Tkinter GUI,支持 Windows 和 macOS
- 📱 扫码绑定: 手机扫码登录,自动获取设备 MAC 地址
- 📑 会话管理: 自动获取小龙虾会话列表,一键选择
- 🔄 实时连接: WebSocket 长连接,支持自动重连
- 📋 命令执行: 接收云端命令,本地执行小龙虾
工作流程
- 本地客户端注册: 客户端启动后,携带 MAC 地址和小龙虾会话ID 连接到 MCP 服务的 WebSocket
- 智能体请求: 云端智能体请求时,通过 HTTP Header
X-Linx-Mac-Address传递设备 MAC 地址 - 路由转发: MCP 服务根据 MAC 地址找到对应的客户端连接,转发命令
- 本地执行: 客户端调用本地小龙虾 CLI 执行命令
- 结果返回: 执行结果原路返回给智能体
快速开始
1. 部署 MCP 服务 (云端)
cd server
mvn clean package -DskipTests
java -jar target/aigf-openclaw-mcp-1.0.0.jar
服务启动后:
- MCP 端点:
http://localhost:8000 - WebSocket 端点:
ws://localhost:8000/ws/bridge - 登录页面:
http://localhost:8000/static/login.html
配置说明:
服务地址通过环境变量配置(推荐):
# Linux/macOS
export WANWULIAN_BASE_URL=https://your-wanwulian-server.com
export WANWULIAN_API_PREFIX=/wanwulian-api
# Windows PowerShell
$env:WANWULIAN_BASE_URL="https://your-wanwulian-server.com"
$env:WANWULIAN_API_PREFIX="/wanwulian-api"
# 启动服务
java -jar target/aigf-openclaw-mcp-1.0.0.jar
或创建 application-prod.yml 配置文件(参考 application-prod.yml.example)。
本地开发:使用 application-dev.yml 配置,默认指向 localhost:9074。
2. 运行桥接客户端 (本地)
cd client
pip install -r requirements.txt
python ui.py
配置项:
- 服务器地址: MCP 服务的 WebSocket 地址,如
ws://your-server:8000/ws/bridge - 设备MAC地址: 点击"扫码绑定"自动获取,或手动输入
- 小龙虾会话: 从下拉列表中选择
3. 智能体调用
智能体请求时需要在 HTTP Header 中传递:
X-Linx-Mac-Address: 设备 MAC 地址
组件说明
| 组件 | 目录 | 语言 | 部署位置 | |------|------|------|----------| | MCP 服务 | server/ | Java | 云端服务器 | | 桥接客户端 | client/ | Python | 本地电脑 |
API 接口
用户登录接口
| 接口 | 方法 | 说明 |
|------|------|------|
| /api/user/captcha | POST | 发送手机验证码 |
| /api/user/login | POST | 手机号登录并返回设备列表 |
| /api/user/devices | GET | 获取用户设备列表 |
扫码登录接口
| 接口 | 方法 | 说明 |
|------|------|------|
| /api/login-session/create | POST | 创建登录会话 |
| /api/login-session/result/{sessionId} | GET | 查询登录结果 |
| /api/login-session/confirm/{sessionId} | POST | 确认选择设备 |
相关文档
联系与支持
如果这个项目对你有帮助,欢迎支持!你的star是我们持续更新的动力
| 微信咨询 | 赞赏支持 |
|:--------:|:--------:|
|
|
|
| 扫码添加微信咨询 | 如果觉得有用,请作者喝杯咖啡 |
许可证
MIT License