mcp bom天气
MCP(模型上下文协议)服务器的工具,该服务器通过BoM FTP XML提要公开澳大利亚气象局(BoM)七个主要城市的天气数据。
快速启动
- 确保Python>=3.13并且
uv已安装。 - 安装:
uv sync --extra dev(或pip install -e .[dev]). - 棉绒/格式:
ruff check --fix && ruff format. - 运行测试:
pytest -q. - 运行FastMCP(stdio):
scripts/run-fastmcp.sh --stdio. - 运行FastMCP HTTP(流式传输):
scripts/run-fastmcp.sh --http --host 0.0.0.0 --port 4242.
CLI标志(FastMCP)
--stdio:使用stdio传输运行(如果未提供标志,则默认)。--http:运行流式HTTP/SSE传输;与...结合--host和--port配置绑定地址。
FTP配置
- 客户端从以下位置获取XML
ftp://ftp.bom.gov.au/anon/gen/fwo/使用每个城市的精确产品IDmcp_bom_weather/config.py:
- 悉尼: IDN60920墨尔本: IDV60920,布里斯班: IDQ60920阿德莱德: IDS60920达尔文: IDD60920珀斯: IDW60920霍巴特: IDT60920. - 文件是 {PRODUCT}.xml 在...之下 /anon/gen/fwo.
开放式WebUI集成(MCP)
- 在打开WebUI中,转到设置→ 工具→ MCP服务器→ Add.
- 姓名:
bom-weather - 命令:
uv run -q python -m mcp_bom_weather.fast_mcp_server --stdio - 工作目录:存储库根目录
- 保存并测试。打开WebUI将通过stdio生成服务器并列出工具。
FastMCP HTTP(流式)传输
- 开始:
scripts/run-fastmcp.sh --http --host 0.0.0.0 --port 4242 - Docker:
docker build -t bom-mcp . && docker run -p 4242:4242 bom-mcp - 注意:Open WebUI当前使用stdio。支持HTTP/SSE的其他MCP主机可以连接到FastMCP端点。
有关完整的设计概要,请参阅PROMPT.md。
