HotelRunner MCP by usefulapi

io.usefulapi由 usefulapi.io 发布官方发布者v1.15.4更新于 Nov 7, 2026

Read HotelRunner reservations, rooms, channels; update availability and prices; confirm or cancel.

发布方自己的服务:Ably MCP by usefulapi

已验证Streamable HTTP可网页运行效率与工作流商业与电商

概览

AI 生成的概览

将助手连接到 HotelRunner 酒店账户:读取预订、房型和销售渠道,并更新库存、价格和预订状态。

可以做什么
  • 列出房型与价格,含 inv_code、rate_code、容量、币种和渠道代码
  • 列出并查询预订,含房间、每日价格、附加项、付款和住客信息
  • 列出 HotelRunner 全部销售渠道及本酒店已连接的渠道,并显示更新计数
  • 按 transaction_id 查看某次日历更新的各渠道状态
  • 更新单个房型的库存、价格、最短/最长入住、停售、CTA/CTD,最长 90 天,可按星期和渠道限定
  • 确认或取消单笔预订,取消时必须给出原因
适用场景
适合酒店经营者或物业管理者让助手查询近期订单与渠道表现、查看某笔预订详情,或在不打开 HotelRunner 后台的情况下向已连接渠道推送价格和库存变更。
运行要求
远程 MCP 端点,通过 streamable HTTP 连接,无需本地运行环境。使用 OAuth 登录,登录页要求填写在酒店后台创建的 HotelRunner 应用的 HR_ID 和 TOKEN。客户端配置中不要添加 API key 或 Authorization 头。免费方案每月 50 次工具调用,另有付费方案。
安装前请注意
有两个写入工具会改动线上数据:日历更新会改变已连接渠道的库存和价格;取消预订不可撤销、会释放房间,并可能通知住客或渠道。执行写入前应先确认。登录时需提供 HotelRunner 应用凭据(HR_ID、TOKEN)。付费方案通过工具返回的 Stripe 结账链接付款,取消后当期不退款。每个酒店每天限 250 次请求(每分钟 5 次)。

安装

在 SourceWeft 中

  1. 打开 控制台中的 HotelRunner MCP by usefulapi,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.usefulapi%2Fhotelrunner/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "hotelrunner-by-usefulapi": {
      "type": "http",
      "url": "https://hotelrunner.usefulapi.io/mcp"
    }
  }
}

README

HotelRunner MCP by usefulapi

Read HotelRunner reservations, rooms, channels; update availability and prices; confirm or cancel.

Live endpoint: https://hotelrunner.usefulapi.io/mcp · Homepage: https://usefulapi.io/hotelrunner

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://hotelrunner.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http hotelrunner https://hotelrunner.usefulapi.io/mcp, then run /mcp to log in.
  • VS Code: Add to VS Code.
  • Cursor and other clients: add the URL as a remote MCP server:
json
{  "mcpServers": {    "hotelrunner": {      "url": "https://hotelrunner.usefulapi.io/mcp"    }  }}

Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your HotelRunner credentials.

Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/hotelrunner/

On first connect you'll enter the HR_ID and TOKEN of a HotelRunner app (in the HotelRunner property panel open My Property and create an app key; the page shows both).

Tools

ToolTypeWhat it does
hotelrunner_list_roomsreadList rooms and rates
hotelrunner_list_reservationsreadList reservations
hotelrunner_get_reservationreadGet reservation
hotelrunner_list_channelsreadList sales channels
hotelrunner_list_connected_channelsreadList connected channels
hotelrunner_get_transaction_detailsreadGet calendar update status
hotelrunner_update_room_calendarwriteUpdate room availability, prices and restrictions
hotelrunner_update_reservation_statewriteConfirm or cancel a reservation
hotelrunner_usage_statusmetaUsage status (free-tier meter)
hotelrunner_request_featuremetaRequest a missing feature
hotelrunner_upgrademetaUpgrade to Pro or Pro+
hotelrunner_cancel_subscriptionmetaCancel the Pro subscription

read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.

Pricing

PlanPriceLimit
Free$050 tool calls / month
Pro (per user)$9/mo or $90/yr (2 months free)Unlimited*

*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].

Pro covers this server only. Subscribe with hotelrunner_upgrade (it returns a Stripe Checkout link). Cancel any time with hotelrunner_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running hotelrunner_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT © usefulapi. Not affiliated with or endorsed by HotelRunner.

来源:servers/hotelrunner/README.md,提交 4046075

工具

8

hotelrunner_list_rooms

List rooms and rates

List the property's room types and rates with their inv_code and rate_code, capacity, pricing type, sales currency, connected channel codes and whether availability, restrictions and prices can be updated through the API. Use the inv_code with hotelrunner_update_room_calendar. Counts as one of the property's 250 requests per day (5 per minute). GET /api/v2/apps/rooms.

无需输入参数。

hotelrunner_list_reservations

List reservations

List reservations of the property (new, modified, canceled), newest data first as HotelRunner returns them, 1-50 per page. By default ALL reservations created in the window are returned (this tool sets undelivered=false, so reading does not depend on a PMS having fetched them). from_date is the creation date (HotelRunner keeps at most 30 days back; default 10 days); from_last_update_date finds reservations changed since a date. detail 'summary' (default) gives guest, dates, rooms, totals, payment state and contact; 'full' returns the whole vendor record including billing address, national id, daily prices and extras. Reply: items, count, page, pages, next_page. Counts as one of the property's 250 requests per day (5 per minute). GET /api/v2/apps/reservations.

输入参数pagebookeddetailmodifiedper_pagefrom_datefrom_last_update_date

hotelrunner_get_reservation

Get reservation

One reservation by its HotelRunner code (hr_number, e.g. R377873409) or the sales channel's own reservation code, with the full vendor record (rooms, daily prices, extras, payments, guest and billing details, next_states). If the reservation is older than HotelRunner's lookup window, pass from_date. Counts as one of the property's 250 requests per day (5 per minute). GET /api/v2/apps/reservations?reservation_number=.

输入参数from_datereservation_number必填

hotelrunner_list_channels

List sales channels

All sales channels HotelRunner supports (name and code, e.g. bookingcom, expedia, hrs, online). The code is what hotelrunner_update_room_calendar takes in channel_codes. Counts as one of the property's 250 requests per day (5 per minute). GET /api/v2/apps/infos/channels.

无需输入参数。

hotelrunner_list_connected_channels

List connected channels

The channels this property is connected to, each with counts of calendar update processes in progress, succeeded and failed. Counts as one of the property's 250 requests per day (5 per minute). GET /api/v2/apps/infos/connected_channels.

无需输入参数。

hotelrunner_get_transaction_details

Get calendar update status

Per-channel status of a calendar update: pass the transaction_id returned by hotelrunner_update_room_calendar. Shows succeeded / failed / in-progress counts and each channel's state and error message. Counts as one of the property's 250 requests per day (5 per minute). GET /api/v2/apps/infos/transaction_details.

输入参数transaction_id必填

hotelrunner_update_room_calendar

Update room availability, prices and restrictions

WRITE: change availability, price, minimum/maximum stay, stop-sale, closed-to-arrival (cta) or closed-to-departure (ctd) for ONE room type (inv_code) over a date range of at most 90 days, optionally only on some weekdays and only on some channels. Only the fields you pass are changed. This is LIVE inventory: HotelRunner pushes it to every connected channel (Booking.com, Expedia, your own booking engine, ...) and it changes what guests can book and pay. The price is the base-rate price in the property's sales currency; guest-based prices derive from it. Only rooms whose availability_update / restrictions_update / price_update flag is true (hotelrunner_list_rooms) accept that kind of change. HotelRunner answers asynchronously: the reply has a transaction_id; check per-channel results with hotelrunner_get_transaction_details. Send one change per call, not a full refresh. Counts as one of the property's 250 requests per day (5 per minute). PUT /api/v2/apps/rooms/daily.

输入参数ctactddayspriceend_date必填inv_code必填max_staymin_staystop_salestart_date必填availabilitychannel_codes

hotelrunner_update_reservation_state

Confirm or cancel a reservation

WRITE: move ONE reservation to the next state: event 'confirm' (hotelier accepts it) or 'cancel' (cancels it; cancel_reason is required: customer, no_room, no_show or invalid_price). Cancel is not reversible through this API and releases the room; HotelRunner may notify the guest or the sales channel (Booking.com, Expedia, ...), so only cancel when the user clearly asked for it, and pass confirm=true for a cancel. Only possible when the reservation's requires_response is true and the event is in its next_states (see hotelrunner_get_reservation); otherwise HotelRunner answers state_change_is_not_available. Counts as one of the property's 250 requests per day (5 per minute). PUT /api/v2/apps/reservations/fire.

输入参数event必填confirmhr_number必填cancel_reason

版本历史

14
  1. v1.15.4最新Nov 7, 2026
  2. v1.14.3Nov 5, 2026
  3. v1.14.2Nov 5, 2026
  4. v1.14.1Nov 4, 2026
  5. v1.14.0Nov 3, 2026
  6. v1.13.1Nov 3, 2026
  7. v1.12.0Nov 1, 2026
  8. v1.10.0Oct 31, 2026
  9. v1.9.0Oct 31, 2026
  10. v1.8.2Oct 30, 2026
  11. v1.8.0Oct 30, 2026
  12. v1.3.0Oct 26, 2026
  13. v1.0.3Oct 25, 2026
  14. v1.0.0Oct 25, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Usefulapi 集成