使用说明
项目简介
本项目是一个演示性质的 MCP 服务器,它实现了 Model Context Protocol,并提供了一个用于查询航空气象信息的工具。通过该服务器,LLM 客户端可以调用 'get_aviation_weather' 工具,输入机场 ICAO 代码,获取该机场的 METAR 气象报告。
主要功能点
- 提供航空气象数据查询工具: 服务器注册了一个名为 'get_aviation_weather' 的工具,该工具可以根据用户提供的机场代码,从 aviationweather.gov 网站抓取并返回该机场的 METAR 报告。
- 基于 MCP 协议: 使用 'fastmcp' 库构建,符合 MCP 服务器规范,能够与 MCP 客户端进行通信。
- 易于本地运行: 提供了简单的启动命令,方便开发者本地部署和测试。
安装步骤
- 安装依赖: 首先确保你的环境中安装了 'uv' 包管理器 (根据仓库 'uv sync' 命令推断)。在项目根目录下运行以下命令安装项目依赖:
uv sync - 激活虚拟环境: 安装完成后,激活项目创建的虚拟环境:
source .venv/bin/activate
服务器配置
为了让 MCP 客户端连接到此服务器,你需要提供如下配置信息。客户端需要配置 'command' 和 'args' 来启动服务器进程,并指定 'server name' 以标识该服务器。
{ "server_name": "aviation_weather", // 服务器名称,与 server.py 中 FastMCP 初始化时定义的名称一致 "command": "mcp", // 运行 mcp 命令 "args": [ // mcp 命令的参数 "dev", // 使用 dev 模式启动,方便开发 "src/mcp_aviation_weather/server.py" // 服务器入口文件路径 ] }
注意: 'server name' 必须与 'src/mcp_aviation_weather/server.py' 文件中 'FastMCP("aviation_weather")' 初始化的名称 '"aviation_weather"' 完全一致。
基本使用方法
-
启动服务器: 在激活虚拟环境后,于项目根目录下运行以下命令启动 MCP 服务器:
mcp dev src/mcp_aviation_weather/server.py服务器成功启动后,会监听 MCP 客户端的请求。
-
客户端调用工具: 配置好 MCP 客户端后,客户端可以向 'aviation_weather' 服务器发送请求,调用 'get_aviation_weather' 工具,并提供机场 ICAO 代码作为参数。服务器将返回该机场的 METAR 气象报告。
例如,客户端可以发送类似以下的 JSON-RPC 请求来调用工具 (这只是示例,实际客户端实现可能不同):
{ "jsonrpc": "2.0", "method": "call_tool", "params": { "tool_name": "get_aviation_weather", "tool_args": { "airport": "KJFK" // 示例机场代码:纽约肯尼迪国际机场 } }, "id": 1 }服务器会返回包含 KJFK 机场 METAR 信息的 JSON-RPC 响应。
信息
分类
网页与API