Korean Weather

Korean Weather

🚀 韩国天气 MCP 服务器

这是一个使用多平台通信协议(MCP)构建的韩国天气服务器。它允许通过KMA(韩国气象厅)的公开数据接口查询实时天气和超短期天气预报,为用户提供便捷的天气查询服务。

🚀 快速开始

  1. 配置环境变量,指定KMA API的访问密钥。
  2. 在主函数中启动服务器:
from server import start_server

if __name__ == "__main__":
start_server()

✨ 主要特性

  • 使用网格坐标(nx, ny)检索天气数据
  • 提供详细的天气状况,包括温度、降水类型、降水量、天空状况、湿度、风向和风速
  • 支持按城市、区和街道级别查询天气信息
  • 自动生成易于理解的天气预报格式

📦 安装指南

环境要求

  • Python 3.7及以上版本
  • 必要的Python依赖项已安装(如requests)

克隆仓库

git clone https://github.com/yourusername/py-mcp-ko-weather.git
cd py-mcp-ko-weather

安装依赖

pip install -r requirements.txt

💻 使用示例

基础用法

# 获取网格坐标
location = get_grid_location("서울특별시", "서초구", "양재1동")
print(location)
# 输出:{'nx': 61, 'ny': 125}

# 获取天气预报
forecast = get_forecast("서울특별시", "서초구", "양재1동", 61, 125)
print(forecast)

高级用法

# 可以根据实际需求,在获取网格坐标和天气预报的基础上,进行更多的处理和分析。
# 例如,将获取到的天气预报信息存储到文件中,或者进行可视化展示。

📚 详细文档

核心API工具

获取网格坐标

def get_grid_location(city: str, gu: str, dong: str) -> dict:
"""
通过指定的行政区域信息获取对应的气象局网格坐标。

Args:
city (str): 市/省名称
gu (str): 区/县名称
dong (str): 街道/镇名称

Returns:
dict: 包含nx和ny坐标的字典,如果未找到则返回空字典
"""

获取天气预报

def get_forecast(city: str, gu: str, dong: str, nx: int, ny: int) -> str:
"""
调用KMA的超短期天气预报API。

Args:
city (str): 市/省名称
gu (str): 区/县名称
dong (str): 街道/镇名称
nx (int): 横坐标
ny (int): 纵坐标

Returns:
str: 天气预报的结构化文本信息
"""

响应格式

天气预报以结构化的文本形式返回,便于LLM处理:

天气预报为: 서울특별시 서초구 양재1동 (坐标: nx=61, ny=125)
日期: 2025-05-01
时间: 15:00

当前状况:
温度: 22.3°C
天空状况: 大部晴朗
降水类型: 无
降水概率: 0%
湿度: 45%
风向: 西北
风速: 2.3 m/s

逐小时预报:
16:00 - 温度: 21.8°C, 天空: 晴朗, 降水: 无
17:00 - 温度: 20.5°C, 天空: 晴朗, 降水: 无
18:00 - 温度: 19.2°C, 天空: 晴朗, 降水: 无
...

📄 许可证

本项目采用 MIT 许可证,具体内容请参阅 LICENSE 文件。

贡献者

  • [Your Name] (your.email@example.com)
  • 0 关注
  • 0 收藏,19 浏览
  • system 提出于 2025-09-21 01:12

相似服务问题

相关AI产品