# Rate Plans

MCP tools for reading and bulk-updating rate plans on channel listings
(e.g. Booking.com Standard / Non-refundable / Weekly / Monthly).

## Available Tools

- [list_channel_rate_plans](/mcp/tools/distribution/rate-plans/list_channel_rate_plans/) - List rate plans for a single channel listing
- [update_channel_rate_plans](/mcp/tools/distribution/rate-plans/update_channel_rate_plans/) - Bulk-update rate plans across one or more channel listings

## Overview

Rate plans hang off a channel listing. Each plan carries:

- **`percentage`** - discount applied relative to the standard rate
  (e.g. 15 = 15% off, used for Non-refundable / Weekly / Monthly plans).
- **`cancellationPolicyId`** - the cancelation policy attached to this rate plan (Strict, Moderate, Flexible, etc.).
- **`minimumBookingWindow` / `maximumBookingWindow`** - booking window bounds, paired with a unit
  (`hour`, `day`, `month`, `year`).
- **`minStay` / `maxStay`** - length-of-stay bounds in nights.

## Typical bulk update flow

1. `search_unit_types` to find the unit types in scope.
2. `get_unit_type_listings` to get the channel listings on each unit type.
3. `list_channel_rate_plans` for each channel listing of interest to read current settings.
4. Build an array of `{ id, ...changes }` items and call `update_channel_rate_plans` once.

The mutation accepts updates spanning multiple unit types and channels in a single call, so portfolio-wide changes
(e.g. switching from term-time to summer settings)
collapse to one round trip.
