MCP Module Reference

Behaviours (consumption rule sets) module — JetSetGo MCP reference

The behaviours module defines consumption rule sets — the configuration that determines, for every resource bound to a rule set, which passenger or vehicle fare items are bookable, how much capacity each fare category consumes, whether boarding is capacity-controlled or ticket-controlled, and what ticket conditions (wallet/pass rules) apply. Every resource points at exactly one rule set by id, making this the load-bearing configuration choice in the booking pipeline.

What the operator uses it for

An operator authors a rule set once and binds many resources to it. Within one rule set they configure: which passenger/vehicle types may be booked (optionally forcing one per reservation), which specific fare categories apply, per-category consumption rules, the boarding method, which inventory pools the availability display highlights, booking cutoff hours before departure, and a deposit percentage. Ticket conditions attach wallet/pass requirements to individual fare categories.

The specify_sub_types switch controls granularity: when enabled, each fare category needs its own consumption rule; otherwise type-level eligibility alone governs.

Where it sits

Upstream reference data: fare items and their categories (pattypes), inventory pools (tracks), and limit types. Downstream: every resource references exactly one rule set via its behaviour_id; scheduling reads the boarding method and accommodation flags; and the booking/cancellation flow resolves rule set → consumption rule at allocate/release time to decide how much capacity each unit draws from an inventory pool. Because resources depend on it, changing a rule set affects all referencing resources.

Key concepts

  • Consumption rule set ("behaviour") — the rulebook bound to each resource.
  • Fare item eligibility — which passenger or vehicle types are bookable under this rule set, with an optional force_one_per_reservation restriction.
  • Fare category ("PAT sub-type") — the atomic bookable kind (Adult, Child, Car, …); consumption is configured per category.
  • Consumption rule — how much capacity a fare category uses: either drawn against an inventory pool or checked against a limit type — exactly one of the two, never both.
  • Boarding method'ticket' (a redeemable pass rather than a capacity slot) versus 'sequence' (capacity-controlled boarding following a named boarding sequence).
  • Ticket condition — wallet/pass rules attached to a fare category within the rule set.
  • Highlighted pools (highlight_track) — JSON array of inventory-pool ids the availability display emphasises.
  • Booking cutoff / deposit — hours before departure after which booking closes, and the deposit as a decimal fraction (0.3 = 30%).

Tools

All writes are two-phase (preview returns a previewToken; confirm executes). Batch add tools insert multiple rows in one guarded call and return created ids.

Tool Class Purpose
behaviours_list_behaviours Read List rule sets with optional status filter (includes boarding-sequence name where tracked).
behaviours_get_behaviour Read Fetch one rule set by id.
behaviours_list_behaviour_pat_types Read List the fare-item types made bookable by a rule set.
behaviours_list_behaviour_pat_sub_types Read List the fare categories included in a rule set.
behaviours_list_consumption_rules Read List per-category consumption rules (pool XOR limit, units).
behaviours_list_ticket_conditions Read List ticket conditions attached to categories in a rule set.
behaviours_save_behaviour Guarded write Create (requires name, boarding method, cutoff hours) or update a rule set.
behaviours_deactivate_behaviour Guarded write (destructive) Soft-delete via status=inactive — no hard delete exists.
behaviours_add_pat_types Guarded write Batch-add fare-item types (pat_type_id, force_one_per_reservation).
behaviours_remove_pat_type Guarded write (destructive) Remove a fare-item-type row.
behaviours_add_pat_sub_types Guarded write Batch-add fare categories.
behaviours_remove_pat_sub_type Guarded write (destructive) Remove a fare-category row.
behaviours_add_consumption_rules Guarded write Batch-add consumption rules (category + pool XOR limit + units > 0 + modifiable flag).
behaviours_remove_consumption_rule Guarded write (destructive) Remove a consumption rule.
behaviours_add_ticket_conditions Guarded write Batch-add ticket conditions (category → ticket-condition link).
behaviours_remove_ticket_condition Guarded write (destructive) Remove a ticket-condition link.

Rules worth knowing

  • Create requirements are strict. A new rule set requires name, boarding_method, and booking_cutoff_hours. When boarding_method='sequence', a boarding_sequence_id must also be supplied — the tool rejects the combination without it.
  • Soft delete only. Deactivation sets status=inactive; by design a deactivated rule set makes its referencing resources non-bookable, so deactivation has product-wide consequences.
  • Rule-set changes propagate across related records only in effect, not retroactively. Existing bookings keep the consumption behaviour they were created under; new bookings follow the edited rules.
  • XOR constraint on consumption. Each consumption rule specifies exactly one of an inventory pool id or a limit type id, never both; consumption_units must be greater than zero.
  • highlight_track is stored as a JSON array of inventory-pool ids and supplied to the tool as a plain array of numbers.
  • Deposit percentages are decimal fractions — pass 0.3 for 30%.
  • Child rows are managed as batches. The four child collections (eligible types, eligible categories, consumption rules, ticket conditions) have no independent update tool: remove the row and re-add, or add additional rows in bulk.
  • Accommodation flags (accommodation, parking, accommodated_cruise, hotel_accommodation) are boolean switches recorded on the rule set and read downstream by scheduling; their runtime effects are designed capability documented here, not separately verified in this reference.

See it on your operation

A 30-minute call. We show you the platform with your routes, your fleet, your numbers. No slideshow, no high-pressure sales.

Book a Demo