Skip to main content
Glama
hlucent

airkorea-realtime-mcp

by hlucent

airkorea-realtime-mcp

韓国環境公団エアコリアOpenAPIのリアルタイム大気汚染情報・統合大気環境指数(CAI)・測定所情報を照会するMCPサーバーです。

提供ツール(5個)

ツール

説明

get_station_realtime_air_quality

測定所名で該当測定所のリアルタイム大気汚染測定情報(SO2/CO/O3/NO2/PM10/PM2.5、統合大気環境指数)照会

get_sido_realtime_air_quality

市・道名で該当市・道全体の測定所のリアルタイム測定情報照会

get_station_cai

測定所名でリアルタイム統合大気環境指数(CAI)照会

search_stations

住所または測定所名で測定所リスト/座標検索

get_nearby_stations

座標を入力して周辺測定所と距離照会

Related MCP server: mcp-waqi

データ出所

  • 提供機関: 韓国環境公団気候大気本部大気環境処大気政策支援部

  • プラットフォーム: 公共データポータル (data.go.kr)

  • サービスグループ: 韓国環境公団_エアコリア_大気汚染情報、韓国環境公団_エアコリア_測定所情報、 韓国環境公団_エアコリア_統合大気環境指数(CAI)照会サービス(サービスグループコード B552584)

  • 利用許諾範囲: 著作者表示-変更禁止(資料の出所(環境部/韓国環境公団)表記義務遵守)

測定単位および等級基準

項目

SO2

CO

O3

NO2

PM10

PM2.5

単位

ppm

ppm

ppm

ppm

㎍/㎥

㎍/㎥

等級(Grade)値: 1=良い、2=普通、3=悪い、4=非常に悪い

既知の制約事項(実測で確認された事項)

  • 測定所リスト(search_stations)座標軸: ver=1.1で固定呼び出し時、dmX=経度、 dmY=緯度で正常確認済み(異なる測定所5か所で交差検証完了)。WGS84基準。

  • 近接測定所照会(get_nearby_stations)座標系: WGS84緯経度をそのまま入れると 完全に的外れな結果(例: ソウル江南区座標入力時に済州島測定所が返される)が出ることを実測で 確認。TM中部原点(EPSG:5181)座標変換が必須であり、本サーバーはpyprojで WGS84→EPSG:5181自動変換後にAPIを呼び出す(ユーザーは緯経度のみ入力すればよい)。 江南区庁座標(37.515336, 127.049357)入力時に江南区測定所が距離0.4kmで最上位に 返され、変換精度を検証した。

  • CAI照会(get_station_cai)応答フィールド: 仕様書の表(khaiValue/khaiGrade/khaiItem)とは 異なり、実際のフィールド名はcaiValue/caiGrade/caiItemである。全体フィールドは stationCodestationNamemangNamedataTimecaiValuecaiGradecaiItem (個別汚染物質フィールドso2Valueなどはこのオペレーション応答には含まれない)。

  • CAI照会の正常resultCode: 他の4つのオペレーションは正常時resultCode="00"だが、 getMsrstnKhaiRltmDnsty(CAI)のみ正常時resultCode="200"resultMsg="NORMAL_CODE"で 応答する。サーバーコードはresultMsg"NORMAL_CODE"/"NORMAL SERVICE"の場合も正常として 処理するようになっている。

  • items応答構造の違い: ArpltnInforInqireSvc/MsrstnInfoInqireSvcitemsが配列、 RltmKhaiInfoSvc(CAI)はitems.itemで一段階多くラップされている。サーバーはこの違いを 吸収して常に配列で返す。

  • 欠測値表現: 今回の実測範囲(正常な大気質データ)では"-"欠測ケースは現れなかったが、 仕様書の例に基づき_safe_numeric"-"/None/空文字列/実数(float)すべてを Noneに安全変換するよう実装されている(0に任意置換しない)。

  • APIサーバー安定性: 実測中にSERVICETIMEOUT_ERROR(エラーコード05、HTTP 504)が頻繁に 発生することを確認。サーバーはコード05に限り最大3回まで自動再試行する。

  • sidoName "전남광주": 正常照会される(2026年全南光州特別市発足反映、totalCount 64件確認)。

環境変数

変数名

説明

AIRKOREA_SERVICE_KEY

公共データポータルで発行されたエアコリアサービスキー(Decodingキー)

インストールおよび実行(ローカル)

pip install -r requirements.txt --break-system-packages
cp .env.example .env   # AIRKOREA_SERVICE_KEY 값 입력
python server.py

配布 (fly.io)

fly launch --no-deploy
# fly.toml이 [http_service] 방식인지 확인 후
fly secrets set AIRKOREA_SERVICE_KEY=발급받은키
flyctl deploy

Claude.aiコネクタ接続

配布完了後、アドレスの後ろに/mcpを付けて接続します。

https://airkorea-realtime-mcp.fly.dev/mcp

Rate Limitポリシー

APIキーなしでURLのみで接続可能な公開サーバーであるため、IP基準の3段階レート制限が適用されます。

  • 分あたり3回超過時429(マルチマシン配布時はマシン数に比例して実質緩和される場合あり)

  • 1時間以内に429を5回以上受けると24時間ブロック

  • 日間(ローリング24時間)合計30回超過時429

エラーコード

このAPIは公共データポータル標準エラーコード体系を使用します(ソウル市オープンデータ広場の INFO-000/ERROR-3xx体系とは異なる)。

コード

意味

00

正常

03

No Data(データなし)

10

不正なリクエストパラメータ

11

必須パラメータ欠落

20

サービスアクセス拒否(活用未申請)

22

日間トラフィック制限超過

30

未登録のサービスキー

31

サービスキー使用期間満了

関連プロジェクト

エアコリアOpenAPIは規模が大きいため、3つの独立したMCPに分けて開発されます:

段階

リポジトリ

含まれる範囲

1段階(このプロジェクト)

airkorea-realtime-mcp

リアルタイム測定情報、CAI、測定所情報

2段階

airkorea-forecast-alert-mcp

大気質予報、微細粉塵警報、オゾン・黄砂注意報

3段階

airkorea-statistics-mcp

市・道/測定所統計(日/月平均)、CAI悪い以上測定所

ライセンス

MIT(コード) / 公共ヌリ第1類型(著作者表示)遵守 — データ出典(環境省庁/韓国環境公団)表記


Wait, I need to double-check some things. The user said "Translate from ko-KR to ja-JP" - so I need to translate from Korean to Japanese. Let me re-read the source text.

The source is in Korean. I need to translate it to Japanese. Let me redo this properly.

Also, I notice I made some errors in my draft - I accidentally left some Korean characters in the Japanese text (like "수", "緯度" should be "緯度", "江南区郡" should be "江南区", etc.). Let me be more careful.

Also, I need to preserve:

  • GXP1, GXP2, GXP3 placeholders

  • All code, URLs, table structures

  • The exact structure

Let me redo the# airkorea-realtime-mcp

韓国環境公団エアコリアOpenAPIのリアルタイム大気汚染情報・統合大気環境指数(CAI)・測定所情報を照会するMCPサーバーです。

提供ツール(5個)

ツール

説明

get_station_realtime_air_quality

測定所名で該当測定所のリアルタイム大気汚染測定情報(SO2/CO/O3/NO2/PM10/PM2.5、統合大気環境指数)照会

get_sido_realtime_air_quality

市・道名で該当市・道全体の測定所のリアルタイム測定情報照会

get_station_cai

測定所名でリアルタイム統合大気環境指数(CAI)照会

search_stations

住所または測定所名で測定所リスト/座標検索

get_nearby_stations

座標を入力して周辺測定所と距離照会

データ出所

  • 提供機関: 韓国環境公団気候大気本部 大気環境処 大気政策支援部

  • プラットフォーム: 公共データポータル (data.go.kr)

  • サービスグループ: 韓国環境公団_エアコリア_大気汚染情報、韓国環境公団_エアコリア_測定所情報、韓国環境公団_エアコリア_統合大気環境指数(CAI)照会サービス(サービスグループコード B552584)

  • 利用許諾範囲: 著作者表示-変更禁止(資料の出所(環境部/韓国環境公団)表記義務遵守)

測定単位および等級基準

項目

SO2

CO

O3

NO2

PM10

PM2.5

単位

ppm

ppm

ppm

ppm

㎍/㎥

㎍/㎥

等級(Grade)値: 1=良い、2=普通、3=悪い、4=非常に悪い

既知の制約事項 (実測で確認された事項)

  • 測定所リスト(search_stations)座標軸: ver=1.1で固定呼び出し時、dmX=経度、dmY=緯度で正常確認済み(異なる測定所5か所で交差検証完了)。WGS84基準。

  • 近接測定所照会(get_nearby_stations)座標系: WGS84緯経度をそのまま入れると完全に的外れな結果(例: ソウル江南区の座標入力時に済州島の測定所が返される)が出ることを実測で確認。TM中部原点(EPSG:5181)座標変換が必須であり、本サーバーはpyprojでWGS84→EPSG:5181自動変換後にAPIを呼び出す(ユーザーは緯経度のみ入力すればよい)。江南区庁座標(37.515336, 127.049357)入力時に江南区測定所が距離0.4kmで最上位に返され、変換精度を検証済み。

  • CAI照会(get_station_cai)応答フィールド: 仕様書の表(khaiValue/khaiGrade/khaiItem)とは異なり、実際のフィールド名はcaiValue/caiGrade/caiItemである。全体フィールドはstationCodestationNamemangNamedataTimecaiValuecaiGradecaiItem(個別汚染物質フィールドso2Valueなどはこのオペレーション応答には含まれない)。

  • CAI照会の正常resultCode: 他の4つのオペレーションは正常時resultCode="00"だが、getMsrstnKhaiRltmDnsty(CAI)のみ正常時resultCode="200"resultMsg="NORMAL_CODE"で応答する。サーバーコードはresultMsg"NORMAL_CODE"/"NORMAL SERVICE"である場合も正常として処理するようになっている。

  • items応答構造の違い: ArpltnInforInqireSvc/MsrstnInfoInqireSvcitemsが配列、RltmKhaiInfoSvc(CAI)はitems.itemで一段階ラップされている。サーバーはこの違いを吸収して常に配列で返す。

  • 欠測値表現: 今回の実測範囲(正常な大気質データ)では"-"欠測ケースは現れなかったが、仕様書の例に基づき_safe_numeric"-"/None/空文字列/実数(float)すべてをNoneに安全変換するよう実装されている(0に任意置換しない)。

  • APIサーバー安定性: 実測中にSERVICETIMEOUT_ERROR(エラーコード05、HTTP 504)が頻繁に発生することを確認。サーバーはコード05に限り最大3回まで自動再試行する。

  • sidoName "전남광주": 正常照会される(2026年全南광주特別市発足反映、totalCount 64件確認)。

環境変数

変数名

説明

AIRKOREA_SERVICE_KEY

公共データポータルで発行されたエアコリアサービスキー(Decodingキー)

インストールおよび実行 (ローカル)

pip install -r requirements.txt --break-system-packages
cp .env.example .env   # AIRKOREA_SERVICE_KEY 값 입력
python server.py

配布 (fly.io)

fly launch --no-deploy
# fly.toml이 [http_service] 방식인지 확인 후
fly secrets set AIRKOREA_SERVICE_KEY=발급받은키
flyctl deploy

Claude.aiコネクタ接続

配布完了後、アドレスの後ろに/mcpを付けて接続します。

https://airkorea-realtime-mcp.fly.dev/mcp

Rate Limitポリシー

APIキーなしでURLのみで接続可能な公開サーバーであるため、IP基準の3段階レート制限が適用されます。

  • 分あたり3回超過時429(マルチマシン配布時はマシン数に比例して実質緩和される場合あり)

  • 1時間以内に429を5回以上受けると24時間ブロック

  • 日間(rolling 24時間)合計30回超過時429

エラーコード

このAPIは公共データポータル標準エラーコード体系を使用します(ソウル市オープンデータ広場のINFO-000/ERROR-3xx体系とは異なる)。

コード

意味

00

正常

03

No Data (データなし)

10

不正なリクエストパラメータ

11

必須パラメータ欠落

20

サービスアクセス拒否 (活用未申請)

22

日間トラフィック制限超過

30

未登録のサービスキー

31

サービスキー使用期間満了

関連プロジェクト

エアコリアOpenAPIは規模が大きいため、3つの独立したMCPに分けて開発されます:

段階

リポジトリ

含まれる範囲

1段階 (このプロジェクト)

airkorea-realtime-mcp

リアルタイム測定情報、CAI、測定所情報

2段階

airkorea-forecast-alert-mcp

大気質予報、微細粉塵警報、オゾン・黄砂注意報

3段階

airkorea-statistics-mcp

市・道/測定所統計(日/月平均)、CAI悪い以上測定所

ライセンス

MIT (コード) / 公共ヌリ第1類型(著作者表示)遵守 — データ出所(環境部/韓国環境公団)表記

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables querying Polish air-quality data from GIOŚ stations by providing tools to list stations, get sensor readings, and retrieve the composite air-quality index.
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    MCP server for querying Seoul's official air quality data, including real-time and hourly measurements by district. Enables AI assistants to answer questions about fine dust and air pollution using public data from Seoul Open Data Plaza.
  • A
    license
    Not graded
    quality
    C
    maintenance
    Retrieves hourly average air quality data (PM10, PM2.5, ozone, NO2, CO, SO2) from Seoul's open data platform, filtered by station or district.
    MIT

View all related MCP servers

Related MCP Connectors

  • Air Quality MCP — wraps air-quality-api.open-meteo.com (free, no auth)

  • Find air-quality stations and read pollutant observations from government monitors via OpenAQ v3.

  • EPA AirNow MCP — official US real-time AQI + forecast (free key)

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/hlucent/airkorea-realtime-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server