气象MCP服务器
一个基本的模型上下文协议(MCP)服务器,提供从马来西亚官方开放数据门户网站的开放API检索的天气信息。此服务器使LLM能够获取天气预报、警报、与洪水相关的水位和地震报告。
API文件: data.gov.my
组件
工具
- 获取水位条件
- 检索与指定地区或州的洪水警报相关的水位状况。 如果同时提供地区和州,则以地区为准。 如果未指定地区或州,请为该字段使用空字符串。
- Args:
- district:指定州内检索洪水预警条件的地区名称。 - state:马来西亚检索洪水预警条件的州的名称。
- 获取_学习
- 检索在指定日期范围内发布的一般天气警报。
- Args:
- datetime_start:最早的时间戳,格式为 YYYY-MM-DD HH:MM:SS (含)从中检索天气警报。如果省略,则默认为当前日期。 - datetime_end:最新时间戳,格式为 YYYY-MM-DD HH:MM:SS (含)停止检索天气警报。如果省略,则默认为当前日期。
- get_weather_forecast
- 检索给定日期范围内特定位置的天气预报。
- Args:
- location_name:检索预测的位置的名称或标识符。 - date_start:开始检索天气预报的最早日期(包括首尾两天)。如果省略,则默认为当前日期。 - date_end:停止检索天气预报的最新日期(包括首尾两天)。如果省略,则默认为当前日期。
- 地震新闻
- 获取指定日期范围内给定地点的地震新闻。
- Args:
- 地点:地震发生地点的名称或标识符。 - date_start:开始搜索地震新闻的最早日期(包括首尾两天)。如果省略,则默认为当前日期。 - date_end:停止搜索地震新闻的最新日期(含)。如果省略,则默认为当前日期。
Claude桌面配置
将以下内容添加到 claude_desktop_config.json 文件。有关更多信息,请参阅 适用于Claude桌面用户.
使用 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"
]
}
}
}许可证
此MCP服务器根据MIT许可证获得许可。这意味着您可以根据MIT许可证的条款和条件自由使用、修改和分发软件。有关更多详细信息,请参阅项目存储库中的LICENSE文件。
