Skip to content

Latest commit

 

History

History
468 lines (387 loc) · 21.5 KB

File metadata and controls

468 lines (387 loc) · 21.5 KB

English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe | Українська | বাংলা | Ελληνικά | Tiếng Việt | हिन्दी


satellite-mcp

AIエージェントのためのフルスペクトル地理空間インテリジェンス。

衛星画像、航空機追跡、船舶追跡、軍事インテリジェンス、スペクトル解析、変化検出、紛争モニタリング、環境モニタリング — 単一のMCPサーバーに統合。
AIエージェントは27個のブラウザタブを手動で切り替える代わりに、完全なGEOINT能力をオンデマンドで取得できます。


課題差別化ポイントクイックスタートAIにできることツール (171)データソースアーキテクチャ変更履歴コントリビューション

npm License Bun MCP 171 Tools 27 Categories

satellite-mcp デモ


課題

地理空間インテリジェンスは、あらゆるセキュリティ調査と状況認識タスクに欠けているレイヤーです。衛星画像、航空機追跡、船舶追跡、軍事施設、紛争データ、環境モニタリング、スペクトル解析、変化検出 — 必要なデータは数十のプラットフォームに散在し、それぞれが独自のAPI、認証、レート制限、出力形式を持っています。今日、CopernicusでSentinel-2画像を検索し、USGSでLandsatデータを照会し、OpenSkyで航空機を追跡し、別のインターフェースで船舶を監視し、そしてすべての情報を手動で相関させるのに数時間を費やしています。

従来のGEOINTワークフロー:
  衛星画像の検索               ->  Copernicus + USGS(2つの別々のUI)
  航空機の追跡                 ->  OpenSky Network ウェブインターフェース
  船舶の追跡                   ->  Global Fishing Watch ウェブインターフェース
  軍事活動の監視               ->  複数の個別OSINTソース
  紛争イベントの分析            ->  ACLED ウェブインターフェース
  環境変化の確認                ->  NASA Earthdata + FIRMS(2つのUI)
  スペクトル指数の計算           ->  デスクトップGISソフトウェア
  変化検出の実行                ->  専用リモートセンシングツール
  全データの相関                ->  コピー&ペーストでレポート作成
  ────────────────────────────────
  合計: 調査あたり60分以上、その大半がコンテキスト切り替えに消費

satellite-mcpModel Context Protocol を通じてAIエージェントに27カテゴリのデータソースにまたがる171のツールを提供します。エージェントは全データソースを並列にクエリし、プラットフォーム間でデータを相関させ、パターンと異常を識別し、単一の会話で統合インテリジェンスピクチャーを提示します。

satellite-mcp使用時:
  ユーザー: 「イスタンブール地域の過去30日間の変化を分析してください」

  エージェント: -> sentinel_search: 12枚のSentinel-2画像を発見(雲量 < 20%)
               -> firms_active_area: 3箇所の活性火災を検出
               -> quake_recent: 200km圏内で大きな地震活動なし
               -> ship_area: ボスポラス海峡に847隻の船舶
               -> aircraft_area: 156機の航空機を検出
               -> weather_current: 22°C、一部曇り、視程10km
               -> 「イスタンブール地域の過去30日間: 変化分析に利用可能な
                  Sentinel-2画像12枚、活性火災3箇所を検出(農業焼却
                  の可能性)、ボスポラス海峡の海上交通は混雑。
                  地震活動なし。農業地域にNDVI解析による
                  植生変化検出を推奨します。」

差別化ポイント

既存ツールは一度に1つのデータソースから生データを提供するだけです。satellite-mcpは、AIエージェントが複数の地理空間インテリジェンスドメインを同時に推論できるようにします。

従来のアプローチ satellite-mcp
インターフェース 27の異なるウェブUI、CLI、API MCP — AIエージェントが会話形式でツールを呼び出し
データソース 一度に1つのプラットフォーム 27カテゴリを並列クエリ
衛星画像 Copernicus、USGS、Planetのインターフェースを個別に使用 エージェントがSentinel-2 + Landsat + Planet画像を統合検索
航空機追跡 OpenSkyウェブインターフェースで手動照会 エージェントがリアルタイムで航空機を追跡、軍事信号を検出、航路を分析
船舶追跡 複数のAISプラットフォームを個別に照会 エージェントが船舶を追跡、制裁対象を識別、漁業活動を監視
APIキー ほぼすべてのツールに必要 多くのツールが無料で動作。APIキーでプレミアムソースを解放
セットアップ 各ツールを個別にインストール、各設定を管理 npx satellite-mcp — コマンド1つ、設定不要

クイックスタート

オプション1: npx(インストール不要)

npx satellite-mcp

無料ツールがすぐに使えます。地震データ、天気、ジオコーディング、スペクトル解析、変化検出、OpenStreetMapなど、APIキーは不要です。

オプション2: クローン

git clone https://github.com/badchars/satellite-mcp.git
cd satellite-mcp
bun install

環境変数(オプション)

# 衛星画像
export COPERNICUS_CLIENT_ID=your-id         # Sentinel-2画像検索を有効化
export COPERNICUS_CLIENT_SECRET=your-secret  # Copernicus OAuth2シークレット
export USGS_USERNAME=your-user               # Landsat画像検索を有効化
export USGS_PASSWORD=your-pass               # USGS EarthExplorerパスワード
export PLANET_API_KEY=your-key               # Planet Labs画像ツールを有効化

# NASA
export NASA_API_KEY=your-key                 # NASA API(フォールバック: DEMO_KEY)
export NASA_FIRMS_KEY=your-key               # NASA FIRMS活性火災データ
export NASA_EARTHDATA_TOKEN=your-token       # NASA Earthdataトークン

# 追跡
export OPENSKY_USERNAME=your-user            # OpenSky Network(レート制限向上)
export OPENSKY_PASSWORD=your-pass            # OpenSky Networkパスワード
export GFW_API_KEY=your-key                  # Global Fishing Watch船舶追跡
export N2YO_API_KEY=your-key                 # N2YO衛星/宇宙ステーション追跡

# インテリジェンス
export ACLED_API_KEY=your-key                # ACLED紛争データ
export ACLED_EMAIL=your-email                # ACLED登録メール
export COMTRADE_API_KEY=your-key             # 国連貿易データベース
export TIMEZONEDB_KEY=your-key               # タイムゾーンデータベース

すべてのAPIキーはオプションです。設定しなくても、地震モニタリング、天気照会、ジオコーディング、スペクトル解析、変化検出、OpenStreetMap、地形分析など多数の機能が利用可能です。

AIエージェントに接続

Claude Code
# npx使用
claude mcp add satellite-mcp -- npx satellite-mcp

# ローカルクローン使用
claude mcp add satellite-mcp -- bun run /path/to/satellite-mcp/src/index.ts
Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json に追加:

{
  "mcpServers": {
    "satellite": {
      "command": "npx",
      "args": ["-y", "satellite-mcp"],
      "env": {
        "COPERNICUS_CLIENT_ID": "optional",
        "COPERNICUS_CLIENT_SECRET": "optional",
        "NASA_API_KEY": "optional",
        "OPENSKY_USERNAME": "optional",
        "PLANET_API_KEY": "optional",
        "ACLED_API_KEY": "optional"
      }
    }
  }
}
Cursor / Windsurf / その他のMCPクライアント

同じJSON設定形式を使用します。commandを npx satellite-mcp またはローカルインストールパスに指定してください。

クエリ開始

ユーザー: 「イスタンブール周辺50km圏内の地震活動と活性火災を照会してください」

以上です。エージェントが衛星画像検索、航空機追跡、船舶追跡、紛争分析などを自動的に処理します。


AIにできること

衛星画像分析

ユーザー: 「アンカラの2024年3月のSentinel-2画像を検索してください」

エージェント: -> sentinel_search {bbox: [32.5, 39.7, 33.1, 40.1], date_from: "2024-03-01", date_to: "2024-03-31"}
             -> 「8枚のSentinel-2画像が見つかりました:
                - 2024-03-28: 雲量5%(最適)
                - 2024-03-21: 雲量12%
                - 2024-03-15: 雲量8%
                NDVI植生分析または都市拡大変化検出に使用可能です。」

航空機追跡

ユーザー: 「現在イスタンブール上空にどんな航空機がいますか?」

エージェント: -> aircraft_area {lamin: 40.8, lamax: 41.3, lomin: 28.5, lomax: 29.4}
             -> 「142機の航空機を検出:
                - 89機 商用便(THY、Pegasus、AJetなど)
                - 12機 一般航空機
                - 3機 軍用信号(機種未特定)
                - 38機 地上状態(アタテュルク / イスタンブール空港)」

船舶・海洋追跡

ユーザー: 「ボスポラス海峡の船舶活動はどうですか?」

エージェント: -> ship_area {lat: 41.1, lon: 29.05, radius: 10}
             -> sanctions_vessel_search {query: "検出されたMMSIリスト"}
             -> 「ボスポラス海峡: 847隻の船舶
                - 312隻 貨物船
                - 89隻 タンカー
                - 156隻 旅客船/フェリー
                - 2隻が制裁審査リストに該当 -- 追加調査が必要」

ツールリファレンス(171ツール)

カテゴリ ツール数 認証要件
Sentinel-2 (Copernicus) 8 COPERNICUS_CLIENT_ID + COPERNICUS_CLIENT_SECRET
Landsat (USGS) 7 USGS_USERNAME + USGS_PASSWORD
NASA FIRMS(活性火災) 6 NASA_FIRMS_KEY(オプション)
NASA 地球観測 7 NASA_API_KEY(フォールバック DEMO_KEY)
夜間光 (VIIRS) 5 NASA_EARTHDATA_TOKEN
Planet Labs 4 PLANET_API_KEY
航空機インテリジェンス 10 OPENSKY_USERNAME(オプション、レート向上)
船舶インテリジェンス 8 GFW_API_KEY
宇宙・軌道追跡 6 N2YO_API_KEY
軍事・防衛 8 APIキー不要
紛争・イベント 6 ACLED_API_KEY + ACLED_EMAIL
環境インテリジェンス 6 APIキー不要
海洋インテリジェンス 5 APIキー不要
地震・災害 5 APIキー不要
天気・大気 6 APIキー不要
地形・標高 6 APIキー不要
重要インフラ 6 APIキー不要
制裁・コンプライアンス 5 APIキー不要
サイバー地理インテリジェンス 6 APIキー不要
人口・人口統計 5 APIキー不要
農業・食料安全保障 5 APIキー不要
人道支援・難民 5 APIキー不要
貿易インテリジェンス 5 COMTRADE_API_KEY(オプション)
OpenStreetMap / Overpass 8 APIキー不要
ジオコーディング・座標 8 TIMEZONEDB_KEY(オプション)
スペクトル解析 8 APIキー不要
変化検出 6 APIキー不要
Meta 1 APIキー不要

CLI使用方法

# 利用可能な全ツールを一覧表示
npx satellite-mcp --list

# ツールを直接実行
npx satellite-mcp --tool spectral_ndvi '{"nir":0.8,"red":0.2}'
npx satellite-mcp --tool geo_distance '{"lat1":41.01,"lng1":28.98,"lat2":39.93,"lng2":32.86}'
npx satellite-mcp --tool quake_recent '{"min_magnitude":4.0,"limit":10}'
npx satellite-mcp --tool firms_active_country '{"country":"TR","days":1}'

APIキーリファレンス

環境変数 データソース 説明
COPERNICUS_CLIENT_ID Copernicus Data Space Sentinel-2画像検索用OAuth2クライアントID
COPERNICUS_CLIENT_SECRET Copernicus Data Space Sentinel-2画像検索用OAuth2クライアントシークレット
USGS_USERNAME USGS EarthExplorer Landsat画像検索ユーザー名
USGS_PASSWORD USGS EarthExplorer Landsat画像検索パスワード
NASA_API_KEY NASA APIs NASA APIキー(未設定時DEMO_KEY使用)
NASA_FIRMS_KEY NASA FIRMS 活性火災データマップキー
NASA_EARTHDATA_TOKEN NASA Earthdata 夜間光および高度なデータ用ベアラートークン
PLANET_API_KEY Planet Labs 高解像度画像APIキー
OPENSKY_USERNAME OpenSky Network 航空機追跡ユーザー名(レート制限向上)
OPENSKY_PASSWORD OpenSky Network 航空機追跡パスワード
GFW_API_KEY Global Fishing Watch 船舶追跡・漁業モニタリングAPIキー
N2YO_API_KEY N2YO 衛星・宇宙ステーション追跡APIキー
ACLED_API_KEY ACLED 紛争イベントデータAPIキー
ACLED_EMAIL ACLED ACLED登録メール
COMTRADE_API_KEY UN Comtrade 国際貿易データAPIキー
TIMEZONEDB_KEY TimezoneDB タイムゾーン照会APIキー

アーキテクチャ

src/
  index.ts                # CLIエントリポイント(--help、--list、--tool、stdioサーバー)
  protocol/
    mcp-server.ts         # MCPサーバーセットアップ(stdioトランスポート)
    tools.ts              # ツールレジストリ -- 全171ツールをここで集約
  types/
    index.ts              # 共有型(ToolDef、ToolContext、ToolResult)
  utils/
    rate-limiter.ts       # データソースごとの独立レートリミッター
    cache.ts              # APIレスポンスTTLキャッシュ
  sentinel/               # Sentinel-2画像ツール (8)
  landsat/                # Landsat画像ツール (7)
  firms/                  # NASA FIRMS火災ツール (6)
  nasa/                   # NASA地球観測ツール (7)
  nightlights/            # VIIRS夜間光ツール (5)
  planet/                 # Planet Labs画像ツール (4)
  aircraft/               # 航空機追跡ツール (10)
  maritime/               # 船舶追跡ツール (8)
  space/                  # 宇宙追跡ツール (6)
  military/               # 軍事インテリジェンスツール (8)
  conflict/               # 紛争イベントツール (6)
  environment/            # 環境モニタリングツール (6)
  ocean/                  # 海洋インテリジェンスツール (5)
  seismic/                # 地震災害ツール (5)
  weather/                # 天気インテリジェンスツール (6)
  terrain/                # 地形標高ツール (6)
  infrastructure/         # インフラモニタリングツール (6)
  sanctions/              # 制裁審査ツール (5)
  cyber/                  # サイバー地理インテリジェンスツール (6)
  population/             # 人口統計ツール (5)
  agriculture/            # 農業食料安全保障ツール (5)
  humanitarian/           # 人道支援危機ツール (5)
  trade/                  # 貿易インテリジェンスツール (5)
  osm/                    # OpenStreetMapツール (8)
  geo/                    # 地理空間計算ツール (8)
  spectral/               # スペクトル解析ツール (8)
  change/                 # 変化検出ツール (6)
  meta/                   # Metaツール (1)

設計上の判断:

  • 27カテゴリ、1サーバー — 各データソースは独立モジュールです。エージェントがクエリに基づいて適切なツールを自律的に選択します。
  • データソースごとの独立レート制限 — 各データソースはそのAPIの制限に合わせて調整された独自の RateLimiter インスタンスを持ちます。共有ボトルネックはありません。
  • TTLキャッシュ — 衛星画像検索(15分)、地震データ(5分)、天気データ(10分)の結果がキャッシュされ、マルチツールワークフローでの冗長なAPI呼び出しを防止します。
  • グレースフルデグラデーション — APIキーがなくてもサーバーはクラッシュしません。ツールが説明的なエラーメッセージを返します:「COPERNICUS_CLIENT_IDを設定してSentinel-2画像検索を有効にしてください。」
  • 依存関係2つ@modelcontextprotocol/sdkzod。すべてのHTTPはネイティブ fetch で実装。

コントリビューション

コントリビューションを歓迎します。開発セットアップ、コーディングガイドライン、提出手順については CONTRIBUTING.md をお読みください。


MCPセキュリティスイートシリーズ

プロジェクト ドメイン ツール数
hackbrowser-mcp ブラウザベースのセキュリティテスト 39ツール
cloud-audit-mcp クラウドセキュリティ (AWS/Azure/GCP) 38ツール
github-security-mcp GitHubセキュリティポスチャー 39ツール
cve-mcp 脆弱性インテリジェンス 23ツール
osint-mcp-server OSINT・偵察 37ツール
darknet-mcp-server ダークウェブ・脅威インテリジェンス 66ツール
satellite-mcp 地理空間インテリジェンス (GEOINT) 171ツール

認可されたセキュリティテストおよび評価目的にのみ使用してください。
いかなる対象に対してもインテリジェンス収集を実施する前に、適切な権限を確保してください。

MIT License • Bun + TypeScriptで構築