MCP天气演示
用于VS代码的MCP(模型上下文协议)服务器,通过开放气象API提供气象数据。
描述
该项目是一个MCP服务器。Net 8.0与VS代码集成,提供实时天气信息。它使用语义内核来协调各种函数,并通过stdin/stdout上的JSON-RPC协议与VS代码通信。
功能
服务器公开了9种天气工具:
get_weather-当前天气(温度、风、条件)get_hourly_forecast-7-16天每小时预报get_daily_forecast-每日预测(最小/最大、紫外线、日出/日落)get_air_quality-空气质量(PM2.5、PM10、NO2、O3等)get_marine_forecast-海洋条件(波浪、洋流、水温)get_historical_weather-两个日期之间的历史数据get_geocoding-按城市名称搜索GPS坐标get_solar_radiation-太阳辐射和阳光get_agriculture_data-农业数据(土壤湿度、蒸散量)
技术
- .NET 8.0 -基础框架
- 语义内核1.0.1 -插件编排IA
- 开放气象API -天气数据源(免费,无钥匙)
- MCP协议 -与VS代码通信
项目结构
├── Program.cs # Point d'entrée et boucle JSON-RPC
├── McpDispatcher.cs # Gestion du protocole MCP
├── WeatherPlugin.cs # 9 fonctions météo
└── SimpleLogger.cs # Logger personnalisé (stderr)使用
- 编制项目:
dotnet build- 在VS代码中配置(MCP设置)
- 服务器自动启动并向副驾驶助手公开其工具
示例
Utilisateur : "Quel temps fait-il à New York ?"
Copilot : [Appelle get_weather avec lat=40.71, lon=-74.01]
Résultat : Température -8.8°C, vent 18.5 km/h, ciel couvert许可证
演示项目-免费使用
