article
README
🚀 天气 MCP 服务器
本项目是一个基本的 Model Context Protocol (MCP) 服务器,可从马来西亚官方开放数据门户 Open API 获取天气信息。借助该服务器,LLM 能够获取天气预报、警告、与洪水相关的水位以及地震报告等内容,为相关应用提供有力的数据支持。
API 文档:data.gov.my
🚀 快速开始
Claude Desktop 配置
将以下内容添加到 claude_desktop_config.json 文件中。有关更多详细信息,请参阅 针对 Claude Desktop 用户。
使用 uv
{
"mcpServers": {
"weather": {
"command": "uv",
"args": [
"--directory",
"weather-my-mcp",
"run",
"weather.py"
]
}
}
}
使用 Docker
- 创建 docker 镜像
docker build . --tag weather-my-mcp
- 编辑
claude_desktop_config.json文件如下:
{
"mcpServers": {
"weather": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"weather-my-mcp"
]
}
}
}
✨ 主要特性
本服务器能够提供从马来西亚官方开放数据门户 Open API 获取的天气信息,支持 LLM 获取天气预报、警告、与洪水相关的水位和地震报告等。
📚 详细文档
组件 - 工具
1. get_water_level_condition
- 功能:获取指定县或州关联的洪水警告相关的水位条件。若同时提供了县和州,则优先使用县;若未指定县或州,请在相应字段中使用空字符串。
- 参数:
district:要检索洪水警告条件的县的名称。state:要检索洪水警告条件的州的名称。
2. get_warning
- 功能:在指定日期范围内获取天气警告信息。
- 参数:
datetime_start:最早的时间戳,格式为YYYY-MM-DD HH:MM:SS(包含在内),从该时间开始检索天气警告。如果未提供,默认为当前日期。datetime_end:最晚的时间戳,格式为YYYY-MM-DD HH:MM:SS(包含在内),到此时间停止检索天气警告。如果未提供,默认为当前日期。
3. get_weather_forecast
- 功能:根据指定的日期范围获取特定位置的天气预报。
- 参数:
location_name:获取预报的位置的名称或标识符。date_start:最早的日期(包含在内)开始检索天气预报。如果未提供,默认为当前日期。date_end:最晚的日期(包含在内)停止检索天气预报。如果未提供,默认为当前日期。
4. get_earthquake_news
- 功能:根据指定位置和日期范围获取地震新闻。
- 参数:
location:地震发生地的名称或标识符。date_start:最早的日期(包含在内)开始搜索地震新闻。如果未提供,默认为当前日期。date_end:最晚的日期(包含在内)停止搜索地震新闻。如果未提供,默认为当前日期。
📄 许可证
此 MCP 服务器根据 MIT License 分发。这意味着您可以自由使用、修改和分发软件,但需遵守 MIT License 的条款和条件。有关更多详细信息,请参阅项目存储库中的 LICENSE 文件。
微信扫一扫