内容
# SimBrief MCP 服务器
一个 [Model Context Protocol](https://modelcontextprotocol.io) 服务器,为 Claude Desktop 提供直接访问您的 SimBrief 飞行计划的功能 — 无需 Cloudflare,无需 OAuth,无需基础设施。
[](https://glama.ai/mcp/servers/Emanuele94/SimBrief-MCPServer)
[](https://glama.ai/mcp/servers/Emanuele94/SimBrief-MCPServer)
## 功能
14 种工具涵盖 SimBrief OFP 的每个部分:
| 工具 | 描述 |
|---|---|
| `get_flight_summary` | 航班号、飞机、航线、距离、巡航、ETE、燃料 |
| `get_weather` | 起飞、到达和备降机场的 METAR、TAF 和 ATIS |
| `get_fuel_plan` | 完整的燃料分解:滑行、航程、应急、备降、储备、额外 |
| `get_weights` | OEW、有效载荷、ZFW、TOW、停机坪重量、着陆重量 |
| `get_times` | 预定 OUT/OFF/ON/IN、ETE、区段时间、滑行、耐久性 |
| `get_atc_flightplan` | 准备备案的 ATC 飞行计划字符串 |
| `get_aircraft_info` | 类型、注册号、发动机、设备代码 |
| `get_navlog` | 带有海拔、距离和每段燃料的完整航点列表 |
| `get_notams` | 所有 NOTAM(起飞、到达、航程) |
| `get_alternate_info` | 备降机场详情和航点日志 |
| `get_performance` | 起飞和着陆性能(TLR),如有 |
| `get_crew` | 机长、副驾驶、调度员、事务员、空乘人员 |
| `get_impacts` | 燃料和时间对海拔和成本指数变化的敏感性 |
| `get_full_flight_plan` | 用于自定义分析的完整原始 JSON |
所有工具都接受一个可选的 `plan_id` 参数 — 留空以始终获取最新的调度。
## 要求
- Python 3.11+
- [uv](https://docs.astral.sh/uv/getting-started/installation/)
- 一个 [SimBrief](https://www.simbrief.com) 账户(免费)
## 安装
```bash
git clone https://github.com/Emanuele94/SimBrief-MCPServer.git
cd SimBrief-MCPServer
uv sync
```
## 配置
您的 SimBrief **飞行员 ID** 通过 MCP 配置中的环境变量传递 — 无需更改代码。
在 SimBrief → 账户设置 → **飞行员 ID** 下找到您的飞行员 ID。
## Claude Desktop 集成
将以下内容添加到您的 `claude_desktop_config.json`:
**macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
**Windows:** `%APPDATA%\Claude\claude_desktop_config.json`
```json
{
"mcpServers": {
"simbrief": {
"command": "uv",
"args": [
"run",
"--project", "/absolute/path/to/SimBrief-MCPServer",
"python",
"/absolute/path/to/SimBrief-MCPServer/server.py"
],
"env": {
"SIMBRIEF_PILOT_ID": "your_pilot_id_here"
}
}
}
}
```
然后重启 Claude Desktop。SimBrief 工具将自动出现。
> 如果未设置 `SIMBRIEF_PILOT_ID`,服务器将拒绝启动并显示清晰的错误消息。
## 使用示例
连接后,您可以问 Claude:
- *"我的最新飞行计划是什么?"*
- *"显示我下次航班的天气。"*
- *"我计划多少燃料,分解情况如何?"*
- *"给我完整的 ATC 飞行计划字符串。"*
- *"如果我飞行 2000 英尺较低,燃料消耗会发生什么变化?"*
- *"显示我的航点日志的前 20 个航点。"*
## 开发
安装开发依赖项:
```bash
uv sync --all-extras
```
运行测试:
```bash
uv run pytest -v
```
检查和格式化:
```bash
uv run ruff check .
uv run ruff format .
```
所有测试都在离线状态下运行 — SimBrief API 被模拟,因此不需要互联网连接或真实的飞行员 ID。
## 贡献
1. 复刻仓库
2. 创建一个功能分支(`git checkout -b feature/my-feature`)
3. 进行更改并添加测试
4. 确保 CI 流水线在本地通过(`uv run pytest && uv run ruff check .`)
5. 对 `main` 分支打开拉取请求
在合并之前,拉取请求必须通过所有检查(测试 + 检查)。
## 许可证
MIT