Waitlist tools
MCP tools for Waitlist: waitlist_demand_list, waitlist_entries_list.
waitlist_demand_list: List the entity's demand by jurisdictionwaitlist_entries_list: List waitlist entries
waitlist_demand_list
List the entity's demand by jurisdiction. Operation waitlist.demand.list · Legal entity level · permission waitlist:read · risk tier read · since M7
Where the legal entity's brands can't sell to consumers yet, and what it would take: one row per customer-location jurisdiction with waitlist entries or blocked checkouts, all brands combined, in the mode of the request (spec §23).
Each row has the waitlist by stage (waiting, pending, notified, left) and the waiting entries'
estimatedMonthlyValue per currency (recurring prices per month; one-time prices and credit packs counted
once, as a first month's purchase); the checkouts paused there in the window (blockedCheckouts, by reason);
and the regimes that apply there: the entity's registration state, the prerequisites with their lead times
and status, leadTimeDays (the longest lead time of what isn't done) and the compliance effort (a fiscal
representative, a local agent, the filing frequency). brands splits the counts per brand; they add up to the
row. Counts and sums only: no customer is named.
Sort by waitlist, monthly_value (EUR equivalent), blocked_checkouts, lead_time or jurisdiction;
brand limits every count to one brand of the entity. Callers who can't read registrations get the knowledge
base's side only (registrationsVisible: false).
Annotations: readOnlyHint: true · destructiveHint: false · idempotentHint: true · openWorldHint: false
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
months | integer | no | The window for blocked checkouts: this calendar month and the ones before it (1–36, default 12). (1–36) (default 12) |
sort | one of jurisdiction, waitlist, monthly_value, blocked_checkouts, lead_time | no | waitlist (waiting entries), monthly_value (EUR equivalent), blocked_checkouts, lead_time or jurisdiction. (default "waitlist") |
order | one of asc, desc | no | (default "desc") |
brand | ID (brd_…) | no | Only this brand of the entity (brd_…); all brands when absent. |
entity_id | ID (ent_…) | no | The legal entity to act on (ent_…), inside your API key's reach. Needed with an organization key; entity and brand keys act on their own entity. |
- Legal entity: pass
entity_idwith an organization key; entity and brand keys act on their own entity. - Read-only: changes nothing;
idempotency_keyis ignored.
Errors
validation_failed: The window, the sort or the brand is malformed.scope_required: The request names no legal entity (an org key withoutOwnrecord-Entity).resource_not_found: Thebrandfilter isn't a brand of this entity.permission_denied: You can't read this entity's waitlist (brand-scoped members never can: the page combines brands).
Example
Live demand over 12 months
Arguments:
{
"entity_id": "ent_01jbx4m3v8e9t0s6k2c5n7q1wy"
}
Result output:
{
"object": "entity_demand",
"entityId": "ent_01m4tx5nj8emwbyf7y9vcf47x2",
"livemode": true,
"window": {
"months": 12,
"from": "2025-11-01",
"to": "2026-10-20"
},
"sort": "waitlist",
"order": "desc",
"brand": null,
"brands": [
{
"id": "brd_01m4tx5nj8emwbyf7y9vcf47x4",
"name": "Genno",
"slug": "genno"
},
{
"id": "brd_01m4tx5nj8emwbyf7y9vcf47x5",
"name": "Genno Pro",
"slug": "genno-pro"
}
],
"registrationsVisible": true,
"fxRateDate": "2026-10-16",
"data": [
{
"jurisdiction": "GB",
"name": "United Kingdom",
"territoryOf": null,
"waitlist": {
"waiting": 12,
"pending": 2,
"notified": 0,
"left": 0,
"estimatedMonthlyValue": {
"total": [
{
"amount": "485000000",
"currency": "EUR"
}
],
"recurring": [
{
"amount": "365000000",
"currency": "EUR"
}
],
"oneTime": [
{
"amount": "120000000",
"currency": "EUR"
}
]
}
},
"blockedCheckouts": {
"total": 37,
"registrationRequired": 37,
"jurisdictionBlocked": 0,
"other": 0
},
"monthlyValueEur": {
"amount": "485000000",
"currency": "EUR"
},
"leadTimeDays": 21,
"regimes": [
{
"regimeId": "GB_VAT_NETP",
"name": "UK VAT for non-established sellers",
"registration": {
"state": "blocked_b2c",
"armed": false,
"stateReason": "zero_threshold"
},
"prerequisites": [
{
"code": "gateway_account",
"description": "Open a Government Gateway account",
"leadTimeDays": 10,
"status": "done"
},
{
"code": "uk_agent",
"description": "Appoint a UK tax agent",
"leadTimeDays": 21,
"status": "todo"
}
],
"leadTimeDays": 21,
"typicalProcessingDays": 30,
"effort": {
"fiscalRepresentative": false,
"localAgent": false,
"filingFrequency": "quarterly"
}
}
],
"brands": [
{
"brandId": "brd_01m4tx5nj8emwbyf7y9vcf47x4",
"waitlist": {
"waiting": 9,
"pending": 1,
"notified": 0,
"left": 0,
"estimatedMonthlyValue": {
"total": [
{
"amount": "410000000",
"currency": "EUR"
}
],
"recurring": [
{
"amount": "290000000",
"currency": "EUR"
}
],
"oneTime": [
{
"amount": "120000000",
"currency": "EUR"
}
]
}
},
"blockedCheckouts": {
"total": 31,
"registrationRequired": 31,
"jurisdictionBlocked": 0,
"other": 0
}
},
{
"brandId": "brd_01m4tx5nj8emwbyf7y9vcf47x5",
"waitlist": {
"waiting": 3,
"pending": 1,
"notified": 0,
"left": 0,
"estimatedMonthlyValue": {
"total": [
{
"amount": "75000000",
"currency": "EUR"
}
],
"recurring": [
{
"amount": "75000000",
"currency": "EUR"
}
],
"oneTime": []
}
},
"blockedCheckouts": {
"total": 6,
"registrationRequired": 6,
"jurisdictionBlocked": 0,
"other": 0
}
}
]
}
]
}
waitlist_entries_list
List waitlist entries. Operation waitlist.entries.list · Brand level · permission waitlist:read · risk tier read · since M4
Lists the brand's waitlist in the mode of the request, newest first: customers who asked to be told when the
brand can sell in their country (spec §23), with what they wanted to buy and its value. status: pending
entries haven't confirmed their email yet. Filter by country or status; page with limit and
starting_after. Emails are customer data: show them only to people who need them.
Annotations: readOnlyHint: true · destructiveHint: false · idempotentHint: true · openWorldHint: false
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
limit | integer | no | (1–100) |
starting_after | ID (wl_…) | no | – |
country | string | no | Only entries for this country. |
status | one of pending, confirmed | no | Only pending or only confirmed entries. |
entity_id | ID (ent_…) | no | Optional: the brand's legal entity (ent_…); brand_id alone is enough. |
brand_id | ID (brd_…) | no | The brand to act on (brd_…), inside your API key's reach. Needed with an organization or entity key; a brand key acts on its own brand. |
- Brand: pass
brand_idwith an organization or entity key; a brand key acts on its own brand. - Read-only: changes nothing;
idempotency_keyis ignored.
Errors
validation_failed: A filter is malformed (paramnames it).
Example
Confirmed entries for the UK
Arguments:
{
"country": "GB",
"status": "confirmed",
"brand_id": "brd_01jbx4m3v8e9t0s6k2c5n7q1wz"
}
Result output:
{
"data": [
{
"id": "wl_01m4tx5nj8emwbyf7y9vcf48ah",
"object": "waitlist_entry",
"livemode": false,
"entityId": "ent_01m4tx5nj8emwbyf7y9vcf47x2",
"brandId": "brd_01m4tx5nj8emwbyf7y9vcf47x4",
"email": "oliver@example.com",
"country": "GB",
"subdivision": null,
"customerType": "b2c",
"productIds": ["prod_01m4tx5nj8emwbyf7y9vcf48ae"],
"priceIds": ["price_01m4tx5nj8emwbyf7y9vcf48ad"],
"estimatedValue": {
"amount": "100000000",
"currency": "EUR"
},
"source": "checkout",
"status": "confirmed",
"consent": {
"text": "Notify me when Genno can sell in United Kingdom",
"textVersion": "2026-10-14",
"at": "2026-10-14T10:00:00.000Z"
},
"confirmedAt": "2026-10-14T10:12:00.000Z",
"checkoutSessionId": "cs_01m4tx5nj8emwbyf7y9vcf48aa",
"regimeId": null,
"blockedReason": "registration_required",
"notifiedAt": null,
"unsubscribedAt": null,
"createdAt": "2026-10-14T10:00:00.000Z"
}
],
"has_more": false,
"next_cursor": null
}