article
README
🚀 Amadeus MCP 服务器
这是一个模型上下文协议(MCP)服务器,它与 Amadeus API 相连接,能为 AI 助手赋予航班搜索、预订和分析等强大功能,助力用户高效规划旅行。
✨ 主要特性
- 航班搜索:可查找不同机场之间的航班及其各类参数。
- 机场信息:支持通过关键词、城市或国家搜索机场。
- 价格分析:获取航线的价格指标,以此判断当前价格高低。
- 最便宜的日期:帮助找到旅行最经济实惠的日期。
- 航班详情:能获取特定航班的详细信息。
💡 提示词
该服务器提供了几个预配置的提示词,适用于常见的旅行规划场景:
- 分析航班价格 (
analyze-flight-prices):分析航线航班价格的趋势并提供见解。 - 寻找最佳优惠 (
find-best-deals):为特定航线和日期找到最佳航班优惠。 - 计划多城市行程 (
plan-multi-city-trip):规划完整的多城市行程并优化路线。 - 查找最便宜的旅行日期 (
find-cheapest-travel-dates):识别旅行最经济实惠的日期。
📦 安装指南
先决条件
- Node.js 16.x 或更高版本
- Amadeus API 凭证(客户端 ID 和密钥)
安装
- 克隆仓库:
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 功能:
- 机场搜索:通过代码或关键词搜索机场。
- 航班搜索:查找单程和往返航班。
- 价格分析:获取特定航线的价格指标。
集成测试最佳实践
⚠️ 重要提示
- 测试时需注意 Amadeus API 的速率限制,避免超出配额。
- 要确保在运行测试时,
.env文件中的凭证正确配置。- 定期检查并更新项目依赖项,以保持兼容性。
📄 许可证
MIT
扫码联系在线客服