Pilot Hotel Search MCP
A free, read-only remote MCP server that enables AI agents to search for hotels by location and dates, retrieve detailed hotel information including amenities and photos, and check real-time room rates and refundability policies without requiring authentication.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://mcp.pilotplans.com/mcpWhat you can do with it
- Search for bookable hotels by city, neighborhood, or landmark with specific dates and guest counts
- Retrieve static details for a specific hotel including description, amenities, photos, and address
- Check bookable room offers for a hotel including price, board type, and refundability
Source and maintenance
Protocol and capabilities
- Server
- pilot-hotels 1.0.0
- MCP protocol
- 2025-06-18
- Tools
- 3 advertised
- Resources
- 1 advertised
- Resource templates
- 0 advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": true
},
"resources": {
"listChanged": true
}
}Tools
3 advertised
search_hotels — Search hotels
Search bookable hotels by location and dates. Returns hotels with nightly prices, photos, coordinates, a `url` linking to the hotel on Pilot, and an opaque id to pass to get_hotel_details and get_rates. Booking is not available through this connector, so link the user to a hotel's `url` when they want to book. Narrow with the rating, amenity and radius filters rather than requesting a large limit, and page with offset using next_offset from the previous result.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"location",
"check_in",
"check_out"
],
"properties": {
"limit": {
"type": "integer",
"default": 20,
"maximum": 50,
"minimum": 1,
"description": "Maximum hotels to return"
},
"rooms": {
"type": "integer",
"default": 1,
"maximum": 9007199254740991,
"minimum": 1,
"description": "Rooms required"
},
"guests": {
"type": "integer",
"default": 2,
"maximum": 9007199254740991,
"minimum": 1,
"description": "Number of adults"
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 9007199254740991,
"minimum": 0,
"description": "Hotels to skip, for paging"
},
"check_in": {
"type": "string",
"description": "Check-in date, YYYY-MM-DD"
},
"currency": {
"type": "string",
"default": "USD",
"maxLength": 3,
"minLength": 3,
"description": "ISO-4217 currency for returned prices"
},
"location": {
"type": "string",
"description": "City, address, or place name"
},
"ai_search": {
"type": "string",
"description": "Free-text preference, e.g. 'boutique hotel near the old town'. Ignored when it matches no inventory."
},
"check_out": {
"type": "string",
"description": "Check-out date, YYYY-MM-DD"
},
"amenity_ids": {
"type": "array",
"items": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991
},
"description": "Supplier facility ids the hotel must offer"
},
"children_ages": {
"type": "array",
"items": {
"type": "integer",
"maximum": 17,
"minimum": 0
},
"description": "Ages of children sharing the room"
},
"radius_meters": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": 1000,
"description": "Restrict to this radius around the location"
},
"min_star_rating": {
"type": "number",
"maximum": 5,
"minimum": 1,
"description": "Only hotels at or above this star rating"
},
"min_guest_rating": {
"type": "number",
"maximum": 10,
"minimum": 1,
"description": "Only hotels at or above this guest review score, out of 10"
},
"guest_nationality": {
"type": "string",
"default": "US",
"maxLength": 2,
"minLength": 2,
"description": "ISO-2 country of the guest; affects rate eligibility"
},
"property_type_ids": {
"type": "array",
"items": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991
},
"description": "Supplier hotel-type ids to restrict to"
}
}
}{
"readOnlyHint": true,
"openWorldHint": true,
"destructiveHint": false
}get_hotel_details — Get hotel details
Get static details (description, amenities, photos, address) for a hotel id returned by search_hotels.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"hotel_id"
],
"properties": {
"hotel_id": {
"type": "string",
"description": "Hotel id from search_hotels"
}
}
}{
"readOnlyHint": true,
"openWorldHint": true,
"destructiveHint": false
}get_room_rates_for_hotel — Get room rates
Get room rates for a hotel id from search_hotels. Each offer includes a price, board type and refundability. Booking is not available through this connector; send the user to Pilot to book.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"hotel_id"
],
"properties": {
"guests": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": 1,
"description": "Number of guests"
},
"check_in": {
"type": "string",
"description": "Override check-in, YYYY-MM-DD"
},
"hotel_id": {
"type": "string",
"description": "Hotel id from search_hotels"
},
"check_out": {
"type": "string",
"description": "Override check-out, YYYY-MM-DD"
}
}
}{
"readOnlyHint": true,
"openWorldHint": true,
"destructiveHint": false
}Prompts
Not advertised
Resources
1 advertised
hotel-results — Hotel results
Photo cards and a map for search_hotels results
ui://pilot/hotel-results.html30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 725 ms
- 95th percentile latency
- 725 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 725 ms · metadata changed · 3 tool(s), 1 resource(s), 0 resource template(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http pilot-hotel-search-mcp https://mcp.pilotplans.com/mcpCodex
codex mcp add pilot-hotel-search-mcp --url https://mcp.pilotplans.com/mcpCursor
{
"mcpServers": {
"pilot-hotel-search-mcp": {
"url": "https://mcp.pilotplans.com/mcp"
}
}
}Cline
{
"mcpServers": {
"pilot-hotel-search-mcp": {
"type": "streamableHttp",
"url": "https://mcp.pilotplans.com/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"pilot-hotel-search-mcp": {
"type": "http",
"url": "https://mcp.pilotplans.com/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http pilot-hotel-search-mcp https://mcp.pilotplans.com/mcpClaude Desktop
{
"mcpServers": {
"pilot-hotel-search-mcp": {
"url": "https://mcp.pilotplans.com/mcp"
}
}
}Windsurf
{
"mcpServers": {
"pilot-hotel-search-mcp": {
"serverUrl": "https://mcp.pilotplans.com/mcp"
}
}
}Let your agent find its tools
Find servers like Pilot Hotel Search MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other commerce servers
Do you run Pilot Hotel Search MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.