Skip to main content
Glama
blevinstein

Aviation Model Context Protocol

by blevinstein

航空MCP: 航空データ用モデルコンテキストプロトコルサーバー

Aviation MCPは、FAAやその他の航空APIにマッピングされたモデルコンテキストプロトコル(MCP)サーバースイートを提供し、リアルタイムの航空データをLLMベースのワークフローに容易に統合できるようにします。このプロジェクトは、LLMクライアント(Cursor、Claudeなど)を気象、NOTAM、海図、航空機情報などの信頼できる航空データソースに接続したい開発者向けに設計されています。

⚠️免責事項⚠️

このコードの開発者は、データを提供するAPIの正確性や安全性、または特定の飛行における飛行計画について責任を負いません。これは、ソフトウェアとFlightPlanning.md内の指示の両方に適用されます。これらの指示は、適切なライセンスを持つパイロットの専門知識に代わるものではありません。飛行の安全性とすべての関連規制の遵守については、機長が単独で責任を負います。

特徴

  • 航空データ用のモジュラーMCPサーバー

  • FAA、航空気象、その他のAPIと統合

  • MCP 互換の LLM クライアントで使用するための簡単な設定

  • npmパッケージとして公開: aviation-mcp

Related MCP server: Aviation MCP Server

MCPサーバーの使用

aviation-mcp サーバーを mcp.json に追加します。キーを有効な値に更新してください(FAA API クライアント認証情報についてはhttps://api.faa.gov/s/、APIキーについてはhttps://api-ninjas.com/ をご覧ください)。キーを削除すると、関連する API が非表示になります。

航空天気予報(多くの地理参照データを含む)とチャートにはAPIキーは必要ありません。NOTAMにはFAAクライアントID/シークレットが必要です。

{
   "mcpServers": {
      "aviation": {
         "command": "npx",
         "args": [
            "-y",
            "aviation-mcp"
         ],
         "env": {
            "API_NINJA_KEY": "<your-key>",
            "FAA_CLIENT_ID": "<your-id>",
            "FAA_CLIENT_SECRET": "<your-secret>"
         }
      }
   }
}

公式ソース

  • 天気: 航空天気データ (METAR、TAF、PIREP、SIGMET、G-AIRMET など)

  • チャート:セクショナル、TAC、IFR エンルート、TPP チャート

  • NOTAM : FAA NOTAM API

🚧 壊れたソース 🚧

以下のソースは役立ちますが、統合または API アクセスはまだ機能していません。

  • 降水量:FAA EIM Weather Proximity API(降水量データ)

  • 空港:FAA空港および滑走路情報

実装されていません

  • 遅延: ASWS FAA API は空港の遅延に関する情報を提供します。

🚧🚧 非公式ソース 🚧🚧

  • 航空機:航空機データ

🚧 ソースがありません 🚧

  • 手順ルートを機械可読形式で出力します。TODO: CIFP データをダウンロードし、 arinc424などのツールを使用して、使用可能な形式に変換します。

  • 機械で読み取り可能な形式の空域データ。TODO: NASR データをダウンロードし、ライブラリを使用してシェープファイルや AIXM データを読み取ります。

使用法

設定が完了すると、LLMクライアントはMCPサーバーに接続し、必要に応じて航空データを照会できるようになります。mcp.json mcp.jsonの提供方法の詳細については、クライアントのドキュメントを参照してください。

フライト計画に使用するサンプル システム プロンプトについては、 FlightPlanning.md を参照してください。

時間的な認識については、時間と組み合わせることをお勧めします。

EFB 管理の場合、ファイルシステムまたはgdriveとの組み合わせを検討してください。

APIカバレッジ

サポートされている API、エンドポイント、統合ステータスの詳細なリストについては、 Sources.md参照してください。

ライセンス

マサチューセッツ工科大学

Available Tools

1 tool
get_notamsC

Retrieves NOTAMs based on specified filters

ParametersJSON Schema
NameRequiredDescriptionDefault
classificationNoThe NOTAM classification
domesticLocationNoThe domestic location criteria (e.g., 'IAD' for Dulles International Airport)
effectiveEndDateNoThe effective end date
effectiveStartDateNoThe effective start date
featureTypeNoThe feature type filter
icaoLocationNoThe ICAO location criteria (e.g., 'KIAD' for Dulles International Airport)
lastUpdatedDateNoThe last update date
locationLatitudeNoThe location latitude (e.g., 60.57)
locationLongitudeNoThe location longitude (e.g., -151.24)
locationRadiusNoThe location radius in nautical miles (max: 100)
notamNumberNoThe NOTAM number (e.g., 'CK0000/01')
notamTypeNoThe NOTAM type: 'N' for New, 'R' for Replaced, 'C' for Canceled
pageNumNoThe page number
pageSizeNoThe page size (max: 1000)
responseFormatNoResponse format for NOTAM datageoJson
sortByNoThe field to sort results by
sortOrderNoThe sort order

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries full burden but only states retrieval with filters. It lacks behavioral details like pagination handling (implied by pageNum/pageSize but not explained), rate limits, authentication needs, or response format implications (e.g., geoJson output). This leaves significant gaps in understanding tool behavior.

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

Conciseness5/5

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

The description is a single, efficient sentence that front-loads the core action and scope without unnecessary words. It's appropriately sized for its purpose, with zero waste.

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

Completeness2/5

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

For a complex tool with 17 parameters, no annotations, and no output schema, the description is inadequate. It doesn't address behavioral aspects like pagination, response formats, or error handling, leaving the agent with insufficient context to use the tool effectively.

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

Parameters3/5

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

Schema description coverage is 100%, so parameters are well-documented in the schema. The description adds no extra meaning beyond implying filters exist, which the schema already details. Baseline 3 is appropriate as the schema handles parameter semantics effectively.

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

Purpose4/5

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

The description clearly states the verb ('Retrieves') and resource ('NOTAMs'), with scope ('based on specified filters'). It's specific about the action and subject matter, though without sibling tools to differentiate from, it can't achieve the highest score for sibling differentiation.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool, such as scenarios or prerequisites. The description mentions filters but doesn't explain their application or alternatives, leaving usage context unclear.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev1.0.0
    • First observedget_notams

TDQS

B3/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The single tool 'get_notams' has a clear, distinct purpose focused on retrieving NOTAMs.

Naming Consistency5/5

The tool name 'get_notams' follows a clear verb_noun pattern (get + notams). Since there is only one tool, consistency is inherently perfect with no deviations or mixed conventions.

Tool Count2/5

The server has only one tool, which feels thin for a domain like aviation that typically involves multiple operations such as querying weather, flight plans, or airspace data. This minimal toolset limits functionality and suggests an incomplete surface.

Completeness1/5

The toolset is severely incomplete for an aviation context. It only provides NOTAM retrieval, with no coverage for other essential aviation data like METARs, TAFs, flight tracking, or airspace information, leading to significant gaps in agent workflows.

Maintenance

ActivityInactive
ResponsivenessUnresponsive

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    B
    maintenance
    Enables flight planning and aviation operations through intelligent airport resolution, great-circle route calculation, and aircraft performance estimation. Supports 28,000+ airports worldwide and 190+ aircraft types for comprehensive flight planning via natural language.
    12
    46
    4
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Provides AI assistants with access to real-time flight data, airport schedules, delays, and aviation reference databases through natural language queries.
    12
    191 npm
    MIT