关于 Amadeus MCP Server
Amadeus MCP Server 将 AI 助手接入 Amadeus API,用于航班搜索和旅行规划。它整合机场查询、票价分析、航班详情及低价日期搜索,并提供常见行程任务的提示词。
主要功能
- 01搜索航班报价
- 02按关键词或地点查找机场
- 03分析航线价格指标
- 04获取航班报价详情
- 05查找最低价出行日期
适用场景
- 01比较某条航线的航班选项
- 02按城市或 IATA 代码查找机场
- 03判断航线价格偏高还是偏低
- 04寻找经济的旅行日期
MCP 相关
它将 Amadeus 的航班和机场功能作为 MCP 工具提供,并提供航班报价和机场的架构资源,以及旅行规划提示词。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Amadeus MCP Server
这是一个 Model Context Protocol(MCP)服务,可连接 Amadeus API,为 AI 助手提供航班搜索、预订和分析功能。
功能
- 航班搜索:使用各种参数查找机场之间的航班
- 机场信息:按关键词、城市或国家搜索机场
- 价格分析:获取航线价格指标,判断当前价格偏高还是偏低
- 最便宜日期:查找最经济实惠的出行日期
- 航班详情:获取特定航班报价的详细信息
提示词
此服务为常见的旅行规划场景提供了多个预配置提示词:
- 分析航班价格(
analyze-flight-prices):分析某条航线的航班价格,并提供价格趋势洞察 - 查找最佳优惠(
find-best-deals):查找特定航线和日期的最佳航班优惠 - 规划多城市行程(
plan-multi-city-trip):规划完整的多城市行程,并优化路线 - 查找最便宜的出行日期(
find-cheapest-travel-dates):找出最经济实惠的出行日期
设置
前置要求
- Node.js 16.x 或更高版本
- Amadeus API 凭据(Client ID 和 Secret)
安装
- 克隆代码仓库:
git clone https://github.com/yourusername/amadeus-mcp-server.git
cd amadeus-mcp-server
- 安装依赖项:
npm install
- 在根目录中创建
.env文件,并填入你的 Amadeus API 凭据:
AMADEUS_CLIENT_ID=your_client_id
AMADEUS_CLIENT_SECRET=your_client_secret
运行服务
构建并启动服务:
npm run build
npm start
开发环境下:
npm run dev
测试与开发
此项目使用 Jest 进行测试,并使用 Biome 进行代码检查和格式化。
运行单元测试:
npx jest
以监视模式运行测试:
npx jest --watch
运行测试并生成覆盖率报告:
npx jest --coverage
运行集成测试(需要 Amadeus API 凭据):
npm run test:integration
运行代码检查:
npm run lint
格式化代码:
npm run format
集成测试
此项目包含全面的集成测试,用于验证服务与真实 Amadeus API 的交互。这些测试有助于确保我们的 API 客户端能够与实际 API 端点正确交互,并妥善处理响应。
集成测试要求
-
Amadeus API 凭据:测试需要在
.env文件中配置有效的 Amadeus API 凭据:AMADEUS_CLIENT_ID=your_client_id AMADEUS_CLIENT_SECRET=your_client_secret -
测试环境:测试配置为使用 Amadeus 测试环境,而非生产 API。
运行集成测试
npm run test:integration
集成测试位于 __tests__/integration,用于验证以下 API 功能:
- 机场搜索:按代码或关键词搜索机场
- 航班搜索:查找单程和往返行程的航班
- 价格分析:获取特定航线的价格指标
集成测试最佳实践
-
API 速率限制:测试包含自动速率限制处理机制,并使用指数退避策略来避免 API 限流。频繁运行测试时,仍可能遇到速率限制。
-
条件测试:如果缺少 API 凭据,测试会自动跳过,因此在没有凭据的环境中也能正常运行测试套件。
-
隔离测试:开发新功能时,可以运行特定的测试文件:
npx jest __tests__/integration/flight-search.test.js -
延长超时时间:集成测试使用更长的超时时间(60 秒),以适应网络延迟和重试。
-
在 CI/CD 中使用模拟:对于无法访问真实 API 的持续集成流水线,请使用
__tests__/amadeus-mock.test.js,该测试不会发起实际的 API 调用。
集成
要将此 MCP 服务与 OpenAI 的 Assistant API 或其他兼容的 AI 系统配合使用,请配置助手以连接到此服务的端点。
工具
此服务提供以下工具:
search-flights
搜索两个地点之间的航班报价。
search-airports
按关键词、城市名称或 IATA 代码搜索机场。
flight-price-analysis
获取某条航线的价格指标,判断当前价格偏高还是偏低。
get-flight-details
获取特定航班报价的详细信息。
find-cheapest-dates
查找指定航线的最低价出行日期。
资源
该服务提供以下架构资源:
- 航班报价(
schema://flight-offers) - 机场(
schema://airports)
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。