Skip to main content

ArduPilot MCP Server Sandbox

ArduPilot ドローンをLLMと連携して自然言語で操作するMCPサーバーです。
Claude DesktopやCline などMCPホストから利用可能です。

alt text
https://youtu.be/y1WE1cDC54Y?si=iy6vdGl38aTRcFcF

動作環境(SITLテスト可能)

  • ArduPilot (SITL or 実機)
  • MAVLink 通信が tcp:127.0.0.1:5762 で受け付け可能であること
  • Python 3.10+

Mission Planner のシミュレータを使う場合

ArduPilotドローンのシミュレーションを簡単に試すには、Mission Planner の内蔵シミュレータを使うのが便利です。

  1. Mission Planner をインストール
  2. 起動後、上部メニューの シミュレーション ボタンをクリック
  3. 次の画面で Multirotor(マルチローター) を選択
  4. ダイアログの Stable ボタンをクリック
  5. ArduPilotシミュレータが起動し、tcp:127.0.0.1:5762 で待ち受けを開始します

alt text

セットアップ手順

  1. Python 環境の準備

    • Python 3.10+ 推奨
    • Windows / macOS / Linux 対応
  2. 利用可能なツールのインストール

    pip install -r requirements.txt
    
  3. MCPサーバーの起動確認(手動実行)

    python ardupilot_mcp_server.py
    

    「MCPサーバーを起動します...」と出れば準備完了です。

Cline との連携手順

  1. OpenRouter にサインアップし、APIキーを取得
  2. VS Code に Cline 拡張機能 をインストール
  3. VS Code の settings.json に以下を追加:
    {
    "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 からの使用方法(GUI連携)

  1. Claude Desktop をインストール

  2. 設定ファイル claude_desktop_config.json を開く

    Windows の場合: C:\Users\{ユーザー名}\AppData\Roaming\Claude\claude_desktop_config.json

  3. 以下を追記:

    {
        "mcpServers": {
            "ardupilot-controller": {
            "command": "python",
            "args": [
                "C:/Users/your-user-name/path/to/ardupilot_mcp_server.py"
            ],
            "alwaysAllow": [
                "arm",
                "disarm",
                "takeoff",
                "change_mode"
            ]
            }
        }
    }
    

    ※ パスは環境に応じて調整してください。

  4. Claude Desktop を再起動

利用できるMCPツール一覧

コマンド 説明
arm() 機体をアームします
disarm() 機体をディスアームします
takeoff(altitude=10.0) 指定高度まで離陸します
change_mode(mode="GUIDED") モードを変更します

プロンプト例(チャットでの操作)

Cline、または Claude Desktop に話しかけて、ArduPilot を自然言語で操作できます:

  • 「ArduPilotをアームして」
  • 「10メートルまで離陸して」
  • 「モードをGUIDEDに変更して」
  • 「ArduPilotをディスアームして」

※ MCP サーバーに登録されているツールに応じて、自然文が自動で変換されます。

Metadata

Release files for iflow-mcp_hfujikawa77-ardupilot-mcp-server-sandbox 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iflow-mcp_hfujikawa77-ardupilot-mcp-server-sandbox 0.1.0
File Size Uploaded
iflow_mcp_hfujikawa77_ardupilot_mcp_server_sandbox-0.1.0.tar.gz 761.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iflow-mcp_hfujikawa77-ardupilot-mcp-server-sandbox 0.1.0
File Interpreter ABI Platform
iflow_mcp_hfujikawa77_ardupilot_mcp_server_sandbox-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 1.5 MB

Release files / iflow_mcp_hfujikawa77_ardupilot_mcp_server_sandbox-0.1.0.tar.gz

Download URL iflow_mcp_hfujikawa77_ardupilot_mcp_server_sandbox-0.1.0.tar.gz
Size 761.0 kB
Tags Source
SHA-256 checksum
How to use checksums
55fcd478523c146e1ecf3066a490747ad32deb97478f965a3a934d32e96f07ef
BLAKE2b-256 checksum
How to use checksums
fe02e7acf13fae2cb7fb2023366264541f65fd676e4f8c46b03f1a1ea8d90ad9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / iflow_mcp_hfujikawa77_ardupilot_mcp_server_sandbox-0.1.0-py3-none-any.whl

Download URL iflow_mcp_hfujikawa77_ardupilot_mcp_server_sandbox-0.1.0-py3-none-any.whl
Size 779.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cca4dcf2764470a49c1c729b690f30bc8e6d349c40368814bca25f75f51d24be
BLAKE2b-256 checksum
How to use checksums
2ed9493d83edf7d9a511e71bc5f15fccb5dd79e2859a1500b6ffc39fb1f5cc26
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page