Duffel MCP Server
Duffel MCP Server
Сервер Model Context Protocol, который предоставляет ИИ-ассистенту типизированный слой инструментов поверх API путешествий Duffel — авиаперелёты, отели и аренда автомобилей, поиск по живому инвентарю, а не по сгенерированным из воображения модели данным.
Написан на TypeScript на базе официального Anthropic MCP SDK. Работает через stdio, поэтому подключается напрямую к Claude Desktop или любому MCP-совместимому клиенту.
Только поиск, по дизайну. Этот сервер не предоставляет поверхности для бронирования, оплаты или работы с персональными данными. Он читает наличие и цены; он не может тратить деньги или создавать бронь.
Зачем это существует
Путешествия — хороший тест для агентного ИИ: вопросы формулируются на естественном языке («неделя в Лиссабоне в мае, до £800»), но ответы должны приходить из реального инвентаря с реальными ценами. Языковая модель не может выдумать расписание рейсов. Ей нужны инструменты.
Этот сервер предоставляет четыре таких инструмента, спроектированных так, чтобы модель могла выстраивать их в цепочку без догадок.
Related MCP server: Travel Assistant MCP
Инструменты
Инструмент | Что делает |
| Преобразует название города или аэропорта в код(ы) IATA и широту/долготу. Вызывается первым — для перелётов нужен код IATA, для отелей и автомобилей — координаты. |
| Ищет предложения по авиаперелётам. Опустите |
| Ищет жильё вокруг координат. Возвращает самые дешёвые варианты с названием, рейтингом и общей ценой за выбранный диапазон дат. |
| Ищет аренду автомобилей вокруг координат точки выдачи. Возвращает тарифы с автомобилем, поставщиком и общей ценой. |
Ключевая точка дизайна — resolve_place: без него модель вынуждена угадывать, что Лиссабон — это LIS,
и выдумывать координаты. С ним каждый последующий вызов опирается на реальный идентификатор.
Дизайн-решения, которые стоит отметить
Проверка учётных данных при запуске. Если
DUFFEL_API_KEYне задан, процесс пишет в stderr и завершается с ненулевым кодом, а не запускается и не падает с непонятной ошибкой при первом вызове инструмента.stdout зарезервирован для протокола MCP. Вся запись логов идёт в stderr. Запись чего-либо ещё в stdout повреждает поток JSON-RPC — тонкий сценарий отказа, от которого стоит защищаться явно.
Тестовые токены обязательны в смоук-тесте.
test/smoke.tsотказывается запускаться, если токен не начинается сduffel_test_, чтобы живой токен не был использован случайно. Он никогда не печатает токен.Нет поверхности бронирования. Эндпоинты бронирования и оплаты намеренно не предоставлены. Агент, использующий этот сервер, может исследовать поездку; он не может обязать вас к ней.
Требования
Node.js 18+
Тестовый токен Duffel — бесплатно на app.duffel.com → Developers → Access tokens
Установка
npm install
cp .env.example .env # then add your Duffel test token
npm run buildЗапуск
npm run dev # development, via tsx
npm start # production, from dist/Использование с Claude Desktop
Добавьте в ваш claude_desktop_config.json:
{
"mcpServers": {
"duffel-travel": {
"command": "node",
"args": ["/absolute/path/to/duffel-mcp/dist/index.js"],
"env": { "DUFFEL_API_KEY": "duffel_test_your_token_here" }
}
}
}Перезапустите Claude Desktop — появятся четыре инструмента. Попробуйте: «Найди мне рейсы из Эдинбурга в Лиссабон в мае и жильё рядом с центром».
Тестирование
npx tsx --env-file=.env test/smoke.tsВызывает resolve_place и search_flights против живого тестового API Duffel. Завершается с ненулевым кодом при
сбое и никогда не печатает ваш токен.
Архитектура
src/
├── index.ts entry point — credential guard, stdio transport
├── server.ts MCP server: registers the four tools with zod schemas
└── duffel.ts Duffel API client and response normalisationОтветы нормализуются до того, как попадают к модели — сырые полезные нагрузки Duffel объёмны, а агенту проще рассуждать над урезанной, предсказуемой структурой, чем над глубоко вложенным ответом API.
Технологии
TypeScript · @modelcontextprotocol/sdk · @duffel/api · zod
Происхождение
Создан в 2026 году Ahmed Ali Qadir как инструментальный слой для Tourista, ИИ-продукта для путешествий от Orbixio Ltd (Великобритания, рег. номер 16587877). Вынесен сюда как самостоятельный, переиспользуемый MCP-сервер.
Не аффилирован с Duffel или Anthropic и не одобрен ими.
Лицензия
MIT — см. LICENSE.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseCqualityDmaintenanceEnables searching for flights (one-way, round-trip, multi-city) and hotels using the Duffel API, with support for detailed offer information, cabin class preferences, and guest reviews.54
- AlicenseAqualityAmaintenanceEnables travel search workflows including airport lookup, route comparison, travel timing guidance, and external booking links with commission-eligible links.5281MIT
- AlicenseAqualityBmaintenanceEnables AI agents to plan trips by searching flights, accommodations, and activities, and managing itineraries collaboratively with role-based permissions.2031MIT

Dida Hotel MCPofficial
AlicenseNot gradedqualityBmaintenanceEnables AI agents to search and book hotels globally with real-time pricing and inventory from over 2 million properties.93MIT
Related MCP Connectors
AI marketplace — flights, tours, activities, transport & more via MCP. No auth required.
Live flight prices and working booking links for AI agents and travel apps.
Flight search & booking for AI agents. 400+ airlines, $20-50 cheaper than OTAs.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/AhmedAliQadir/duffel-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server