写在前面:这是一款完全开源的酒店 MCP 工具,致力于为所有 AI Agent 开发者提供开箱即用的实时酒店数据能力。
如果这个项目对你的开发有帮助,欢迎前往 GitHub 点亮一颗 Star ⭐。你的支持是这个创业项目持续迭代数据覆盖、优化接入体验、共建旅行 AI开放生态的核心动力。 项目仓库:GitHub |
https://github.com/RollingGo-AI/rollinggo-hotel-mcp

先说清楚一件事:接这个 MCP 到底能干嘛

简单讲,它让你的 AI Agent 具备了实时查询真实酒店数据的能力。

覆盖量我测了一下:全球 200 万+ 酒店,11 万+ 直签酒店,500+ 供应商,200+ 国家和地区。数据源是真实的,库存是能查的,不是 demo 数据,不是过时的缓存。

接入方式也很直接——不需要走商务流程,不需要企业资质,申请一个 API Key,配到 MCP 配置文件里,完事。


5 个 Tool,逐个说

我先把这次接的 5 个 Tool 梳理一遍,每个具体干什么、什么场景用得上。

① searchHotels — 按条件搜酒店

按地点、日期、星级、人数、标签等条件搜索酒店列表,返回候选酒店及展示价。

典型场景:用户说「帮我找北京 6 月 1 日入住、两晚、四星以上的酒店」,扔给这个 Tool,直接出结果。

几个值得注意的参数:

  • placeType 有 8 种枚举:城市、机场、景点、火车站、地铁站、酒店、区/县、详细地址。选错类型会导致搜不到结果,比如搜「上海外滩」要选 景点,不是 城市
  • price 返回的是对象不是数字,取价格用 price.lowestPrice
  • 搜索结果的价格是参考价(displayRate),不是实时可订价,下单前必须走 getHotelDetail 重新查

② getHotelDetail — 查指定酒店的实时房型与价格

拿到酒店 ID 之后,用这个 Tool 查询实时房型列表、价格计划和取消政策。

返回内容挺完整的:roomTypeId、ratePlanId、床型描述、币种、总价、取消政策(精确到具体日期和取消费用)。带儿童出行的时候这个特别有用,可以查到儿童政策。

踩过的坑:totalPrice 为 0 的时候不是免费,是价格需要进一步查询,不应该展示为「免费入住」。

③ getHotelSearchTags — 获取可用搜索标签

返回所有可用于 searchHotels.hotelTags 的标签列表,按分类组织。

标签分类覆盖挺广:品牌与评分、特色卖点、核心设施、亲子家庭、服务细节、交通与支付、景观与房型……

建议把这个 Tool 的结果缓存到本地,客户端做意图映射的时候直接用,不用每次都调。

④ searchAirports — 搜机场/城市代码

根据关键字搜索机场、城市或交通节点,返回 cityCodeairportCode,供 searchFlights 使用。

支持城市名、机场名、机场代码三种搜法,比如「杭州」「Hangzhou」「HGH」都能搜到结果。

注意:同一个城市可能有多个机场(上海有 PVG 浦东和 SHA 虹桥),用 cityCode 泛查,用 airportCode 精确筛选。

⑤ searchFlights — 查航班

查询指定日期、航线、乘客人数和舱等的航班方案。

支持单程和往返,往返时必须传 retDate。舱等有四种:ECONOMY、PREMIUM_ECONOMY、BUSINESS、FIRST。

返回结果里有个 fromSmartValueScore(综合推荐分),分数越高代表价格、时间、直飞等综合表现越好,做展示排序可以直接用这个。


多平台配置,具体怎么搞

以下配置均在 Windows 和 macOS 上实测通过。

通用前提

类型 方式
API Key 申请 https://rollinggo.store/apply
技术支持 访问 rollinggo.store 扫右上角图标

先去申请 API Key,不限额度调用。拿到 Key 之后是 mcp_xxx 格式,申请入口和文档都在 rollinggo.store/docs。

两个端点:

酒店 MCP:  https://mcp.rollinggo.cn/mcp
机票 MCP:  https://mcp.rollinggo.cn/mcp/flight

Claude Desktop

打开 Claude Desktop → 左下角设置 → MCP Servers → Add MCP Server

填写内容:

{
  "mcpServers": {
    "rollinggo-hotel": {
      "command": "npx",
      "args": ["-y", "@rollinggo/mcp-hotel"]
    }
  }
}

或者直接在 Claude Desktop 的 MCP 配置界面里添加:

URL: https://mcp.rollinggo.cn/mcp
Transport: http

配完之后在对话里测试一下,问一句「帮我找杭州西湖附近酒店」,如果 MCP 工具被调用了,说明配置成功。

Cursor

打开 Cursor → Settings → MCP → Add new global MCP server

Name: rollinggo-hotel
Type: http
URL: https://mcp.rollinggo.cn/mcp

Cursor 的 MCP 支持比 Claude Desktop 更灵活,可以直接在 .cursor/mcp.json 文件里改配置:

{
  "mcpServers": {
    "rollinggo-hotel": {
      "url": "https://mcp.rollinggo.cn/mcp"
    }
  }
}

Windsurf

Windsurf 基于 Codeium,支持 MCP 协议。配置路径在 ~/.config/windsurf/mcp.json:

{
  "mcpServers": {
    "rollinggo-hotel": {
      "url": "https://mcp.rollinggo.cn/mcp",
      "transport": "http"
    }
  }
}

Codex(需要注意一点)

Codex 必须使用 streamable-http 作为 transport type,不能用普通的 http。我第一次配的时候踩了这个坑,401 Unauthorized 半天,最后发现是 type 写错了。

正确配置:

{
  "mcpServers": {
    "rollinggo-hotel": {
      "url": "https://mcp.rollinggo.cn/mcp",
      "transport": "streamable-http"
    }
  }
}

Trae

Trae 同样是国产 AI IDE,MCP 配置方式和 Cursor 类似。配置文件在 ~/.trae/mcp.json:

{
  "mcpServers": {
    "rollinggo-hotel": {
      "url": "https://mcp.rollinggo.cn/mcp"
    }
  }
}

其他平台(Copilot、Kiro、Antigravity 等)

思路是一样的,核心就两点:

  1. 找到平台对应的 MCP 配置文件
  2. 填入 URL(https://mcp.rollinggo.cn/mcp)+ 你的 API Key(放在 Authorization Header 里,格式为 Bearer mcp_xxx,注意 Bearer 和 Key 之间只有一个空格,我在这里踩过坑)

实际跑一遍,我测了什么

光配置不测试等于没配。我测试了一个具体场景:

场景:用户说「帮我看看东京站步行 10 分钟内,有免费 WiFi 的酒店,6 月 20 日入住两晚」

Agent 调用链:

searchHotels
  → place: "东京站"
  → placeType: "火车站"
  → checkInParam: { checkInDate: "2026-06-20", stayNights: 2 }
  → filterOptions: { distanceInMeter: 800 }
  → hotelTags: { preferredTags: ["免费WiFi"] }

getHotelDetail(对搜索结果中的目标酒店)
  → hotelId: <搜索返回的 hotelId>
  → dateParam: { checkInDate: "2026-06-20", checkOutDate: "2026-06-22" }

整个链路跑通,返回了酒店名称、星级、距东京站距离、WiFi 标签、实时房型价格。从输入到拿到可用结果,全程在 Agent 里完成,没有打开任何旅行 App。


这块需要注意的地方

说几个我实测中踩过的真实问题:

第一个,日期不能传过去的。 searchHotels 如果日期在过去或早于今天,接口会返回空结果,不会报错。排查了很久才发现是日期问题。

第二个,place 和 placeType 要匹配。 搜「上海外滩」用 城市 是搜不到东西的,要用 景点

第三个,API Key 的 Bearer 格式。 很多平台传 Header 的时候会自动拼接,如果 Key 前面多了一个空格就全挂了。建议申请完 Key 之后在平台里单独测试一次认证,再连 MCP。

第四个,Codex 必须用 streamable-http。 这个我卡了最久,文档没写清楚,错误提示也看不出原因,后来在一个 Issue 里找到答案。


什么人适合接这个

说实话,这个 MCP 对两类人最有价值:

做旅行/出行方向 AI Agent 开发的,直接接真实库存,不用自己爬数据,供应链是现成的。

接了 MCP 但发现数据不准确、库存是假的,拿这个做对比基线,11 万直签酒店的真实性是可以验证的。

对通用 AI 应用来说,接这个意义不大——你的用户不会问「全球酒店实时价格」,但会问「我出差去北京住哪」,这个场景才适合接。


⭐ 支持开源旅行 AI 生态 | 觉得项目有用,欢迎去 GitHub 点个 Star
👉 仓库直达:https://github.com/RollingGo-AI/rollinggo-hotel-mcp

以上均为独立测试体验,与 RollingGo 无任何商业合作关系。

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐