weather-forecast-mcp
Enables querying South Korean meteorological observation data and short-term forecasts by region name or grid coordinates via the MCP protocol.
README
weather-forecast-mcp
기상청 단기예보 조회서비스(VilageFcstInfoService_2.0)를 MCP(Model Context Protocol) 서버로 제공합니다. 초단기실황, 초단기예보, 단기예보, 예보버전 4개 오퍼레이션을 지역명 또는 격자 좌표(nx, ny)로 조회할 수 있습니다.
Dataset Registry
| 화면 표시명 | 제공부서 | 이 MCP 포함 여부 | 서비스명(SERVICE) |
|---|---|---|---|
| 기상청 단기예보 조회서비스(2.0) | 기상청 | 포함 | VilageFcstInfoService_2.0 |
이 MCP는 단일 API(오퍼레이션 4종)로 구성되며, 별도 데이터셋 통합은 없습니다.
제공 툴
| 툴 이름 | 오퍼레이션 | 설명 |
|---|---|---|
get_ultra_srt_ncst |
getUltraSrtNcst (초단기실황조회) | 현재 시각 기준 실황(관측값) |
get_ultra_srt_fcst |
getUltraSrtFcst (초단기예보조회) | 6시간 이내 단기 예보 |
get_vilage_fcst |
getVilageFcst (단기예보조회) | 최대 5일 예보 |
get_fcst_version |
getFcstVersion (예보버전조회) | 예보 파일 최신 버전 확인 |
설치 및 배포
pip install -r requirements.txt
cp .env.example .env # WEATHER_FORECAST_SERVICE_KEY 값 입력
python server.py
fly.io 배포:
fly launch --no-deploy
fly secrets set WEATHER_FORECAST_SERVICE_KEY=발급받은키
flyctl deploy
환경변수
| 변수명 | 설명 |
|---|---|
WEATHER_FORECAST_SERVICE_KEY |
공공데이터포털에서 발급받은 인증키(Decoding 키 사용) |
지역 지정 방식
area_name(예: "서울 중구", "종로구 청운효자동") 또는 nx/ny 격자 좌표 중 하나를 입력합니다.
area_name 사용 시 내장된 격자 매핑표(3,838개 행정구역)에서 3단계(읍면동) → 2단계(시군구) →
1단계(시도) 순으로 자동 매칭합니다.
Rate Limit
공개 서버 특성상 아래 3단계 제한이 적용됩니다:
- 분당 3회 초과 → 429
- 1시간 내 5회 위반 → 24시간 차단
- 일일 30회 초과 → 429
fly.io 멀티머신(2대) 환경에서 rate limit 카운터가 머신별로 분리될 수 있는 점은 알려진 트레이드오프로 허용합니다(가용성 우선).
실측 확인 사항
get_vilage_fcst의numOfRows기본값은 1000으로 설정(예제 응답 totalCount 742~944건 실측 확인, 기본값 10이면 잘림)dataType=JSON에러 응답은 실제로 JSON 형식으로 옴(잘못된 nx/ny 요청 시resultCode: "10"JSON 정상 수신 확인). 단, 만약을 대비해 XML<resultCode>/<resultMsg>정규식 폴백도 구현됨get_vilage_fcst에 유효하지 않은 base_time(예: 03시)을 지정하면resultCode: "03"(NO_DATA) 에러가 반환됨(빈 응답이 아닌 명시적 에러)- 단기예보 +4일 이후(연장기간) PCP/SNO/WSD는 정성정보 코드(1=적음/2=보통/3=많음)로 옴을
실측 확인. 서버는
baseDate대비fcstDate가 +4일 이상이면 이 코드표를 적용하고 응답에is_extended_period: true를 표시함 get_fcst_version은basedatetime을base_time과 동일한YYYYMMDDHHmm형식으로 주면 정상 동작 확인(ftype=SHRT 기준)
라이선스
MIT
참고
- 원본 API 명세: 기상청 「단기예보 조회서비스(2.0) Open API 활용가이드」
- 격자-위경도 매핑표: 기상청 제공 엑셀 자료(2026년 7월 기준, 3,838개 행정구역)
- 남한 지역만 제공(북한·국외 미제공)
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。