ArduPilot 是一个与LLM集成,通过自然语言操作无人机的MCP服务器。
可以从MCP主机如Claude Desktop或Cline访问。

https://youtu.be/y1WE1cDC54Y?si=iy6vdGl38aTRcFcF
tcp:127.0.0.1:5762 上监听要轻松地尝试ArduPilot无人机的模拟,可以使用Mission Planner内置的模拟器。
模拟 按钮多旋翼稳定 按钮
准备Python环境
安装可用工具
pip install -r requirements.txt
手动启动确认MCP服务器
python ardupilot_mcp_server.py
如果显示「正在启动MCP服务器...」则设置完成。
{
"cline.apiKey": "sk-xxxxxxx",
"cline.apiBaseUrl": "https://openrouter.ai/api/v1",
"cline.defaultModel": "deepseek/deepseek-chat-v3-0324:free",
"cline.mcpServers": {
"ardupilot-controller": {
"command": "python",
"args": [
"${workspaceFolder}/ardupilot_mcp_server.py"
],
"env": {
"PYTHONPATH": "${env:USERPROFILE}\\.local\\lib\\python3.12\\site-packages"
}
}
}
}
※ 根据环境调整python路径和PYTHONPATH。打开配置文件 claude_desktop_config.json
对于Windows用户: C:\Users\{用户名}\AppData\Roaming\Claude\claude_desktop_config.json
添加以下内容:
{
"mcpServers": {
"ardupilot-controller": {
"command": "python",
"args": [
"C:/Users/your-user-name/path/to/ardupilot_mcp_server.py"
],
"alwaysAllow": [
"arm",
"disarm",
"takeoff",
"change_mode"
]
}
}
}
※ 根据环境调整路径。
重启Claude Desktop
| 命令 | 说明 |
|---|---|
| arm() | 使机体处于待命状态 |
| disarm() | 解除机体的待命状态 |
| takeoff(altitude=10.0) | 起飞至指定高度 |
| change_mode(mode="GUIDED") | 更改飞行模式 |
可以通过与Cline或Claude Desktop对话,以自然语言方式控制ArduPilot:
※ 自然语言会根据MCP服务器注册的工具自动转换。