
MCP

2025.04.05
5
Python天气查询自然语言处理位置服务
MCP_Server 是一个基于 Model Context Protocol (MCP) 和 Google Gemini AI 的天气数据查询工具,采用客户端-服务器架构。它允许用户通过自然语言查询美国各地的天气警报和详细天气预报。该项目主要用于实践和理解 MCP 的工作原理。
View on GitHub
Overview
基本能力
产品定位
MCP_Server 是一个天气数据查询工具,通过客户端-服务器架构提供美国各地的天气信息查询服务。
核心功能
- 使用州代码查询美国各州的天气警报
- 通过经纬度获取特定位置的详细天气预报
- 由 Google Gemini AI 支持的自然语言界面
- 使用 Model Context Protocol (MCP) 的客户端-服务器架构
适用场景
- 需要查询美国各地天气警报的用户
- 需要获取特定位置详细天气预报的用户
- 希望通过自然语言交互查询天气信息的应用
工具列表
- get_alerts: 获取指定美国州的天气警报(使用两字母州代码)
- get_forecast: 检索特定位置的天气预报(使用经纬度)
常见问题解答
- 错误处理包括:
- 无效的服务器脚本路径
- 与 NWS API 的连接问题
- API 响应中的无效或缺失数据
使用教程
使用依赖
- Python 3.8+
- Node.js(如果运行 JavaScript 服务器)
- Google Gemini API 密钥
安装教程
-
克隆仓库:
git clone https://github.com/Abhinavexists/MCP_Server.git cd weather-tool
-
安装 uv(如果尚未安装):
pip install uv
-
创建并激活虚拟环境:
uv venv
- Windows:
.venv\Scripts\activate
-
macOS/Linux:
source .venv/bin/activate
-
使用 uv 安装依赖(该项目使用 uv.lock 和 pyproject.toml):
uv pip sync
-
在项目根目录创建
.env
文件,包含您的 Gemini API 密钥:GEMINI_API_KEY=your_gemini_api_key_here
调试方式
-
启动客户端并连接到天气服务器:
python client.py server.py
-
连接后,您可以询问天气信息:
Query: What are the current weather alerts in CA? Query: What's the forecast for latitude 37.7749, longitude -122.4194?
-
输入
quit
退出应用程序。