关于 🌤️ Weather Microservice with MCP + UV
这是一个以 MCP 为基础的 Python 天气 API 服务项目,使用 `uv` 管理依赖,并通过 Docker 部署,面向本地开发和 Claude Desktop 集成;密钥可从环境变量或 `.env` 加载。
主要功能
- 01支持热重载的 MCP 服务开发
- 02通过 Docker 容器部署
- 03配置 Claude Desktop 集成
- 04从 `.env` 或环境变量读取密钥
适用场景
- 01热重载开发 MCP 服务
- 02在 Docker 容器中运行服务
- 03将服务连接到 Claude Desktop
MCP 相关
该项目将天气 API 作为 MCP 服务提供给 MCP 客户端,包括 Claude Desktop。README 介绍了服务的开发、安装和运行方式,但未说明具体暴露哪些天气工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
🌤️ 使用 MCP + UV 的天气微服务
一个轻量级、由 MCP 驱动的天气 API 服务,使用 uv 管理 Python 依赖,并通过 Docker 进行容器化部署。专为流畅的本地开发、Claude Desktop 集成和可扩展部署而打造。
🚀 功能
- 🧪 使用
uv和mcp实现快速本地开发和实时重载 - 🐳 Docker 化,适用于生产或预发布环境
- 🧠 可与 Claude Desktop 集成
- 🔐 从
.env或环境变量中安全加载密钥
⚙️ 运行服务
🧪 开发模式(使用 MCP Inspector)
以开发模式启动服务并启用热重载:
uv run mcp dev server.py
即时添加依赖:
uv run mcp dev server.py --with pandas --with numpy
将本地代码挂载为可编辑状态:
uv run mcp dev server.py --with-editable .
🧠 Claude Desktop 集成
将服务安装到 Claude Desktop:
uv run mcp install server.py
自定义名称:
uv run mcp install server.py --name "My Analytics Server"
注入环境变量:
uv run mcp install server.py -v API_KEY=abc123 -v DB_URL=postgres://...
uv run mcp install server.py -f .env
🔧 直接执行
如需更多控制或进行高级部署:
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("My App")
if __name__ == "__main__":
mcp.run()
手动运行:
uv run python server.py
# or
uv run mcp run server.py
🐳 Docker 支持
🔨 构建镜像
docker build -t weather-service .
▶️ 运行容器
docker run --env-file .env -p 6274:6274 weather-service
📁 项目结构
.
├── server.py
├── .env
├── pyproject.toml
├── uv.lock
├── Dockerfile
└── README.md
🔒 环境变量
创建 .env 文件:
API_KEY=your_api_key_here
DB_URL=your_database_url_here
📦 依赖管理
使用 uv 管理并同步依赖:
uv pip install mcp
uv pip install pandas numpy
uv sync # sync dependencies based on uv.lock
📃 许可证
MIT 许可证 – 可自由使用,请负责任地修改。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。