Airbnb MCP

mcp-server-airbnb

Airbnb MCP server: an agent searches stays by city, dates, guests and price and opens a listing with its amenities and house rules

  • 551 ★ on the repository
  • Last commit
  • MIT
MCP server

Extended access

Why this level

  • Calls airbnb.com and two third-party geocoders and parses pages it does not own
  • The robots.txt override flag lets it request pages the site closed to automated crawling
All reasons and checks

openbnb-org/mcp-server-airbnb

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add mcp/mcp-server-airbnb

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • Calls airbnb.com and two third-party geocoders and parses pages it does not own
  • The robots.txt override flag lets it request pages the site closed to automated crawling

This is third-party code. Review the repository files before installing.

What it does

The server runs on your computer over stdio and gives an agent two tools. `airbnb_search` looks for stays by place name or Google Maps ID (`placeId`), check-in and check-out dates, the number of adults, children, infants and pets, a price range and a property type: entire home, private room, shared room or hotel room. Results come in pages with links to listings and the search page URL. The second tool, `airbnb_listing_details`, takes a listing ID and returns coordinates, amenities by group, house rules, the description and highlights. Amenities that Airbnb shows struck through go into a separate group named Not included. The server does not use an official API: it requests airbnb.com pages and parses their HTML. Before each request it checks the site's `robots.txt`. When a request has no `placeId`, it also sends the place name to the Photon and Nominatim geocoders to get map bounds.

Who it is for. For people who plan a trip or compile stay shortlists and want an agent in Claude Desktop or Cursor to filter options by dates, party size and budget.

Good fit when

  • You want to compare a dozen stays in a city for exact dates and drop those that miss on price or party size
  • A listing needs a check for a kitchen, washing machine or parking and for house rules
  • A multi-city trip needs a short shortlist with links for each city
  • You want an answer such as which area has the cheapest entire flat for three without paging through results by hand

Not a fit when

  • You need to book a stay or pay for it: the server only searches and reads listings and has no bookings or payments
  • You need steady operation without breakage: data comes from page markup, and a layout change on Airbnb can break the results
  • You need to search other rental platforms. For hotels and flights with booking there is the tourmind-booking-skills skill
  • Your Node.js is older than version 18: the server will not start on it

Example request

Find an entire flat in Lisbon for three from November 12 to 19 under 120 euros a night and show five options with links and amenity lists

MCP

Transport
stdio
Authentication
not required

Environment variables

IGNORE_ROBOTS_TXT
Turns off the `robots.txt` check before requests to Airbnb
DISABLE_GEOCODING
Turns off Photon and Nominatim calls so the place name goes only to Airbnb

Limitations

The project is unofficial and has no connection to Airbnb. Its authors ask you to use it for research and stay selection, follow Airbnb's terms of service and avoid hammering the site with frequent requests.

By default the server obeys `robots.txt`. The `--ignore-robots-txt` flag, the `IGNORE_ROBOTS_TXT` variable and the `ignoreRobotsText` request parameter turn that check off, so use them only on sites and data you have permission to access.

Geocoding sends the place name to `photon.komoot.io` and, if that returns nothing, to `nominatim.openstreetmap.org`. The `DISABLE_GEOCODING=true` variable turns it off, but searches for cities outside the US may then land in the wrong area. MIT License.

There are no offline tests: both suites call airbnb.com and the geocoders. Claude Desktop needs version 0.10.0 or newer.

How to disable. Remove the `airbnb` block from Cursor's `mcp.json` and restart the editor. In Claude Desktop, disable or remove the extension in settings.

FAQ

Do I need a key or an Airbnb account?

No. The configuration has no keys and no account login. The server requests public airbnb.com pages, so it sees what a guest who is not signed in sees.

How do I connect the server to Cursor?

Install Node.js first. In Cursor open the tools section of settings, click New MCP Server and add to `mcp.json` a block with the `npx` command and the arguments `-y` and `@openbnb/mcp-server-airbnb`, then restart the editor.

How do I install the extension in Claude Desktop?

Download the `.mcpb` file from the repository's latest release and open it: Claude Desktop shows an install dialog with the extension settings. Claude Desktop 0.10.0 or newer is required.

Why could a search for a European city land in the wrong place?

Airbnb's own geocoder handles queries outside the US poorly, for example Paris lands in Vendee. So the server first gets the place bounds from Photon. A search with a ready Google Maps `placeId` is the most precise, and third-party geocoders are not called then.

What does airbnb_listing_details return?

Coordinates, amenities by group in the `seeAllAmenitiesGroups` field, house rules, the description, highlights and a link to the listing. Pass dates and party size so the page shows the right conditions.

Is there a hosted version of the project?

The authors mention a separate hosted service, openbnb.ai, with richer filters and an interactive interface. It is a different product; this repository holds the open-source server that runs on your computer.

Discussion

No questions or reviews yet.

Official

Official Tavily MCP server: real-time web search, page content extraction, site mapping and crawling

MCP serverExtended access2.5KRepository stars
Official

Official Apify MCP server: the agent runs ready-made Apify Store scrapers for social media, maps, search and shops

MCP serverExtended access13.7KRepository stars

MCP server for real-time web search: general and vertical search, batch queries and page content extraction

MCP serverExtended access2.1KRepository stars

A unified search MCP server: one interface to Tavily, Brave, Kagi, Exa, Linkup, Firecrawl and GitHub search

MCP serverExtended access359Repository stars

Web search via DuckDuckGo and page reading for the agent with no API keys, with built-in rate limiting

MCP serverExtended access1.6KRepository stars
Official

Official Firecrawl MCP server: web search, page scraping to Markdown, site crawling and in-page actions

MCP serverExtended access7.7KRepository stars

README in short

The repository describes the search and listing features, installation for Claude Desktop and Cursor, the parameters of both tools and the replies they return. A separate section explains which external services the server calls and how to opt out of geocoding. There are sections on building, tests, compatibility and legal limits of use. The root holds TypeScript sources, the `manifest.json` for the extension, a Dockerfile and a Smithery config.

README badge

Report a problem

Foxx AIAirbnb MCP
Foxx AI

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.