{
  "name": "airbnb",
  "display_name": "Airbnb",
  "description": "Provides tools to search Airbnb and get listing details.",
  "repository": {
    "type": "git",
    "url": "https://github.com/openbnb-org/mcp-server-airbnb"
  },
  "homepage": "https://github.com/openbnb-org/mcp-server-airbnb",
  "author": {
    "name": "openbnb-org"
  },
  "license": "MIT",
  "categories": [
    "Web Services"
  ],
  "tags": [
    "Airbnb",
    "search",
    "listings"
  ],
  "installations": {
    "npm": {
      "type": "npm",
      "command": "npx",
      "args": [
        "-y",
        "@openbnb/mcp-server-airbnb"
      ],
      "description": "Run with npx (requires npm install)"
    }
  },
  "examples": [
    {
      "title": "Search for Airbnb Listings",
      "description": "Search for listings in a specified location.",
      "prompt": "Search for listings in New York"
    },
    {
      "title": "Get Listing Details",
      "description": "Retrieve details for a specific listing.",
      "prompt": "Get details for listing 12345"
    }
  ],
  "arguments": {
    "location": {
      "description": "The location where you want to search for Airbnb listings",
      "required": true,
      "example": "New York City"
    },
    "placeId": {
      "description": "The unique identifier for a specific place or location",
      "required": false,
      "example": "ChIJN1t_tDeuEmsRUsoyG83frY4"
    },
    "checkin": {
      "description": "The check-in date for your stay in YYYY-MM-DD format",
      "required": false,
      "example": "2023-10-01"
    },
    "checkout": {
      "description": "The check-out date for your stay in YYYY-MM-DD format",
      "required": false,
      "example": "2023-10-05"
    },
    "adults": {
      "description": "The number of adults staying",
      "required": false,
      "example": "2"
    },
    "children": {
      "description": "The number of children staying",
      "required": false,
      "example": "1"
    },
    "infants": {
      "description": "The number of infants staying",
      "required": false,
      "example": "1"
    },
    "pets": {
      "description": "The number of pets allowed in the listing",
      "required": false,
      "example": "2"
    },
    "minPrice": {
      "description": "The minimum price per night for the listings",
      "required": false,
      "example": "50"
    },
    "maxPrice": {
      "description": "The maximum price per night for the listings",
      "required": false,
      "example": "300"
    },
    "cursor": {
      "description": "A cursor for paginating through results",
      "required": false,
      "example": "next-page-token"
    },
    "ignoreRobotsText": {
      "description": "Set to true to disregard Airbnb's robots.txt rules for all requests",
      "required": false,
      "example": "true"
    }
  },
  "tools": [
    {
      "name": "airbnb_search",
      "description": "Search for Airbnb listings with various filters and pagination. Provide direct links to the user",
      "inputSchema": {
        "type": "object",
        "properties": {
          "location": {
            "type": "string",
            "description": "Location to search for (city, state, etc.)"
          },
          "placeId": {
            "type": "string",
            "description": "Google Maps Place ID (overrides the location parameter)"
          },
          "checkin": {
            "type": "string",
            "description": "Check-in date (YYYY-MM-DD)"
          },
          "checkout": {
            "type": "string",
            "description": "Check-out date (YYYY-MM-DD)"
          },
          "adults": {
            "type": "number",
            "description": "Number of adults"
          },
          "children": {
            "type": "number",
            "description": "Number of children"
          },
          "infants": {
            "type": "number",
            "description": "Number of infants"
          },
          "pets": {
            "type": "number",
            "description": "Number of pets"
          },
          "minPrice": {
            "type": "number",
            "description": "Minimum price for the stay"
          },
          "maxPrice": {
            "type": "number",
            "description": "Maximum price for the stay"
          },
          "cursor": {
            "type": "string",
            "description": "Base64-encoded string used for Pagination"
          },
          "ignoreRobotsText": {
            "type": "boolean",
            "description": "Ignore robots.txt rules for this request"
          }
        },
        "required": [
          "location"
        ]
      }
    },
    {
      "name": "airbnb_listing_details",
      "description": "Get detailed information about a specific Airbnb listing. Provide direct links to the user",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Airbnb listing ID"
          },
          "checkin": {
            "type": "string",
            "description": "Check-in date (YYYY-MM-DD)"
          },
          "checkout": {
            "type": "string",
            "description": "Check-out date (YYYY-MM-DD)"
          },
          "adults": {
            "type": "number",
            "description": "Number of adults"
          },
          "children": {
            "type": "number",
            "description": "Number of children"
          },
          "infants": {
            "type": "number",
            "description": "Number of infants"
          },
          "pets": {
            "type": "number",
            "description": "Number of pets"
          },
          "ignoreRobotsText": {
            "type": "boolean",
            "description": "Ignore robots.txt rules for this request"
          }
        },
        "required": [
          "id"
        ]
      }
    }
  ]
}