使用说明
pyBittle mcp服务器
Python MCP(模型上下文协议)服务器,用于通过蓝牙控制Bittle机器人。此服务器公开了一组命令,用于使用MCP协议移动、摆姿势和与Bittle交互。
特性
- 通过蓝牙连接到Bittle
- 显示运动和姿势命令(向前、向后、转弯、坐下、休息等)
- 与MCP工具集成,用于远程和程序控制
- 将所有活动记录到
bittle_mcp.log
需求
安装和设置
-
安装uv(推荐用于快速、可靠的Python包管理):
curl -Ls https://astral.sh/uv/install.sh | sh -
安装uvx(MCP服务器所需):
curl -Ls https://astral.sh/uvx/install.sh | sh -
安装依赖项:
# Option 1: Using start_server.sh (recommended) chmod +x start_server.sh ./start_server.sh # Option 2: Manual installation uv pip install -r requirements.txt # or, if using pyproject.toml: uv pip install -r pyproject.toml
用法
-
配置蓝牙: 确保您的Bittle机器人已通电并处于蓝牙配对模式。
-
运行MCP服务器:
# Option 1: Using start_server.sh (recommended) ./start_server.sh # Option 2: Manual start uvx mcpo --port 8080 -- uv run --with 'mcp[cli]' --with git+https://github.com/cluesang/pyBittle.git mcp run ./server.py服务器将尝试连接到Bittle并将状态记录到
bittle_mcp.log. -
与MCP工具集成:
- 此服务器通过MCP协议公开命令,使任何兼容MCP的客户端或工具都可以访问这些命令。
- 您可以使用 MCP-CLI 或其他MCP工具,以发现和调用Bittle机器人上的可用命令。
- 示例(使用MCP CLI):
mcp call move_forward mcp call sit mcp call rest - 所有可用命令都装饰有
@mcp.tool()在……里面server.py并自动向MCP服务器注册。
发展
- 主要逻辑在
server.py. - 日志记录配置为同时输出到控制台和
bittle_mcp.log. - 命令用
@mcp.tool()用于MCP暴露。 - 使用
start_server.sh用于开发,因为它处理环境设置和流程管理。
故障排除
- 如果服务器连接失败,请检查蓝牙配对,并确保没有其他进程使用Bittle连接。
- 审查
bittle_mcp.log查看详细的错误消息。 - 如果遇到端口冲突,
start_server.sh将自动处理杀死现有服务器进程。 - 确保两者都
uv和uvx已安装并可在PATH中使用。
许可证
MIT许可证