Amadeus MCP 服务器添加福利群:解决AI开发者的「MCP实战痛点」这是一个模型上下文协议(MCP)服务器,它连接到 Amadeus API,为 AI 助手提供航班搜索、预订和分析功能。
该服务器提供了几个针对常见旅行规划场景预配置的提示:
analyze-flight-prices):分析某条航线的航班价格,并提供价格趋势见解find-best-deals):为特定航线和日期找到最佳航班优惠plan-multi-city-trip):使用最优路线规划完整的多城市行程find-cheapest-travel-dates):确定最经济的出行日期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 或其他兼容的人工智能系统一起使用,请配置助手以连接到此服务器的端点。
服务器提供以下工具:
search-flights搜索两个地点之间的航班报价。
search-airports通过关键词、城市名称或 IATA 代码搜索机场。
flight-price-analysis获取航班路线的价格指标,以确定当前价格是高还是低。
get-flight-details获取关于特定航班报价的详细信息。
find-cheapest-dates找到给定航线中最便宜的飞行日期。
服务器为以下内容提供了模式资源:
schema://flight-offers)schema://airports)MIT