使用说明
我的第一台mcp服务器
一个简单的MCP(模型上下文协议)服务器,使用 开放气象API.
特性
get_weather(latitude, longitude)-获取任何位置的当前温度和风速- 远程HTTP传输(可流式传输HTTP)
- Docker就绪,支持Azure容器应用部署
需求
- Python 3.12+
- 紫外线 (推荐)或pip
安装
uv sync
或者使用pip:
pip install -e .
用法
运行服务器
uv run main.py
服务器将于启动 http://0.0.0.0:8000 默认情况下。
环境变量
| 变量 | 默认值 | 描述 |
|---|---|---|
MCP_HOST |
0.0.0.0 |
将服务器绑定到的主机 |
MCP_PORT |
8000 |
要收听的端口 |
MCP客户端配置
使用MCP端点URL连接到服务器:
https://your-server-url/mcp
码头工人
构建
docker build -t weather-mcp-server .
跑
docker run -p 8000:8000 weather-mcp-server
Azure部署
使用提供的脚本部署到Azure容器应用程序:
./deploy-azure.sh
此脚本将:
- 创建Azure资源组
- 设置容器应用程序环境
- 从源构建和部署容器
- 输出公共MCP端点URL
先决条件
- Azure命令行界面 已安装并登录
配置
编辑 deploy-azure.sh 自定义:
RESOURCE_GROUP-Azure资源组名称LOCATION-Azure区域CONTAINER_ENV-容器应用程序环境名称CONTAINER_APP-容器应用程序名称
示例
连接后,您可以问Claude以下问题:
- “巴黎的天气怎么样?”(纬度:48.8566,经度:2.3522)
- “获取东京当前温度”(纬度:35.6762,经度:139.6503)
项目结构
.
├── main.py # MCP server implementation
├── pyproject.toml # Project dependencies
├── Dockerfile # Container configuration
├── deploy-azure.sh # Azure deployment script
└── CLAUDE.md # Claude Code instructions
API
此服务器使用免费 开放气象API 其不需要API密钥。