这是一个模型上下文协议(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 凭证:测试需要有效的Amadeus API凭证在.env文件中:
AMADEUS_CLIENT_ID=your_client_id
AMADEUS_CLIENT_SECRET=your_client_secret
测试环境:测试配置为使用Amadeus测试环境,而不是生产API。
npm run test:integration
集成测试位于__tests__/integration,验证以下API功能:
npx jest __tests__/integration/flight-search.test.js
__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 </中文翻译>