🌦️ 印度气象助理(Claude+MCP)
这是一个初学者友好的MCP(模型上下文协议)项目,它将Python天气服务器连接到 克劳德,允许您为印度城市提出自然语言天气问题。它使用免费 wttr.in API获取实时条件和2天预测。
______________________________________________________________________
🚀 项目亮点
- 🔗 通过MCP连接到克劳德
- 🧠 可通过自然语言调用的工具
- 🌐 实时天气数据通过
wttr.inAPI - 🛠️ 使用FastMCP服务器构建,并使用MCP Inspector GUI进行检查
______________________________________________________________________
📸 演示截图
✅ 克劳德集成测试
🛠 MCP检查器工具执行
📋 预测输出验证
______________________________________________________________________
🧰 技术栈
| 组件 | 描述 |
|---|---|
| 🧠 Claude | 将自然提示路由到工具的AI助手 |
| ⚙️ MCP | 将Claude连接到外部工具的协议 |
| 🐍 Python | 工具实现 FastMCP |
| 🌐 wttr.in | 印度天气预报免费API |
| 🧪 MCP检查员 | 目视测试和检查界面 |
______________________________________________________________________
📂 文件夹结构
weather-assistant-mcp/
│
├── weather.py # MCP server with tools
├── .venv/ # Python virtual environment (optional)
├── README.md # This file
└── ...______________________________________________________________________
🔧 运作原理
第一步:向Claude发送用户提示
“明天孟买会下雨吗?”
步骤2:Claude通过MCP发送请求
- Claude确定提示与您的工具匹配
get_forecast(city)
步骤3:你的Python工具运行
weather.py从以下位置获取实时数据https://wttr.in/mumbai?format=j1
第四步:克劳德以结果回应
📍 孟买天气:🌧️ 预计明天有雨,最高气温为30°C。
______________________________________________________________________
🛠️ 工具功能
get_forecast(city: str)
返回给定印度城市的当前天气和2天预报。
get_alerts(city: str)
如果出现极端高温、风、湿度或降雨,则返回警报。
______________________________________________________________________
✅ 设置和运行
1.安装依赖项
uv venv
uv pip install mcp[cli] httpx2.运行MCP检查器
npx @modelcontextprotocol/inspector \
uv \
--directory . \
run \
weather.py3.在检查器UI中
- 运输类型:
STDIO - 命令:
uv - Args:
run --directory . weather.py - 点击▶️
Restart→ 有联系的!
______________________________________________________________________
👋 关于
这个项目是我的 学习Claude+MCP的第一步 整合。\ 使用Python、Claude API和FastMCP构建。
作者:德奥·普拉卡什\ 日期:2025年7月\ 灵感来自:模型上下文协议(https://modelcontextprotocol.io)
______________________________________________________________________
📜 许可证
MIT许可证
