airkorea-statistics-mcp
⚠️ サービス終了のお知らせ 本MCPサーバーは2026-08-23をもってfly.ioでのデプロイを終了しました。 コードは開発参考用としてリポジトリに残しています。
airkorea-statistics-mcp
韓国環境公団エアコリアの大気汚染統計サービス(ArpltnStatsSvc) OpenAPIをClaudeが 利用できるMCP(Model Context Protocol)サーバーとして提供します。市道別/市郡区別の リアルタイム平均情報と測定所別の日・月平均統計を照会できます。
エアコリア3段階分離開発のうち最後の段階であり、1段階(airkorea-realtime-mcp)、
2段階(airkorea-forecast-alert-mcp)と併用することを前提としています。
提供機能
ツール名 | 説明 |
| 市道別リアルタイム平均情報(時間/日平均)の照会 |
| 市郡区別リアルタイム平均情報(時間/日平均)の照会 |
| 測定所別リアルタイム日平均情報の照会(期間指定) |
| 測定所別リアルタイム月平均情報の照会(期間指定) |
測定単位: SO2/CO/O3/NO2 = ppm、PM10/PM2.5 = ㎍/㎥
Related MCP server: seoul-timeavg-air-mcp
このMCPの範囲について(重要)
大気汚染統計サービス(ArpltnStatsSvc)所属のオペレーション4つのみを含みます。以下の2つの オペレーションは元々3段階の候補でしたが、実際には別のサービスグループに属しているため 今回の範囲から除外しました(判断根拠はDEVPLAN.md 0-1節を参照、決定経緯はDEVLOG.mdを参照):
getTMStdrCrdnt(TM基準座標の照会) — 測定所情報照会サービス(MsrstnInfoInqireSvc) 所属、1段階(airkorea-realtime-mcp)と同じサービスグループgetUnityAirEnvrnIdexSnstiveAboveMsrstnList(統合大気環境指数「悪い」以上の測定所 リスト照会) — 大気汚染情報照会サービス(ArpltnInforInqireSvc)所属、1・2段階と同じ サービスグループ
2つのオペレーションを1・2段階リポジトリに追加するかどうかは別途協議予定です(保留状態)。
インストールおよび実行
pip install -r requirements.txt
cp .env.example .env # AIRKOREA_SERVICE_KEY 입력
python server.py環境変数
変数名 | 説明 |
| 公共データポータルで発行されたエアコリアサービスキー |
| サーバーポート (fly.ioデプロイ時に自動設定) |
注意: このMCPを呼び出すには、公共データポータルで**大気汚染統計サービス (ArpltnStatsSvc)**の活用申請が別途行われている必要があります(サービスID単位の個別 活用申請が必要)。申請後、実際に反映されるまで1〜2時間かかります。
デプロイ (fly.io)
fly launch --no-deploy
fly secrets set AIRKOREA_SERVICE_KEY=발급받은키
flyctl deployデプロイ後のコネクタ接続アドレス:
https://airkorea-statistics-mcp.fly.dev/mcpRate Limit
認証なしでアクセス可能な公開サーバーのため、IP基準の3段階rate limitが適用されます:
1分間に3回を超えると429
1時間以内に5回違反すると24時間ブロック
日次(rolling 24h)合計30回を超えると429
マルチマシンデプロイ時はインメモリカウンターがマシンごとに分離されるため、実質的な制限が マシン数に比例して緩和される可能性があります。
既知の制約事項 (実測確認済み、2026-08-23)
数値フィールドはJSON文字列として渡され、コード内でfloatに安全変換。欠測表現は
"-"ではなく**空文字列("")**であることを確認 (khaiValue、pm10Valueなどで 観測)。getCtprvnMesureSidoLIstレスポンスにkhaiValueフィールドが実際に含まれることを確認。sidoName=광주または전남を単独で渡すとtotalCount=0(データなし)が 返される — この2地域は必ず結合値전남광주で照会しないと正常なデータが得られない (仕様書と異なる実際の動作)。エラーレスポンスは実測範囲(コード30、10)内ではJSONで正常に返される。XMLフォールバック パーサーは実装されているが、実際のXMLエラーレスポンスは再現できていない — 今後XMLで 返されるケースが見つかった場合はDEVLOG.mdに追加記録予定。
SERVICETIMEOUT(504)はローカルテストでは再現されない — 再試行ロジック(最大3回)は 実装されているが、実際のタイムアウト状況での動作は未確認。
データ出典
提供機関: 韓国環境公団 (環境部業務委託機関)
プラットフォーム: 公共データポータル(data.go.kr)
API名: 韓国環境公団_エアコリア_大気汚染統計現況 (ArpltnStatsSvc)
ライセンス: 公共ヌリ第1類型 (著作者表示-変更禁止)
ライセンス
MIT License (コード自体)。元データは上記の公共ヌリライセンスに従います。
This server cannot be deployed
Maintenance
Related MCP Connectors
Korean company facts in English for AI agents: ~830 KOSPI-listed companies (DART profiles, KRW financials, recent filings) and ~110,000 corporate public procurement suppliers (12-month KONEPS contract awards), plus live National Tax Service business status checks. 4 tools, keyless, read-only.
Access UK air quality data, monitoring sites, and hourly pollutant measurements across regions
The official Model Context Protocol server for Ambee. It gives any MCP-compatible AI assistant — Claude, ChatGPT, Cursor, VS Code, Ollama, and more direct access to live air quality, pollen, and weather data. To get started, including information on signing up and obtaining your Ambee key, check out the Ambee documentation on https://docs.ambeedata.com
Air Quality MCP — wraps air-quality-api.open-meteo.com (free, no auth)
Related MCP Servers
- FlicenseAqualityBmaintenanceEnables Claude to query Korean public financial, economic, and statistical data (OpenDART, ECOS, KOSIS, and data.go.kr) via real API calls, providing factual answers instead of guesses.213-
- AlicenseNot gradedqualityCmaintenanceRetrieves hourly average air quality data (PM10, PM2.5, ozone, NO2, CO, SO2) from Seoul's open data platform, filtered by station or district.MIT
- AlicenseNot gradedqualityBmaintenanceEnables querying real-time air quality data by region in Seoul, South Korea, using the Seoul Open Data Platform API, supporting multiple regions and monitoring stations.MIT
- AlicenseNot gradedqualityCmaintenanceEnables querying Korean air quality forecasts, weekly ultrafine dust forecasts, high-concentration PM2.5 forecasts, particulate matter alarm statuses, ozone advisories, and yellow dust advisories from the AirKorea OpenAPI.MIT