MCP_ Segment Aggregation
TL;DR →
  • A new
    GET /segments/{segment_id}/aggregated_metrics
    endpoint returns monthly performance metrics rolled up across every listing your segment currently matches
  • This is the same aggregated view you'd see reporting on that segment inside the Wheelhouse app — now available directly to your integration
  • Works across owned and shared/managed listings, and converts every monetary metric to whichever currency you request
  • Available two ways: call the endpoint directly from your integration, or just ask any MCP-connected AI assistant in plain English
---
📊 What's New
Segments are your saved, dynamic portfolio filters — bedroom count, market, tags, occupancy thresholds, whatever criteria matters to how you organize your portfolio.
The RM API and MCP already let you list your segments and pull the listings each one matches.
Now you can also pull the rolled-up performance for the whole segment, in one call or chat.
GET /segments/{segment_id}/aggregated_metrics
returns one row per month, covering:
  • Occupancy
    — both raw and adjusted for blocked nights
  • Revenue, ADR, RevPar
    — raw and adjusted
  • Asking rate
    , lead time, and length of stay
  • Booking counts
    and night-level detail (available, blocked, booked, bookable)
By default, the response covers every period Wheelhouse has data for — a segment built today can still return months of trailing history for the listings it matches. Pass one or more
dates
to restrict the response to specific months (send as
?dates=2026-05-01&dates=2026-06-01
, always the first of the month).
Launch_  Segment Aggregation
🧮 A Concrete Scenario
Say you manage a segment called "4BR+ Mountain Cabins" — 40 listings across three markets, grouped by a bedroom-count filter. Instead of pulling listing-level performance data for all 40 and aggregating it yourself, you can now call the new endpoint once and get:
  • January's blended occupancy and RevPar across all 40 listings
  • The trend across the last 12 months, to spot seasonality
  • A single ADR figure to compare against your other segments
That's the exact math Wheelhouse runs when you view that segment's performance chart in the app — now yours to pull into a dashboard, an owner report, or an internal alert without re-deriving it.
🤖 Or Just Ask
You don't have to write any code to use this. If you've connected an AI assistant to Wheelhouse via MCP, you can just ask for it in plain English.
Screenshot 2026-08-16 at 4
Under the hood, that's the same aggregated_metrics endpoint — the assistant calls it, then reasons over the monthly numbers to answer the actual question you asked, instead of you scanning a table yourself.
Ask it to compare two segments, flag which months are underperforming last year, or summarize a segment's trend for an owner update, and it'll pull the data and do the synthesis in one step.
In short, direct integrations get the raw monthly rows, and MCP-connected assistants turn those rows into an answer.
🗝️ Why This Matters
Segments are flexible by design — you can build one around almost any combination of listing attributes, tags, or performance thresholds. That flexibility is most useful when you can act on it programmatically, and aggregation was the missing piece.
Before this release, getting a segment-level number meant pulling every matched listing's data and rolling it up client-side — doable, but it meant re-implementing logic Wheelhouse already runs.
Now the aggregation lives on our side. Combine this with the existing
GET /segments
and
GET /segments/{segment_id}/listings
endpoints and you have the full loop: define the filter, see what it matches, and get the rolled-up numbers for it — all through the API.
And, with your MCP up-to-date, all you need to do is ask.
"Can you tell me how my Segment "New Owner, Occupancy Pacing Flag" is performing?"
🌍 Managed Listings & Currency: API Notes
Two parameters worth knowing about:
  • include_managed_listings
    (default
    true
    for RM API keys) — a segment's filter is evaluated against listings you own
    and
    listings shared with you to manage. Set this to
    false
    to scope the aggregation to owned listings only. Channel integration keys default to
    false
    , since those act on the one account they're connected to.
  • currency
    — since a segment itself has no inherent currency, monetary values default to the currency of the most common market among the segment's listings (falling back to USD). Pass an ISO-4217 code to convert to whatever currency your integration standardizes on.
🚀 Getting Started
The endpoint is live now under your existing RM API key — no new authentication or setup required.
  1. Call
    GET /segments
    to see the segments available for your account and grab a
    segment_id
  2. Call
    GET /segments/{segment_id}/aggregated_metrics
    to pull the rolled-up monthly performance
  3. Optionally narrow the response with
    dates
    , or adjust scope/currency with
    include_managed_listings
    and
    currency
If you're connecting through an MCP client, authenticate with OAuth through your client's sign-in flow — the same credentials you use in the Wheelhouse app.
🥳
Pro Tip!
Loop this endpoint across every segment returned by
GET /segments
to build a lightweight performance dashboard that stays current as your segment filters (and the listings they match) change — no manual re-aggregation, ever.
📽️ Watch a demo — [TODO: confirm if a video walkthrough exists for this release]