マニュアル

AIアシスタント

ローカルMCPサーバーを有効にし、Cursor、Claude Desktop、またはClaude Codeからアプリを操作する方法について説明します。

AstroPlotorium ユーザーマニュアル

MCP Server にチェックのあるホームメニュー

AstroPlotorium は、同じコンピュータ上で動作している AI アシスタントからコマンドを受け取って動作することができます。AI アシスタントはスクリプトコンソールとまったく同じ機能(ビューの切り替え、時計の操作、観測地の変更、レイヤー表示、天体の選択など)を使って、現在開いている AstroPlotorium を直接操作できます(コンピュータ内の他のファイルを勝手に閲覧することはありません)。

コマンド名、角度の表記、時間の単位、およびレイヤー ID は、スクリプトで説明しているものと共通です。カメラの旋回、ズーム、およびアニメーション付きの時間移動は、その動作が完了してからツールの応答が返る仕組みになっているため、直後にスクリーンショットを撮影すれば、移動が完了した落ち着いた状態の画面を確実に取得できます。

MCP サーバーを有効にする

  • ステップ1: AstroPlotorium を起動し、画面左上の【Home】メニューを開きます。
  • ステップ2: 「MCP Server (localhost)」にチェックを入れます。
  • ステップ3: サーバーはこのコンピュータ内(ローカル)でのみ待ち受けを開始します。エンドポイントの URL は以下の通りです。

http://127.0.0.1:8765/mcp

このメニュー項目にチェックを入れるまではサーバーはオフになっています。チェック状態は次回起動時にも記憶されます。チェックを外すか、アプリを終了するとポートは閉じます。AI アシスタントから接続する際は、あらかじめ AstroPlotorium が起動しており、「MCP Server (localhost)」にチェックが入っている必要があります。

ポート番号を別途変更していない限り、上記のアドレスをそのまま使用してください(ポートを変更している場合は、URL 内のポート番号をその値に置き換えてください)。

初期状態ではパスワード(認証トークン)は不要です。もしトークン認証を有効にしている環境では、AI アシスタント側から Authorization: Bearer <トークン> ヘッダーを付与して送信する必要があります。

※クラウド上の外部コネクタから 127.0.0.1(ローカルホスト)へ直接アクセスすることはできません。MCP サーバーは必ずこのコンピュータ内のみで使用し、ポート 8765 をインターネットへ開放(ポートフォワーディング)しないでください。トークンを使用する場合は、セッションのパスワードと同様に厳重に扱ってください。

Cursor での接続設定

Cursor はローカルの HTTP アドレスを直接指定して接続できます。

  • ステップ1: プロジェクト内の .cursor/mcp.json、またはホームディレクトリの ~/.cursor/mcp.json を開きます(両方のファイルに astroplotorium が定義されている場合は、プロジェクト側のファイルが優先されます)。または、「Cursor Settings → MCP」から追加することもできます。
  • ステップ2: 以下の設定を記述して保存します。
{
  "mcpServers": {
    "astroplotorium": {
      "url": "http://127.0.0.1:8765/mcp"
    }
  }
}

トークン認証を使用している場合は、以下のように headers を追加します。

{
  "mcpServers": {
    "astroplotorium": {
      "url": "http://127.0.0.1:8765/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_TOKEN"
      }
    }
  }
}
  • ステップ3: サーバーが表示されない場合は、Cursor の MCP 設定画面で有効(オン)になっているか、また AstroPlotorium 側で「MCP Server (localhost)」にチェックが入った状態で起動しているかを確認してください。

Claude Desktop での接続設定

Claude Desktop はローカルツールをコマンドラインプログラム(標準入出力)として起動する仕組みのため、設定ファイルの URL 欄から直接 http://127.0.0.1 を呼び出すことはできません。そのため、npx コマンドが使えるよう Node.js 18 以降をインストールした上で、mcp-remote ブリッジを経由して接続します。

  • ステップ1: Claude Desktop のメニューから「Settings → Developer → Edit Config」を開きます(設定ファイルが存在しない場合は新規作成します)。
OS 設定ファイルのパス
macOS ~/Library/Application Support/Claude/claude_desktop_config.json
Windows %APPDATA%\Claude\claude_desktop_config.json
Linux ~/.config/Claude/claude_desktop_config.json
  • ステップ2: すでに他の MCP サーバーを設定している場合は、それらを消さないよう既存の mcpServers の中に astroplotorium の項目を追加します。
{
  "mcpServers": {
    "astroplotorium": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "http://127.0.0.1:8765/mcp",
        "--allow-http",
        "--transport",
        "http-only"
      ]
    }
  }
}

※ -y は確認プロンプトなしで npx を実行するオプション、--allow-http はローカル HTTP 接続を許可するオプション、--transport http-only は AstroPlotorium の通信方式に合わせるための指定です。

トークン認証を使用している場合は、Bearer … に含まれるスペースが正しく渡されるよう、以下のように環境変数(env)経由でヘッダーを指定します。

{
  "mcpServers": {
    "astroplotorium": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "http://127.0.0.1:8765/mcp",
        "--allow-http",
        "--transport",
        "http-only",
        "--header",
        "Authorization:${AUTH_HEADER}"
      ],
      "env": {
        "AUTH_HEADER": "Bearer YOUR_TOKEN"
      }
    }
  }
}
  • ステップ3: メニューバーやシステムトレイに常駐しているプロセスも含めて Claude Desktop を一度完全に終了し、再起動します。メッセージ入力欄にハンマーのアイコンが表示されれば、ツールが利用可能になっています。

Claude Code での接続設定

Claude Code はローカルの HTTP アドレスを直接登録できます。

  • コマンドラインから追加する場合:
claude mcp add --transport http astroplotorium http://127.0.0.1:8765/mcp
  • 設定ファイル(~/.claude.json またはプロジェクトの .mcp.json)に記述する場合: "type": "http" を含めて記述します。
{
  "mcpServers": {
    "astroplotorium": {
      "type": "http",
      "url": "http://127.0.0.1:8765/mcp"
    }
  }
}

AI アシスタントで実行できるツール一覧

AI アシスタントには、普段の自然な言葉で指示を出してください(例:「土星を表示して視野を2度にして」「今夜の東京の空を見せて」など)。アシスタントは内部で以下の MCP ツールを呼び出してアプリを操作します。

ツール名 動作内容
goto、view 指定した名前の天体を選択し、カメラを向けます。
navigator_select、navigator_list 左側の【Navigator】メニューの行をタイトルまたは ID で開くか、現在の【Main View】で選択可能な行の一覧を取得します。
set_fov 視野角(FOV)を度(数値)または角度文字列で設定します。
set_layer、list_layers レイヤーの表示/非表示を切り替えるか、レイヤー ID の一覧を取得します。
set_constellation_visible、list_constellations、set_constellation_preset 個別の星座の表示切り替え、星座一覧の取得、またはプリセット(all / none / zodiac)を設定します。
set_asterism_visible、list_asterisms、set_asterism_preset アステリズムについて同様の表示切り替え、一覧取得、またはプリセット(all / none)を設定します。
set_option、list_options スライダーやメニューのオプション値を設定するか、設定可能なオプション一覧を取得します。
set_time ISO 形式の UTC 時刻へ即座にジャンプします。
add_time 時計を進めます(または戻します)。unit は Y、M、D、h、m、s から指定します。duration_ms に 0 を指定すると即座にジャンプし、省略すると短いアニメーションで移動します。
set_auto_update_unit 「Play」再生やステップボタンで使用する時間単位を設定します。
time_play、time_stop、time_resume、time_reset 早送り再生、一時停止、実時間再生、または現在時刻へのリセットを行います。
time_increment、time_decrement、time_increment10、time_decrement10 時計の「+1」/「−1」/「+10」/「−10」ボタンと同じステップ移動を行います。
set_location、get_location 都市名、保存した場所、または緯度・経度で観測地を設定・取得します。
set_look_from、get_look_from 観測地点とする天体(「Look from target」)を設定・取得します。
set_view_mode メニューと同じ名前で【Main View】を切り替えます。
set_orbit_altitude_km 【3D Orbit】でのカメラ高度(km 単位)を設定します。
set_orbit_iss_track 【3D Orbit】で ISS 風の簡易周回軌道のオン/オフを切り替えます。
set_orbit_fly 【3D Orbit】で自由飛行のロックを解除します。
set_coordinate_system 座標系(equatorial、ecliptic、galactic、horizontal)を切り替えます。
look_at_radec、look_at_equatorial、look_at_ecliptic、look_at_galactic、look_at_horizontal 指定した座標系の角度でカメラの視線を向けます。
camera_rotate マウスドラッグに相当する角度(度単位)だけ視線を回転させます。
follow_target、follow_view_from 選択天体の追尾(Track)、または地球・太陽への追従(Camera follows)を切り替えます。
show_navigator、show_property_list、show_charts 左右のサイドパネルやサイドチャートの表示/非表示を切り替えます。
set_display_view 表示枠モード(default、photoreal、presentation)を切り替えます。
set_secondary_view_fov、set_secondary_view_sync サブ 3D ビューの視野角設定、およびメインカメラとの同期を切り替えます。
wait、wait_for_user 指定時間の待機、またはアプリ画面上でユーザーが「Next」をクリックするまで待機します。
get_state、set_state 現在のビュー状態の読み取り、または指定したキーの状態復元を行います。
get_target_property 現在選択されている天体の【Property panel】の情報を取得します。
calc 選択状態を変えずに、指定した天体のプロパティ情報を計算・取得します(オプションで UTC 日時を指定可能)。
calc_validate 1 つの惑星または衛星の位置を NASA JPL Horizons のデータと比較検証します(ネットワーク接続が必要です)。
hms_to_deg、deg_to_hms 時・分・秒(hms)表記から度(°)への変換、およびその逆変換を行います。
dms_to_deg、deg_to_dms 度・分・秒(dms)表記から度(数値)への変換、およびその逆変換を行います。
search、help 天体・都市名の候補検索、およびコマンド一覧の取得を行います。
screenshot PNG 画像を保存し、その画像をアシスタントへ返します(省略可能な種類:default、photoview、presentation、presentation_chart)。
run_script スクリプトコンソールと同じコマンド群を使って JavaScript プログラムを一括実行します。

なお、run_script 自体は自動的に【Presentation】モードをオンにはしません。ツールバーを隠して実行したい場合は、アシスタントにプレゼンテーションモードにするよう指示するか、キーボードの P キーを押してください。また、wait_for_user を呼び出すと、ガイドツアーと同様に、クリックするまで画面上に「Next」ボタンが表示されます。