Local Weather MCP Server
by GuardForever
README.md
# 本地 Dify 可用的 MCP Server(HTTP)
这是一个最小可用的 MCP Server,提供 2 个工具:
- `health`:连通性检查
- `get_weather(location)`:按城市名查询当前天气
## 1)安装依赖
如果你有系统 Python:
```bash
pip install -r requirements.txt
```
如果你要使用 Codex 内置 Python 运行时:
```powershell
C:\\Users\\86318\\.cache\\codex-runtimes\\codex-primary-runtime\\dependencies\\python\\python.exe -m pip install -r requirements.txt
```
## 2)启动 MCP Server
```bash
python server.py
```
默认监听:
- Host:`0.0.0.0`
- Port:`8787`
- MCP URL:`http://127.0.0.1:8787/mcp`
可选环境变量覆盖:
- `MCP_HOST`
- `MCP_PORT`
- `MCP_PATH`
示例:
```powershell
$env:MCP_PORT='8800'; python .\\server.py
```
## 3)在本地 Dify 接入
在 Dify 的 MCP Server(HTTP)配置里填写:
- Server URL:`http://127.0.0.1:8787/mcp`
- Name:`local-weather`
- Server ID:`local_weather`
保存后,Dify 应该能自动发现以下工具:
- `health`
- `get_weather`
## 4)调用示例
在 Agent 或 Workflow 中让模型调用:
- `health`
- `get_weather`,参数 `location = "Shanghai"`
## 5)常见问题
- 如果 Dify 运行在 Docker 容器里,`127.0.0.1` 指向容器本身,不是宿主机。
- 通常改用:`http://host.docker.internal:8787/mcp`
- 如果连接失败:
- 检查端口 `8787` 是否被占用
- 检查防火墙规则
- 确认 URL 包含 `/mcp` 路径
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues