旅行MCP服务器
用于综合旅行计划的模型上下文协议(MCP)服务器,提供航班搜索、住宿预订、货币兑换、天气预报和旅行预算计算功能。
特性
- 🛫 航班搜索:查找并比较各种选项的航班
- 🏨 住宿搜索:搜索酒店、度假屋和其他住宿
- 💱 货币兑换:获取旅行预算的实时汇率
- 🌤️ 天气预报:检查旅行日期的天气状况
- 💰 旅行预算计算器:计算和计划您的旅行费用
安装
- 克隆存储库:
git clone https://github.com/josondev/neuronworks-travel-agent
cd travel-mcp-server- 安装依赖项:
npm install- 设置环境变量:
- 复制 .env.example 到 .env - 填写API密钥(请参阅 API密钥设置)
API密钥设置
您需要从以下服务获取API密钥:
- API航班:Amadeus、Skyscanner或类似的飞行数据提供商
- 住宿API:Booking.com、Airbnb或类似的住宿服务
- 货币兑换API:Fixer.io、ExchangeRate-API或类似服务
- 天气API:OpenWeatherMap、WeatherAPI或类似的天气服务
- GeoAppify API:景点和餐厅推荐
更新您的 .env 使用这些密钥的文件:
FLIGHT_API_KEY=your_flight_api_key
BOOKING_API_KEY=your_booking_api_key
EXCHANGE_API_KEY=your_exchange_api_key
WEATHER_API_KEY=your_weather_api_key
GEOAPIFY_API_KEY=your_geoappify_api_key用法
发展
在热重载的开发模式下运行服务器:
npm run dev生产
构建并启动服务器:
npm run build
npm start观看模式
文件更改时自动重新启动运行:
npm run watch可用工具
MCP服务器提供以下工具:
1.搜索航班(search_flights)
使用可定制的选项搜索目的地之间的航班。
参数:
origin:出发机场/城市destination:到达机场/城市departureDate:出发日期returnDate:返回日期(单程可选)passengers:乘客人数class:经济舱、商务舱、头等舱
2.搜索住宿(search_accommodation)
查找酒店、度假租赁和其他住宿选择。
参数:
destination:城市或地点checkIn:入住日期checkOut:退房日期guests:客人数量rooms:房间数量type:住宿类型(酒店、公寓等)
3.获取汇率(get_exchange_rate)
获取货币之间的当前汇率。
参数:
from:源货币代码(例如美元)to:目标货币代码(例如欧元)amount:要转换的金额(可选)
4.获取天气预报(get_weather_forecast)
检查您旅行目的地的天气状况。
参数:
location:城市或地点date:预测日期days:预测天数(可选)
5.计算行程预算(calculate_trip_budget)
计算预计的旅行费用,包括航班、住宿和日常开支。
参数:
destination:旅行目的地duration:行程持续时间(天)travelers:旅客人数category:预算类别(预算、中档、豪华)
项目结构
travel-mcp-server/
├── src/
│ ├── index.ts # Main server entry point
│ └── services/
│ ├── FlightService.ts # Flight search functionality
│ ├── AccommodationService.ts # Accommodation search
│ ├── CurrencyService.ts # Currency exchange
│ └── WeatherService.ts # Weather forecasting
├── dist/ # Compiled TypeScript output
├── package.json # Project dependencies and scripts
├── tsconfig.json # TypeScript configuration
├── .env # Environment variables (not in repo)
├── .gitignore # Git ignore rules
└── README.md # This file与MCP客户端集成
此服务器可以与任何兼容MCP的客户端一起使用,例如:
- 克劳德桌面版
- 其他支持MCP的AI助手
- 自定义MCP客户端应用程序
将服务器添加到MCP客户端配置中:
{
"mcpServers": {
"travel-planner": {
"command": "npx",
"args": ["travel-mcp-server"]
}
}
}开发指南
技术栈
- TypeScript:类型安全的JavaScript开发
- Node.js:运行时环境
- MCP-SDK:模型上下文协议实现
- 阿西奥斯:API请求的HTTP客户端
- 黄道带:架构验证
- Dotenv。:环境变量管理
添加新服务
- 在中创建新的服务类
src/services/ - 实施所需的方法
- 在中注册服务
src/index.ts - 添加相应的工具和处理程序
运行测试
npm test贡献
- 分叉存储库
- 创建要素分支:
git checkout -b feature-name - 进行更改
- 运行测试:
npm test - 提交您的更改:
git commit -m 'Add feature' - 推到分支:
git push origin feature-name - 提交拉取请求
许可证
此项目根据ISC许可证获得许可-请参阅 许可证 文件以获取详细信息。
支持
如果您遇到任何问题或有疑问:
- 检查 问题 部分
- 创建包含详细信息的新问题
- 提供日志和复制步骤
路线图
- \[\]添加更多旅行服务集成
- \[\]为API响应实现缓存
- \[\]添加旅行行程计划
- \[\]支持团体旅行协调
- \[\]与日历服务集成
- \[\]移动应用伴侣
