SuperAPI AI 工具集

booking-mcp

Booking.com MCP 服务器(由 HasData 维护)是一个托管的 Model Context Protocol 服务,为 Claude、Cursor、Windsurf 等 MCP 客户端提供两个只读的 Booking.com 工具:按目的地和日期搜索住宿,以及读取单个房源的完整详情,所有结果均以结构化 JSON 返回。该服务器读取 Booking.com 上未登录访客可见的公开房源页面,无需自行托管。使用需要 MCP 客户端和 HasData API 密钥,免费层每月提供 1,000 积分(约 100 次 Booking.com 调用),无需信用卡。

访问官网

工具介绍

用途

Booking.com MCP 服务器是一个托管的 Model Context Protocol(MCP)服务器,让 AI 客户端(如 Claude、Cursor、Windsurf 等)能够以工具调用的方式访问 Booking.com 的公开住宿数据。它提供两个只读工具:按目的地和日期搜索住宿,以及读取单个房源的完整详情。所有数据以结构化 JSON 返回,无需用户自行托管服务器。

该服务器读取的是 Booking.com 上未登录访客可见的公开房源页面。它不提供预订、支付、合作伙伴佣金或账户数据功能。

主要能力

服务器暴露两个工具:

  1. 搜索住宿(hasdata_booking_search_getBookingSearchResults):按目的地和日期返回一页住宿结果。支持丰富的筛选条件,包括距离、餐食、无障碍设施、床型偏好和出行人群等。返回 searchInformation、results 数组以及分页信息(page、totalResults、totalPages)。每个结果包含 hotelId、title、url、提供的房型和床型、location 对象、policies 对象、price 对象、星级评分、reviews 对象(含 score、count 和文本标签)以及 photo。

  2. 房源详情(hasdata_booking_place_getBookingPlaceDetails):根据房源 URL 和入住窗口返回单个房源的完整信息。返回按区块组织的数据,包括 overview(id、title、propertyType、结构化地址、描述、亮点、最受欢迎设施和照片)、bookingDetails(价格对应的窗口和货币)、rooms 数组(可用套房及其名称、床型、设施和定价变体)、facilities 列表、houseRules、ratings 数组(分类评分)、reviews 以及 questionsAndAnswers。

服务器还暴露 16 个资源,每个对应一个参数,其可接受值是固定列表。读取资源不消耗积分,且无需 API 密钥即可获取列表。

使用方式

使用需要一个 MCP 客户端和一个 HasData API 密钥(可在 HasData 仪表板免费创建,无需信用卡)。这是一个远程服务器,最简单的接入方式是使用 URL 和 x-api-key 请求头,无需运行容器。

服务器 URL 对所有客户端相同:https://mcp.hasdata.com/mcp?apis=booking

支持 OAuth 的客户端可以将该 URL 添加为连接器并登录,无需在配置文件中放置密钥。在 Claude 中:设置 → 连接器 → 添加自定义连接器 → 粘贴上述 URL 并登录。

对于配置文件方式,Claude Desktop 仅加载本地(stdio)服务器,因此需要通过 stdio 启动器访问远程服务器。@hasdata/booking-mcp 包(npm)就是该启动器,它从环境变量读取密钥。也可使用 PyPI 包 hasdata-booking-mcp,通过 uvx 运行而无需手动安装。

Cursor 使用 ~/.cursor/mcp.json(所有项目)或 .cursor/mcp.json(单个项目)。Windsurf 使用 ~/.codeium/windsurf/mcp_config.json,字段名为 serverUrl 而非 url。VS Code 使用工作区中的 .vscode/mcp.json。

使用方式是输入提示词而非代码,代理会自动选择工具。每个成功的调用消耗 10 积分。示例提示词包括:搜索巴黎 9 月 15 日至 18 日两名成人的酒店并给出评分最高的十家;获取顶部结果的完整详情;查找巴黎市中心附近可免费取消的四星级酒店;比较巴黎和罗马同日期的最便宜住宿。

注意:房源详情工具需要与搜索相同的日期和客人数,因为可用性、房型和价格都取决于入住窗口。

适用场景

  • 让 AI 代理搜索和比较不同目的地的住宿价格与评分
  • 获取单个房源的完整设施、房型、政策和分类评分
  • 将 Booking.com 数据与其他 HasData API(如 Airbnb)结合使用,通过 apis 参数传入列表,例如 ?apis=booking,airbnb
  • 低频率的自动化代理,可长期使用免费层

限制

  • 仅读取公开数据,不提供预订、支付、合作伙伴佣金或账户数据
  • 房源详情工具必须传入与搜索相同的日期和客人数
  • 每个成功的工具调用消耗 10 积分,与响应大小无关
  • 免费层每月 1,000 积分(约 100 次调用),并发限制为 1 个请求;付费计划从每月 59 美元(200,000 积分,约 20,000 次调用)起,并发随计划提高
  • 非 200 响应不计费,但成功但无结果的调用仍计费
  • 错误处理:MCP 层通常返回 200 并将失败信息放在结果中(isError 为 true);密钥错误表现为工具输出而非连接失败;缺少密钥会导致连接本身 401 失败;参数不符合 schema 会在抓取前被拒绝;无可用性的搜索返回空 results 数组而非错误;失效的房源 URL 返回 400
  • 该服务器与 Booking.com 无关联,未获其认可或赞助
  • 平台条款可能限制自动访问,用户需自行负责合规;若收集的数据包含个人信息,需确保符合 GDPR、CCPA 等法规

定价与免费层

免费层每月 1,000 积分,无需信用卡,约合 100 次 Booking.com 调用,随计费周期续期。付费计划起价每月 59 美元,包含 200,000 积分(约 20,000 次调用),单价随用量下降。当前价格请参见定价页面。

其他信息

该仓库为远程服务器的配置和文档,无构建步骤,无需容器化。测试套件断言工具契约,包括 ?apis=booking 返回恰好两个工具、每个工具仍声明必需参数、名称未变以及密钥被接受。最后一项检查会真实调用工具并消耗 10 积分。测试在每次推送和每周定时在 CI 中运行。许可证为 MIT。