🌤️ WeatherTools——C语言中MCP的“Hello World”# 我注意到用C#编写的MCP(模型上下文协议)工具的例子并不多,所以我决定创建一个。
该项目实现了一个名为WeatherTools的简单MCP服务器工具,它提供了一种方法——GetForecast——使用Open Meteo的两个公共API检索给定城市的天气预报。
🛠️ GetForecast做什么? GetForecast是一个静态方法,执行以下步骤:
📥 输入参数 city(必填):要查询的城市名称。
国家(可选):ISO 3166-1 alpha-2格式的国家代码(例如“US”、“DE”)。
🧭 第一步:地理编码 它向以下对象发送请求: https://geocoding-api.open-meteo.com 检索指定城市的纬度和经度。
🔍 第二步:验证 如果提供了国家代码,它将过滤结果以匹配指定国家内的城市。
🌦️ 第三步:天气预报 使用获得的坐标,它调用: https://api.open-meteo.com 获取当前的天气预报。
返回的数据包括:
🌡️ 2米温度
🌧️ 雨
🌫️ 能见度
☔ 降水概率
🥵 表观温度
📤 输出 以字符串形式返回完整的JSON天气预报,可供任何AI代理或客户端使用。
