Tool tree
gradeNot graded
page: Home
list_originsAnswer
List the exact HTTPS product and service origin scopes this page is allowed to read and show their data mode and configured adapters in the shared interface.
View tool JSON
{
"name": "list_origins",
"kind": "answer",
"impl": "imperative",
"description": "List the exact HTTPS product and service origin scopes this page is allowed to read and show their data mode and configured adapters in the shared interface.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}select_originAction
Select one allowlisted origin for later tools and update the visible origin badge. Selection is page-local and does not create a server session.
View tool JSON
{
"name": "select_origin",
"kind": "act",
"impl": "imperative",
"description": "Select one allowlisted origin for later tools and update the visible origin badge. Selection is page-local and does not create a server session.",
"inputSchema": {
"type": "object",
"properties": {
"originId": {
"type": "string",
"description": "Stable origin id returned by list_origins."
}
},
"required": [
"originId"
]
},
"page": "/"
}search_productsAnswer
Search normalized Offers on the selected allowlisted origin and show matching products or services in the shared page interface.
View tool JSON
{
"name": "search_products",
"kind": "answer",
"impl": "imperative",
"description": "Search normalized Offers on the selected allowlisted origin and show matching products or services in the shared page interface.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Words to match, such as electric guitar, surf lesson, archery lesson, or massage."
},
"maxResults": {
"type": "integer",
"minimum": 1,
"maximum": 8,
"description": "Maximum number of results to return."
}
},
"required": [
"query"
]
},
"page": "/"
}find_best_optionsAnswer
Rank marketplace offers with session-only taste and priorities. If strong options depend on different tradeoffs, ask one refinement question before presenting the final ranking.
View tool JSON
{
"name": "find_best_options",
"kind": "answer",
"impl": "imperative",
"description": "Rank marketplace offers with session-only taste and priorities. If strong options depend on different tradeoffs, ask one refinement question before presenting the final ranking.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "What the shopper wants, such as electric guitar."
},
"maxDeliveredPrice": {
"type": "number",
"minimum": 25,
"maximum": 100000,
"description": "Optional budget including listed shipping."
},
"maxResults": {
"type": "integer",
"minimum": 1,
"maximum": 8,
"description": "Maximum ranked options to return."
},
"shoppingFor": {
"type": "string",
"enum": [
"self",
"gift"
],
"description": "Whether this decision is for the shopper or a gift recipient."
},
"mode": {
"type": "string",
"enum": [
"decide",
"explore"
],
"description": "Choose a narrow decision or a broader set worth exploring."
},
"priorities": {
"type": "array",
"maxItems": 3,
"uniqueItems": true,
"items": {
"type": "string",
"enum": [
"match",
"taste",
"condition",
"price",
"returns",
"delivery"
]
},
"description": "Up to three factors to emphasize in the visible rubric."
},
"tasteContext": {
"type": "string",
"maxLength": 120,
"description": "Optional taste or recipient context matched against source facts."
},
"mustHave": {
"type": "string",
"maxLength": 80,
"description": "Optional source-backed words every result must include."
},
"avoid": {
"type": "string",
"maxLength": 80,
"description": "Optional source-backed words that exclude a result."
},
"refinementChoice": {
"type": "string",
"enum": [
"match",
"taste",
"condition",
"price",
"returns",
"delivery"
],
"description": "Answer to a returned refinement checkpoint. Omit on the first pass."
}
},
"required": [
"query"
]
},
"page": "/"
}get_productAnswer
Get normalized facts for one product or service handle on the selected origin, then show it in the shared interface.
View tool JSON
{
"name": "get_product",
"kind": "answer",
"impl": "imperative",
"description": "Get normalized facts for one product or service handle on the selected origin, then show it in the shared interface.",
"inputSchema": {
"type": "object",
"properties": {
"handle": {
"type": "string",
"description": "Stable lowercase Offer handle returned by search_products."
}
},
"required": [
"handle"
]
},
"page": "/"
}compare_productsAction
Compare normalized facts for two to four product or service handles on one selected origin and display a side-by-side view for the human.
View tool JSON
{
"name": "compare_products",
"kind": "act",
"impl": "imperative",
"description": "Compare normalized facts for two to four product or service handles on one selected origin and display a side-by-side view for the human.",
"inputSchema": {
"type": "object",
"properties": {
"handles": {
"type": "array",
"minItems": 2,
"maxItems": 4,
"items": {
"type": "string"
},
"description": "Two to four unique handles from search results."
}
},
"required": [
"handles"
]
},
"page": "/"
}interpolate_pageAction
Read one allowlisted product or service path, remove page chrome, and show compact Markdown plus the normalized Offer and canonical origin URL.
View tool JSON
{
"name": "interpolate_page",
"kind": "act",
"impl": "imperative",
"description": "Read one allowlisted product or service path, remove page chrome, and show compact Markdown plus the normalized Offer and canonical origin URL.",
"inputSchema": {
"type": "object",
"properties": {
"path": {
"type": "string",
"description": "Allowlisted product or service path, such as /products/sunburst-s-style-electric or /services/north-shore-surf-foundations."
}
},
"required": [
"path"
]
},
"page": "/"
}create_catalog_briefAction
Create compact Markdown grounded in one to four selected offers from the selected origin and show the source selection to the human.
View tool JSON
{
"name": "create_catalog_brief",
"kind": "act",
"impl": "imperative",
"description": "Create compact Markdown grounded in one to four selected offers from the selected origin and show the source selection to the human.",
"inputSchema": {
"type": "object",
"properties": {
"goal": {
"type": "string",
"description": "The shopper or catalog research goal to ground the brief."
},
"handles": {
"type": "array",
"minItems": 1,
"maxItems": 4,
"items": {
"type": "string"
},
"description": "One to four unique Offer handles."
}
},
"required": [
"goal",
"handles"
]
},
"page": "/"
}create_activity_itineraryAction
Build a constraint-aware, planning-only itinerary from one to four service Offers. It checks destination, date, published windows, party size, budget, pace, day hours, evidence, and transition buffers. This never reserves, contacts, or pays a provider.
View tool JSON
{
"name": "create_activity_itinerary",
"kind": "act",
"impl": "imperative",
"description": "Build a constraint-aware, planning-only itinerary from one to four service Offers. It checks destination, date, published windows, party size, budget, pace, day hours, evidence, and transition buffers. This never reserves, contacts, or pays a provider.",
"inputSchema": {
"type": "object",
"properties": {
"goal": {
"type": "string",
"maxLength": 160,
"description": "The activity or trip-planning goal."
},
"handles": {
"type": "array",
"minItems": 1,
"maxItems": 4,
"uniqueItems": true,
"items": {
"type": "string"
},
"description": "One to four itinerary-eligible service handles."
},
"date": {
"type": "string",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
"description": "Optional planning date in YYYY-MM-DD format."
},
"days": {
"type": "integer",
"minimum": 1,
"maximum": 3,
"description": "Number of consecutive planning days, from one to three."
},
"partySize": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"description": "Number of people for party-size and per-person price checks."
},
"budget": {
"type": "number",
"minimum": 25,
"maximum": 100000,
"description": "Optional total activity budget in the selected origin currency."
},
"pace": {
"type": "string",
"enum": [
"relaxed",
"balanced",
"full"
],
"description": "Daily activity density and transition-buffer policy."
},
"earliestStart": {
"type": "string",
"pattern": "^[0-9]{2}:[0-9]{2}$",
"description": "Earliest proposed local start in 24-hour HH:MM format."
},
"latestEnd": {
"type": "string",
"pattern": "^[0-9]{2}:[0-9]{2}$",
"description": "Latest proposed local end in 24-hour HH:MM format."
}
},
"required": [
"goal",
"handles"
]
},
"page": "/"
}propose_add_to_cartAction
Stage one fresh, live, eligible listing as a visible purchase review. Fallback or stale offers are rejected. Nothing changes until the human clicks Approve for handoff. This never checks out, places an order, or charges.
View tool JSON
{
"name": "propose_add_to_cart",
"kind": "act",
"impl": "imperative",
"description": "Stage one fresh, live, eligible listing as a visible purchase review. Fallback or stale offers are rejected. Nothing changes until the human clicks Approve for handoff. This never checks out, places an order, or charges.",
"inputSchema": {
"type": "object",
"properties": {
"handle": {
"type": "string",
"description": "Product handle from search_products or get_product."
},
"variantTitle": {
"type": "string",
"description": "Optional variant title returned by get_product, such as As listed."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 4,
"description": "Quantity to propose, from 1 to 4."
}
},
"required": [
"handle"
]
},
"page": "/"
}page: Decide
plan_decisionAction
Plan a general shopping, gift, date, vacation, or project staffing decision through Ribband's unified typed decision orchestrator. The tool updates the visible page, uses request-only context, and cannot buy, book, contact providers, pay, or save inferred facts.
View tool JSON
{
"name": "plan_decision",
"kind": "act",
"impl": "imperative",
"description": "Plan a general shopping, gift, date, vacation, or project staffing decision through Ribband's unified typed decision orchestrator. The tool updates the visible page, uses request-only context, and cannot buy, book, contact providers, pay, or save inferred facts.",
"inputSchema": {
"type": "object",
"properties": {
"vertical": {
"type": "string",
"enum": [
"shopping",
"gift",
"date",
"vacation",
"staffing"
]
},
"subjectId": {
"type": "string",
"enum": [
"profile-recipient",
"profile-self"
]
},
"intent": {
"type": "string",
"enum": [
"gift",
"self-treat"
]
},
"occasion": {
"type": "string",
"maxLength": 80
},
"occasionDeadline": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"existingItems": {
"type": "array",
"maxItems": 6,
"uniqueItems": true,
"items": {
"type": "string",
"maxLength": 80
}
},
"goal": {
"type": "string",
"maxLength": 180
},
"maximumBudget": {
"type": "number",
"minimum": 25,
"maximum": 100000
},
"query": {
"type": "string",
"maxLength": 80
},
"primaryInterests": {
"type": "array",
"maxItems": 6,
"uniqueItems": true,
"items": {
"type": "string",
"maxLength": 60
}
},
"secondaryInterests": {
"type": "array",
"maxItems": 6,
"uniqueItems": true,
"items": {
"type": "string",
"maxLength": 60
}
},
"memorySignals": {
"type": "array",
"maxItems": 6,
"uniqueItems": true,
"items": {
"type": "string",
"maxLength": 60
}
},
"previousActivities": {
"type": "array",
"maxItems": 4,
"uniqueItems": true,
"items": {
"type": "string",
"maxLength": 60
}
},
"avoid": {
"type": "array",
"maxItems": 4,
"uniqueItems": true,
"items": {
"type": "string",
"maxLength": 60
}
},
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"mood": {
"type": "string",
"enum": [
"calm and connected",
"playful and active",
"creative and curious"
]
},
"arrivalDate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"departureDate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"travelers": {
"type": "integer",
"minimum": 1,
"maximum": 8
},
"visitedPlaces": {
"type": "array",
"maxItems": 6,
"uniqueItems": true,
"items": {
"type": "string",
"maxLength": 60
}
},
"lodgingStyle": {
"type": "string",
"maxLength": 120
},
"diningPreference": {
"type": "string",
"maxLength": 120
},
"pace": {
"type": "string",
"enum": [
"one anchor activity per day",
"balanced",
"full days"
]
},
"explorationMode": {
"type": "string",
"enum": [
"balanced",
"comfort-seeking",
"novelty-seeking"
]
},
"roles": {
"type": "array",
"maxItems": 6,
"uniqueItems": true,
"items": {
"type": "string",
"maxLength": 60
}
},
"location": {
"type": "string",
"maxLength": 120
},
"hours": {
"type": "integer",
"minimum": 1,
"maximum": 16
},
"credentials": {
"type": "array",
"maxItems": 6,
"uniqueItems": true,
"items": {
"type": "string",
"maxLength": 60
}
},
"equipment": {
"type": "array",
"maxItems": 6,
"uniqueItems": true,
"items": {
"type": "string",
"maxLength": 60
}
}
},
"required": [
"vertical",
"goal",
"maximumBudget"
]
},
"page": "/decide"
}