天气 MCP 服务器 Python 版本,为你提供便捷的天气服务相关功能
# 创建一个新的项目目录
uv init
# 创建虚拟环境并激活它
uv venv
source .venv/bin/activate
# 安装依赖项
uv add "mcp[cli]" httpx
你可以使用以下命令安装所有开发依赖项:
# 使用 uv
uv pip install -e ".[dev]"
# 或者使用 pip
pip install -e ".[dev]"
此项目包含一个全面的测试套件,用于测试天气服务 API。这些测试使用 pytest 和 pytest-asyncio 来测试与国家气象局 API 相互作用的异步函数。
# 运行所有测试
pytest
# 以详细输出模式运行测试
pytest -v
# 以代码覆盖率模式运行测试
pytest --cov=weather
测试套件涵盖以下内容:
format_alert 函数用于格式化警报数据make_nws_request 中的错误处理get_alerts:测试成功检索、空结果和 API 失败情况get_forecast:测试成功获取预报及其对两个 API 端点的错误处理httpx.AsyncMock 进行模拟⚠️ 重要提示
在为天气服务添加新功能时,请确保所有测试通过后再提交更改。