mcpField
W
Weather Forecast Tool

Weather Forecast Tool

本地服务
github.com/hitechdk媒体与设计182 周前更新

关于 Weather Forecast Tool

Weather Forecast Tool 是一个 Python MCP 服务,用于从 MET Norway API 获取并汇总天气预报。它接收经纬度,以当地时间返回每日天气,包括常见天气符号和温度范围。

主要功能

  1. 01按经纬度获取预报
  2. 02汇总每日天气状况
  3. 03展示各时段常见天气符号
  4. 04报告每日最低和最高气温
  5. 05以当地时间返回预报

适用场景

  1. 01查询某地点的每日预报
  2. 02查看各时段的天气情况
  3. 03比较每日最低和最高气温
  4. 04根据地理坐标获取预报

MCP 相关

项目使用 FastMCP 将 `get_weather` 函数注册为供 MCP 客户端调用的工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

天气预报工具

描述

这段 Python 代码使用 MET Norway API,为指定地点获取并汇总天气预报。它使用 FastMCP 框架注册工具,并使用 httpx 发起异步 HTTP 请求。

功能

  • 天气预报: get_weather 函数根据指定的纬度和经度获取天气预报数据。

  • 每日摘要: summarize_daily_timeseries_most_occurrences 函数处理原始预报数据,生成简洁的每日摘要,包括:

    • 夜间、早晨、下午和晚间出现频率最高的天气符号。
    • 当天的最低和最高气温。
    • 预报将以当地时间返回。
  • HTTP 请求: make_net_request 函数负责向 MET Norway API 发起异步 HTTP 请求。

  • 天气符号映射: map_weather_symbol 函数将 API 中的天气符号代码转换为易于理解的描述。

依赖项

  • Python 3.13+
  • collections
  • datetime
  • typing
  • asyncio
  • json
  • httpx
  • mcp.server.fastmcp

设置

  1. 安装依赖项:

    根据需要安装 MCP 和其他依赖项(参见 MCP 文档)

  2. **获取坐标:**你需要知道要查询天气预报地点的纬度和经度。

用法

  1. **导入:**导入所需模块并初始化 FastMCP 服务。

    from collections import Counter
    from datetime import datetime, timezone, timedelta
    from mcp.server.fastmcp import FastMCP
    from typing import Any
    import asyncio
    import json
    import httpx
    
    mcp = FastMCP("weather")
    
  2. 使用 get_weather 工具:

    async def main():
        weather_data = await get_weather(55.6761, 12.5683) # Example: Copenhagen, Denmark
        print(weather_data)
    
    if __name__ == "__main__":
        asyncio.run(main())
    

    将 55.6761 和 12.5683 替换为所需地点的纬度和经度。

工具定义

* get_weather(latitude: float, longitude: float) -> str * 获取并格式化指定地点的天气预报。 * 参数: * latitude(float):地点的纬度。 * longitude(float):地点的经度。 * 返回值: * str:包含每日天气预报的格式化字符串。

MCP

代码使用 FastMCP 框架。有关如何设置和运行服务的详细信息,请参阅 FastMCP 文档。

许可证

MIT 许可证

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。