Skip to main content
Glama

planetary_orbiter_track

Plot an orbiter’s current position and trajectory on a planetary map, or find a flyby’s closest-approach time, altitude, speed, and point.

Instructions

任意の天体(月・火星・水星・タイタン等)を周回する探査機、または接近通過(フライバイ)・スイングバイする探査機の現在位置と航路を、その天体の地図にプロットした画像を返す。flyby=True で最接近(CA)を自動探索し、最接近時刻・高度・相対速度・最接近点を出す(軌道表示の対象は月・火星・水星・タイタン・ベスタ・ケレス+ガリレオ衛星)。

例:「LROの現在位置を月面地図で」「MROの火星での現在地」「火星周回機の位置」「BepiColombo の水星接近通過(フライバイ)の航路」「ジュノーのエウロパフライバイ」「エウロパ・クリッパーの火星スイングバイ」

Args: body: 天体名(和名も可。"エウロパ" → europa)。軌道表示は moon, mars, mercury, titan, vesta, ceres, io, europa, ganymede, callisto の10天体 (Trek にタイルが無い天体は1枚の全球画像をベースマップに使う)。 地点が登録されていない天体(ガス惑星・小天体)は sites="map" で全球図を返す。 orbiter: 機体名。周回機(月: lro, gateway/火星: mro, odyssey)/接近通過する探査機 (ミッション名: "europa clipper"/"juice"/"bepicolombo"/"hera"/"psyche"/"lucy"/ "new horizons"/"はやぶさ2"/"juno"/"parker solar probe"/"solar orbiter"/"mmx")/ JPL Horizons の負の天体ID(例 "-74")。和名・別名も可("かぐや"/"エウロパ・クリッパー" 等)。 過去機(kaguya 等)は運用終了のため現在位置は返さず、落点が公表されている 機体(かぐや)は落点の緯度経度・時刻・出典を structuredContent.impact_site に返す。 when: 観測時刻 ISO8601(例 "2026-09-10T00:00:00Z")。省略で現在。 minutes: 現在位置の前後何分の軌道を表示するか(既定 90, 最大 1440)。 step: トレイルの時間刻み(分。既定: 通常 5/flyby=True では 1, 最小 1/60=1秒)。 ca_hours: 最接近を探す範囲(指定時刻の前後。既定 48=±24時間, 最大 720=±30日)。 zoom: 地図ズーム 1〜最大(既定: span_deg>=360 なら1=全面, それ未満は3)。 span_deg: 表示する経度幅(度。360=天体全面, 既定 120, 最大 360)。 out_px: 出力画像の長辺ピクセル(既定 900, 最大 1600)。 flyby: True で接近通過(フライバイ)モード。指定時刻の前後 ca_hours/2 時間を 走査して最接近(CA)を探し、表示時刻と地図の中心を CA へ置き直す (トレイルは CA の前後 minutes 分。既定 False=従来どおり指定時刻の位置)。 sites: 地点マーカー図にする場合の地点指定(例 "apollo"=アポロ6地点すべて、 "apollo11"="apollo17"=個別、"map"=地図のみ、"newcrater"=月に新しくできた クレーター2点)。指定すると周回機の計算を行わず、公表座標にマーカーを置いた図を 返す(1地点なら局所図、複数なら天体全面図+凡例)。旗の位置は公開表に無いため、 注記でその旨を明示する。sites="newcrater" は マクゲッチン(2024-04-11〜 05-22 に自然衝突で形成。直径 222 m・1.3536°N 67.1765°E)と ファルコン9上段の 衝突痕(2026-08-05 06:35 UTC。直径 18 m・19.4759°N 266.7138°E)を返す。 記録上いちばん新しいのは人工物の衝突(ファルコン9上段, 2026-08-05)、 自然衝突ではマクゲッチンが最新(この規模は月で平均 132 年に1回)。 mode: "map"(既定)=天体面の等角地図に真下の点の軌跡を描く/ "orbit3d"=天体を中心に置いた 3D の斜め俯瞰。地表図では読めない **軌道面の傾斜角・高度の幅・進行方向(順行/逆行)**を図と数値で示す (周回機の軌道を「斜めから立体的に」見たいとき・教育用途はこちら)。 "3d"/"orbit"/"oblique3d" も同じ。 elevation: 3D ビューのカメラ仰角(度, 0〜90。既定 34)。0 で真横(軌道面が線に見える =傾斜が最も分かる)、90 で真上(軌道が円に見える)。mode="orbit3d" でのみ効く。 azimuth: 3D ビューのカメラ方位(度, -360〜360。既定 28)。黄道面内の回転。 dolly: 透視の強さ=カメラ距離(画面半径の倍数, 0〜20。既定 4.2)。0 で完全な正射影。 (elevation/azimuth/dolly は範囲外・非数値なら黙ってクランプせずエラー結果を返す)

回答時はこのリンクをそのまま提示してください(画像が描画されない環境では唯一の導線)。

Input Schema

NameRequiredDescriptionDefault
bodyNomoon
modeNomap
stepNo
whenNo
zoomNo
dollyNo
flybyNo
sitesNo
out_pxNo
azimuthNo
minutesNo
orbiterNolro
ca_hoursNo
span_degNo
elevationNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv0.48.0
    • addedInput schema / properties / azimuth
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / dolly
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / elevation
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / mode
      Added value: +{
      +  "default": "map",
      +  "type": "string"
      +}
  2. Changed4 schema fields changedv0.41.8
    • addedInput schema / properties / ca_hours
      Added value: +{
      +  "default": 48,
      +  "type": "number"
      +}
    • addedInput schema / properties / flyby
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • removedInput schema / properties / step / default
      Removed value: -5
    • changedInput schema / properties / step / type
      Previous value: -"integer"New value: +[
      +  "number",
      +  "null"
      +]
  3. Changed19 schema fields changedv0.41.4
    • removedInput schema / properties / body / title
      Removed value: -"Body"
    • removedInput schema / properties / minutes / title
      Removed value: -"Minutes"
    • removedInput schema / properties / orbiter / title
      Removed value: -"Orbiter"
    • removedInput schema / properties / out_px / title
      Removed value: -"Out Px"
    • removedInput schema / properties / sites / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedInput schema / properties / sites / default
      Removed value: -null
    • removedInput schema / properties / sites / title
      Removed value: -"Sites"
    • addedInput schema / properties / sites / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedInput schema / properties / span_deg / title
      Removed value: -"Span Deg"
    • removedInput schema / properties / step / title
      Removed value: -"Step"
    • removedInput schema / properties / when / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedInput schema / properties / when / default
      Removed value: -null
    • removedInput schema / properties / when / title
      Removed value: -"When"
    • addedInput schema / properties / when / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedInput schema / properties / zoom / anyOf
      Removed value: -[
      -  {
      -    "type": "integer"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedInput schema / properties / zoom / default
      Removed value: -null
    • removedInput schema / properties / zoom / title
      Removed value: -"Zoom"
    • addedInput schema / properties / zoom / type
      Added value: +[
      +  "integer",
      +  "null"
      +]
    • removedInput schema / title
      Removed value: -"planetary_orbiter_trackArguments"
  4. Changed1 schema field changedv0.29.1
    • addedInput schema / properties / sites
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Sites"
      +}
  5. Addedv0.25.2

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and mostly succeeds: it discloses the 10 drawable bodies, the specific orbiters and mission-name aliases accepted, that retired craft return an impact site in structuredContent.impact_site rather than a current position, that out-of-range elevation/azimuth/dolly return an error instead of silently clamping, and that the returned link must be presented verbatim. It omits any statement of read-only/non-mutating nature and any latency or rate-limit context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The summary sentence and example list are correctly front-loaded, but the sites paragraph drifts far off task, spending many words on the McGetchin crater's 222 m diameter, coordinates, and a once-per-132-years formation statistic that an agent does not need in order to call sites="newcrater". The parameter block is otherwise dense and well organized, but the total length is well past what invocation requires.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 15-parameter, effectively zero-schema-coverage tool with no annotations, the description supplies enough to call it correctly in every mode. With no output schema, the return side is only partially covered — it says an image plus a link come back and that impact data lands in structuredContent.impact_site, but the overall response shape and the non-impact structured fields are not spelled out.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and there are 15 parameters, so the description must do everything — and it documents every one: body aliases, orbiter naming forms including negative Horizons IDs, when/minutes/step/ca_hours defaults and maxima, zoom/span_deg rule interaction, out_px cap, flyby center-shifting, sites presets, mode aliases, and the 3D camera triple. It even resolves a schema ambiguity by stating elevation/azimuth/dolly are degrees despite being typed as strings, and that non-numeric input errors rather than clamps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening sentence states a specific verb and resource: it returns an image plotting the current position and trajectory of a spacecraft orbiting, flying by, or swinging past an arbitrary body, drawn on that body's map. The orbiting/flyby distinction and the supported body list let an agent separate this from siblings like planetary_rover_location_map or sat_ground_track without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides concrete example queries and explicit mode-selection rules (mode="orbit3d" for orbital inclination/altitude spread/education, sites="map" for bodies without registered sites, flyby=True to auto-search closest approach). What it never does is name a competing sibling tool or state an exclusion (e.g., when Earth-satellite ground tracks belong to sat_ground_track instead).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.