该项目创建了一个MCP(模型上下文协议)服务器,允许AI代理通过现有的FastAPI机器人控制系统来控制多个机器人。
uv pip install -e .
启动机器人控制FastAPI服务器:
重要更新: Claude桌面客户端现在会自动为你运行MCP服务器
python server.pyMCP服务器允许AI代理控制多个机器人并访问它们的摄像头。
所有工具都接受一个port参数(默认:8000),用于指定要控制哪个机器人。
drive_forward:向前移动机器人drive_backward:向后移动机器人turn_left:左转机器人turn_right:右转机器人stop:停止机器人移动drive:使用精确的速度值进行控制beep:通过机器人的扬声器播放声音get_camera_image:获取机器人摄像头的图像robot_status:获取机器人状态信息list_available_robots:列出所有可用的机器人及其状态robot://info/{port}:获取特定机器人能力的信息# 从8000端口的机器人获取状态
status_robot1 = await client.robot_status(port=8000)
# 从8001端口的机器人获取状态
status_robot2 = await client.robot_status(port=8001)
# 让两个机器人发出不同音调的声音
await client.beep(port=8000, frequency=440, duration=1.0) # 机器人1发出A4音符
await client.beep(port=8001, frequency=523.25, duration=1.0) # 机器人2发出C5音符
# 列出所有可用的机器人
robots = await client.list_available_robots()
摄像头图像工具使用MCP的原生Image类来处理图像数据。这使得AI代理可以接收一种能够被客户端正确处理的图像数据格式,而无需额外转换。