Airbnb MCP
mcp-server-airbnb
MCP-сервер для Airbnb: агент ищет жилье по городу, датам, гостям и цене и открывает карточку объявления с удобствами и правилами
- 551 ★ репозитория
- Последний коммит
- MIT
Расширенный доступ
Почему такой уровень
- Обращается по сети к airbnb.com и двум сторонним геокодерам и разбирает чужие страницы
- Флаг отключения `robots.txt` позволяет запрашивать страницы, которые сайт закрыл для автоматического обхода
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add mcp/mcp-server-airbnbОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Обращается по сети к airbnb.com и двум сторонним геокодерам и разбирает чужие страницы
- Флаг отключения `robots.txt` позволяет запрашивать страницы, которые сайт закрыл для автоматического обхода
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Сервер запускается на вашем компьютере по stdio и дает агенту два инструмента. `airbnb_search` ищет жилье по названию места или идентификатору Google Maps (`placeId`), датам заезда и выезда, числу взрослых, детей, младенцев и животных, диапазону цены и типу жилья: дом целиком, отдельная комната, общая комната или номер в отеле. Результаты приходят страницами, к ним прилагаются ссылки на объявления и адрес поисковой страницы. Второй инструмент, `airbnb_listing_details`, принимает идентификатор объявления и возвращает координаты, удобства по группам, правила дома, описание и главные особенности. Удобства, которые Airbnb показывает зачеркнутыми, попадают в отдельную группу «Not included». Сервер не использует официальный API: он запрашивает страницы airbnb.com и разбирает их HTML. Перед каждым запросом он сверяется с `robots.txt` сайта. Если в запросе нет `placeId`, он дополнительно отправляет название места в геокодеры Photon и Nominatim, чтобы получить границы на карте.
Для кого. Для тех, кто планирует поездку или собирает подборки жилья и хочет поручить агенту в Claude Desktop или Cursor отбор вариантов по датам, составу гостей и бюджету.
Подходит, если
- Нужно сравнить десяток вариантов жилья в городе на конкретные даты и отсеять те, что не подходят по цене или составу гостей
- По объявлению надо выяснить, есть ли кухня, стиральная машина или парковка и какие правила дома
- Поездка в несколько городов, и по каждому нужна короткая подборка со ссылками
- Нужен ответ на вопрос вроде «где в районе дешевле всего отдельная квартира на троих» без ручного листания выдачи
Не подходит, если
- Нужно забронировать жилье или оплатить его: сервер только ищет и читает объявления, броней и платежей в нем нет
- Нужна стабильная работа без поломок: данные берутся из разметки страниц, и при смене верстки Airbnb результаты могут сломаться
- Нужен поиск по другим площадкам аренды. Для отелей и авиабилетов с бронированием есть скилл tourmind-booking-skills
- Установлен Node.js ниже 18-й версии: сервер на нем не запустится
Пример запроса к агенту
Найди в Лиссабоне квартиру целиком на троих с 12 по 19 ноября до 120 евро за ночь и покажи пять вариантов со ссылками и списком удобствMCP
- Транспорт
- stdio
- Авторизация
- не нужна
Переменные окружения
IGNORE_ROBOTS_TXT- Отключает проверку `robots.txt` перед запросами к Airbnb
DISABLE_GEOCODING- Выключает вызовы Photon и Nominatim, название места уходит только в Airbnb
Ограничения
Проект неофициальный и к Airbnb не относится. Авторы просят использовать его для исследования и подбора жилья, соблюдать условия сервиса Airbnb и не перегружать сайт частыми запросами.
По умолчанию сервер соблюдает `robots.txt`. Флаг `--ignore-robots-txt`, переменная `IGNORE_ROBOTS_TXT` и параметр `ignoreRobotsText` в запросе отключают эту проверку, поэтому применять их можно только к сайтам и данным, на которые у вас есть разрешение.
Геокодирование отправляет название места на `photon.komoot.io`, а при пустом ответе на `nominatim.openstreetmap.org`. Выключает его переменная `DISABLE_GEOCODING=true`, но поиск по городам вне США тогда может дать неверный район. Лицензия MIT.
Оба набора тестов обращаются к airbnb.com и геокодерам, поэтому без сети они не проходят. Для Claude Desktop нужна версия 0.10.0 или новее.
Как отключить. Удалите блок `airbnb` из файла `mcp.json` Cursor и перезапустите редактор. В Claude Desktop отключите или удалите расширение в настройках.
Частые вопросы
Нужен ли ключ или аккаунт Airbnb?
Нет. В конфигурации нет ни ключей, ни входа в аккаунт. Сервер запрашивает общедоступные страницы airbnb.com, поэтому видит то же, что гость без входа.
Как подключить сервер к Cursor?
Нужен установленный Node.js. В настройках Cursor найдите раздел инструментов, нажмите New MCP Server и добавьте в `mcp.json` блок с командой `npx` и аргументами `-y` и `@openbnb/mcp-server-airbnb`, затем перезапустите редактор.
Как поставить расширение в Claude Desktop?
Скачайте файл `.mcpb` из последнего релиза репозитория и откройте его: Claude Desktop покажет окно установки с настройками расширения. Потребуется версия Claude Desktop 0.10.0 или новее.
Почему поиск по европейскому городу мог попасть не туда?
Собственный геокодер Airbnb плохо справляется с запросами вне США, например Париж попадает в Вандею. Поэтому сервер сначала получает границы места у Photon. Точнее всего поиск с готовым `placeId` из Google Maps, тогда сторонние геокодеры не вызываются.
Что вернет airbnb_listing_details?
Координаты, удобства по группам в поле `seeAllAmenitiesGroups`, правила дома, описание, главные особенности и ссылку на объявление. Даты и число гостей передают, чтобы страница показала нужные условия.
Есть ли у проекта размещенная версия?
Авторы упоминают отдельный размещенный сервис openbnb.ai с расширенными фильтрами и интерактивным интерфейсом. Это другой продукт, а этот репозиторий содержит открытый сервер, который работает на вашем компьютере.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыОфициальный MCP-сервер Tavily: веб-поиск в реальном времени, извлечение текста страниц, карта сайта и обход сайтов
Официальный MCP-сервер Apify: агент запускает готовые скрейперы из Apify Store для соцсетей, карт, поиска и магазинов
MCP-сервер для веб-поиска в реальном времени: общий и тематический поиск, пакетные запросы и извлечение содержимого страниц
MCP-сервер объединенного поиска: один интерфейс к Tavily, Brave, Kagi, Exa, Linkup, Firecrawl и поиску по GitHub
Веб-поиск через DuckDuckGo и чтение страниц для агента без API-ключей, с ограничением частоты запросов
Официальный MCP-сервер Firecrawl: поиск в интернете, скрейпинг страниц в Markdown, обход сайтов и действия на странице
Коротко о README
В репозитории описаны возможности поиска и карточки объявления, установка для Claude Desktop и Cursor, параметры обоих инструментов и ответы, которые они возвращают. Отдельный раздел объясняет, какие внешние сервисы вызывает сервер и как отказаться от геокодирования. Есть разделы про сборку, тесты, совместимость и правовые рамки использования. В корне лежат исходники на TypeScript, манифест `manifest.json` для расширения, Dockerfile и конфигурация для Smithery.