航班价格比较服务

Navifare MCP Server 是一个用于航班价格比较的MCP工具,帮助用户通过AI助手找到更便宜的航班价格。

  • by navifare
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 navifare/navifare-mcp

使用说明

Navifare MCP服务器

版本: 0.1.5

Navifare为用户已经找到的特定航班找到了更好的价格。用户应通过对话方式提供航班详细信息,并将其结构化为所需的格式。

概述

此MCP服务器将Navifare REST API封装为用于航班价格比较的MCP工具。它使像克劳德这样的人工智能助手能够帮助用户为他们已经发现的航班找到更好的价格。

MCP端点

  • 生产: https://mcp.navifare.com/mcp
  • 文档: https://www.navifare.com/mcp (从MCP端点自动更新)
  • 了解有关MCP的更多信息: 模型上下文协议

工具

format_flight_pricecheck_request

标题:格式化航班请求

从自然语言文本或转录的图像内容中解析和格式化航班详细信息。提取航班信息(航空公司、航班号、日期、机场、价格)并将其结构化以进行价格比较。返回已准备好进行flight_pricecheck的格式化航班数据,如果不完整,则请求缺少的信息。

注释:

  • readOnlyHint: true -仅使用工具格式化/解析数据,无需外部调用
  • destructiveHint: false -工具不修改或删除数据

输入架构:

  • user_request (必填):自然语言文本的航班详细信息。包括所有可用信息:航班号、航空公司、出发/到达机场和时间、日期、价格、乘客人数和旅行舱位。

示例请求:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "format_flight_pricecheck_request",
    "arguments": {
      "user_request": "I found an Aeroitalia flight XZ2020 from FCO to MXP leaving tomorrow at 19.31 and returning with XZ2021 MXP to FCO next Friday at 10.11. 1 adult, economy, the best fare was 221 EUR"
    }
  }
}

flight_pricecheck

标题:航班价格查询

搜索多个预订来源,为用户已经找到的特定航班找到更好的价格。比较不同预订平台的价格,为完全相同的航班细节找到更便宜的替代方案。

注释:

  • readOnlyHint: false -工具执行搜索并可能触发外部API调用
  • destructiveHint: false -工具不修改或删除数据

输入架构:

  • trip (必填):航班行程详情,包括航段、乘客和旅行舱位
    • legs (必填):航班航段阵列(一条用于出境,一条用于往返)
    • travelClass (必填):经济舱、高级舱、商务舱或头等舱
    • adults (必填):成年乘客人数(最少1人)
    • children (必填):儿童乘客人数(最少:0)
    • infantsInSeat (必填):需要座位的婴儿人数(最少:0)
    • infantsOnLap (必填):大腿上的婴儿数量(最少:0)
  • source (必填):查询的源标识符(例如,“Claude”、“MCP”、“ChatGPT”)
  • price (必填):用户找到的参考价格(例如“84.00”、“200.50”)
  • currency (必填):三个字母的ISO货币代码(例如,“EUR”、“USD”、“GBP”)
  • location (必填):用户所在地的两个字母的ISO国家代码(例如,“ES”、“IT”、“US”)。如果不确定,默认为“ZZ”

示例请求:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "flight_pricecheck",
    "arguments": {
      "trip": {
        "legs": [
          {
            "segments": [
              {
                "airline": "XZ",
                "flightNumber": "2020",
                "departureAirport": "MXP",
                "arrivalAirport": "FCO",
                "departureDate": "2025-12-16",
                "departureTime": "07:10",
                "arrivalTime": "08:25",
                "plusDays": 0
              }
            ]
          }
        ],
        "travelClass": "ECONOMY",
        "adults": 1,
        "children": 0,
        "infantsInSeat": 0,
        "infantsOnLap": 0
      },
      "source": "MCP",
      "price": "84",
      "currency": "EUR",
      "location": "IT"
    }
  }
}

当前限制

  • 仅限往返航班:单程旅行尚不支持。单腿请求将立即返回错误。
  • 相同的出发地/目的地:尚未支持开放式旅行(返回其他机场)。回程航班必须从出境目的地出发,到达出境始发地。

收入分成

符合条件的合作伙伴可获得收入分成!

通过您的集成预订航班,赚取佣金。合格合作伙伴可获得收入分成。

合规

此服务器符合Anthropic的MCP目录策略。看 文档/合规.md 了解详情。

隐私政策和服务条款: https://navifare.com/terms
联系: contact@navifare.com
隐私咨询: privacy@navifare.com

环境变量

您通常需要为此MCP服务器记录的唯一环境变量是:

  • GEMINI_API_KEY (必需):用于自然语言解析的Google Gemini API密钥(当您的集成依赖Gemini进行文本/图像理解时使用)。

例子

看 docs/USAGE_EXAMPLES.md 查看具有详细工作流程的完整使用示例。

文档

大多数文件都在 docs/ 目录(以及一些类似的文件 README.md 和 REPOSITORY_STRUCTURE.md 位于repo根目录):

入门指南

参考

附加指南

测试

测试文件位于 test/ 目录。看 test/README.md 有关可用测试的详细信息。

运行测试

# Test with MCP Inspector
npx @modelcontextprotocol/inspector node dist/index.js

# Run specific test
node test/test-mcp.js

脚本

辅助脚本位于 scripts/ 目录:

  • scripts/start-local.sh -启动本地开发服务器
  • scripts/deploy-to-render.sh -准备渲染部署
  • scripts/start-servers.sh -启动多台服务器
  • scripts/stop-servers.sh -停止运行服务器

存储库结构

navifare-mcp/
├── src/              # TypeScript source code
├── dist/             # Compiled JavaScript (generated)
├── docs/             # Documentation
├── test/             # Test files
├── scripts/          # Helper scripts
└── [config files]    # package.json, Dockerfile, etc.

看 REPOSITORY_STRUCTURE.md 详细结构。

支持

  • 一般咨询: contact@navifare.com
  • 隐私咨询: privacy@navifare.com
  • GitHub问题: https://github.com/navifare/navifare-mcp

参考