Implementation
gradeNot graded
gradeNot graded
page: Home
get_errand_briefingAnswer
Read-only: returns the active user errand briefing, goals, vendor URLs, and constraints.
View tool JSON
{
"name": "get_errand_briefing",
"kind": "answer",
"impl": "imperative",
"description": "Read-only: returns the active user errand briefing, goals, vendor URLs, and constraints.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}log_completed_stepAction
Append a completed errand step to the shared trip log visible on this page.
View tool JSON
{
"name": "log_completed_step",
"kind": "act",
"impl": "imperative",
"description": "Append a completed errand step to the shared trip log visible on this page.",
"inputSchema": {
"type": "object",
"properties": {
"vendor": {
"type": "string",
"description": "Vendor name (e.g. 'Artisan Roast & Brew')"
},
"stepTitle": {
"type": "string",
"description": "Summary of what was achieved (e.g. 'Ordered Medium Oat Latte')"
},
"details": {
"type": "string",
"description": "Details, items, timing, or confirmation message"
},
"cost": {
"type": "string",
"description": "Cost incurred or '$0.00' (e.g. '$5.25')"
},
"referenceId": {
"type": "string",
"description": "Order # or Booking # (e.g. 'AR-8921')"
}
},
"required": [
"vendor",
"stepTitle",
"details"
]
},
"page": "/"
}page: Cafe
check_menuAnswer
Read-only: returns today's artisan coffee menu, available sizes, milk options, and pricing.
View tool JSON
{
"name": "check_menu",
"kind": "answer",
"impl": "imperative",
"description": "Read-only: returns today's artisan coffee menu, available sizes, milk options, and pricing.",
"inputSchema": {
"type": "object",
"properties": {
"category": {
"type": "string",
"enum": [
"All",
"Espresso",
"Cold Brew",
"Tea",
"Bakery"
],
"description": "Optional filter by drink category"
}
}
},
"page": "/cafe/"
}order_coffeeSensitive Action
Place a coffee order for pickup. Requires explicit user confirmation before submitting payment.
View tool JSON
{
"name": "order_coffee",
"kind": "transact",
"impl": "imperative",
"description": "Place a coffee order for pickup. Requires explicit user confirmation before submitting payment.",
"inputSchema": {
"type": "object",
"properties": {
"drink": {
"type": "string",
"enum": [
"Artisan Latte",
"Cappuccino",
"Nitro Cold Brew",
"Flat White",
"Ceremonial Matcha Latte"
],
"description": "The coffee or tea drink to order"
},
"size": {
"type": "string",
"enum": [
"small",
"medium",
"large"
],
"description": "Beverage size"
},
"milk": {
"type": "string",
"enum": [
"whole",
"oat",
"almond",
"skim"
],
"description": "Milk selection (default: oat)"
},
"pickupTime": {
"type": "string",
"description": "Requested pickup time (e.g., '9:30 AM', 'asap')"
},
"customerName": {
"type": "string",
"description": "Customer full name"
},
"customerEmail": {
"type": "string",
"description": "Customer email address for pickup notifications"
},
"customerPhone": {
"type": "string",
"description": "Customer mobile phone number"
}
},
"required": [
"drink",
"size"
]
},
"page": "/cafe/"
}page: Salon
check_availabilityAnswer
Read-only: list open haircut, styling, and grooming slots for a given date.
View tool JSON
{
"name": "check_availability",
"kind": "answer",
"impl": "imperative",
"description": "Read-only: list open haircut, styling, and grooming slots for a given date.",
"inputSchema": {
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "Target appointment date (e.g., '2026-09-05' or 'this Saturday')"
},
"service": {
"type": "string",
"description": "Optional service name (e.g., 'Haircut & Styling')"
}
},
"required": [
"date"
]
},
"page": "/salon/"
}book_slotSensitive Action
Book a salon appointment. Requires explicit user confirmation.
View tool JSON
{
"name": "book_slot",
"kind": "transact",
"impl": "imperative",
"description": "Book a salon appointment. Requires explicit user confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "Appointment date (e.g., '2026-09-05')"
},
"time": {
"type": "string",
"description": "Time slot to book (e.g., '10:30 AM')"
},
"stylist": {
"type": "string",
"description": "Requested stylist name (e.g., 'Elena Vance' or 'Marcus Chen')"
},
"service": {
"type": "string",
"description": "Grooming service (default: 'Haircut & Styling')"
},
"clientName": {
"type": "string",
"description": "Client name for the appointment"
},
"clientEmail": {
"type": "string",
"description": "Client email address"
},
"clientPhone": {
"type": "string",
"description": "Client mobile phone number"
},
"clientGender": {
"type": "string",
"description": "Client gender preference"
}
},
"required": [
"date",
"time"
]
},
"page": "/salon/"
}page: Bookstore
search_catalogAnswer
Search the store's book catalog by topic, keyword, age range, or title. Returns matches with ISBN and stock.
View tool JSON
{
"name": "search_catalog",
"kind": "answer",
"impl": "imperative",
"description": "Search the store's book catalog by topic, keyword, age range, or title. Returns matches with ISBN and stock.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search keyword, age, recipient (e.g. 'nephew', 'robot', 'adventure', 'fantasy')"
},
"ageRange": {
"type": "string",
"description": "Optional age group filter (e.g., '8-12', 'Young Adult')"
}
},
"required": [
"query"
]
},
"page": "/bookstore/"
}reserve_bookSensitive Action
Reserve a physical copy for in-store pickup at the counter. Requires user confirmation.
View tool JSON
{
"name": "reserve_book",
"kind": "transact",
"impl": "imperative",
"description": "Reserve a physical copy for in-store pickup at the counter. Requires user confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"isbn": {
"type": "string",
"description": "ISBN of the book to reserve"
},
"customerName": {
"type": "string",
"description": "Customer name for the hold ticket"
},
"customerEmail": {
"type": "string",
"description": "Customer email address"
},
"customerPhone": {
"type": "string",
"description": "Customer phone number"
}
},
"required": [
"isbn"
]
},
"page": "/bookstore/"
}