Tool tree
gradeNot graded
create_party_planAction
Create and open a fresh anonymous plan using live theme, recipe, wine, zero-proof, and music providers with reviewed fallbacks and explicit provider receipts.
View tool JSON
{
"name": "create_party_plan",
"kind": "act",
"impl": "imperative",
"description": "Create and open a fresh anonymous plan using live theme, recipe, wine, zero-proof, and music providers with reviewed fallbacks and explicit provider receipts.",
"inputSchema": {
"type": "object",
"properties": {
"title": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"inspiration": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"BOOK"
]
},
"title": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"author": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"required": [
"type",
"title",
"author"
],
"additionalProperties": false
},
"guestCount": {
"type": "integer",
"minimum": 1,
"maximum": 30
},
"budget": {
"type": "object",
"properties": {
"amount": {
"type": "number",
"minimum": 1,
"maximum": 10000
},
"currency": {
"type": "string",
"enum": [
"USD"
]
}
},
"required": [
"amount",
"currency"
],
"additionalProperties": false
},
"dietaryRequirements": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 60
},
"maxItems": 20
},
"tone": {
"type": "string",
"enum": [
"HOPEFUL",
"BALANCED",
"SURVIVALIST"
]
},
"eventDate": {
"type": "string",
"description": "Optional ISO date in YYYY-MM-DD format."
},
"requestedThemes": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 40
},
"maxItems": 8
},
"includeWine": {
"type": "boolean"
},
"includeZeroProof": {
"type": "boolean"
},
"musicStorefront": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"default": "us"
}
},
"required": [
"inspiration",
"guestCount",
"budget",
"dietaryRequirements",
"tone",
"includeWine",
"includeZeroProof"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}get_party_planAnswer
Read the current Supper Club AI party plan, its version, completion, warnings, and selected sections without changing anything.
View tool JSON
{
"name": "get_party_plan",
"kind": "answer",
"impl": "imperative",
"description": "Read the current Supper Club AI party plan, its version, completion, warnings, and selected sections without changing anything.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string",
"description": "The party plan identifier."
},
"includeSections": {
"type": "array",
"items": {
"type": "string",
"enum": [
"CONFIGURATION",
"THEME",
"MENU",
"PAIRINGS",
"SOUNDTRACK",
"SHOPPING_LIST",
"FINALIZATION",
"EXPORTS"
]
}
}
},
"required": [
"planId"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}configure_partyAction
Update the open dinner’s title, inspiration, guest count, budget, dietary requirements, tone, and event date. Use the current plan version.
View tool JSON
{
"name": "configure_party",
"kind": "act",
"impl": "imperative",
"description": "Update the open dinner’s title, inspiration, guest count, budget, dietary requirements, tone, and event date. Use the current plan version.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "number"
},
"title": {
"type": "string",
"minLength": 1
},
"inspiration": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"BOOK"
]
},
"title": {
"type": "string"
},
"author": {
"type": "string"
}
},
"required": [
"type",
"title",
"author"
],
"additionalProperties": false
},
"guestCount": {
"type": "integer",
"minimum": 1,
"maximum": 50
},
"budget": {
"type": "object",
"properties": {
"amount": {
"type": "number",
"exclusiveMinimum": 0
},
"currency": {
"type": "string",
"enum": [
"USD"
]
}
},
"required": [
"amount",
"currency"
],
"additionalProperties": false
},
"dietaryRequirements": {
"type": "array",
"items": {
"type": "string"
}
},
"tone": {
"type": "string",
"enum": [
"HOPEFUL",
"BALANCED",
"SURVIVALIST"
]
},
"eventDate": {
"type": "string"
}
},
"required": [
"planId",
"expectedPlanVersion",
"title",
"inspiration",
"guestCount",
"budget",
"dietaryRequirements",
"tone"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}research_themeAction
Build a sourced thematic foundation using live bibliographic metadata plus reviewed original interpretation; never returns copyrighted book passages.
View tool JSON
{
"name": "research_theme",
"kind": "act",
"impl": "imperative",
"description": "Build a sourced thematic foundation using live bibliographic metadata plus reviewed original interpretation; never returns copyrighted book passages.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "number"
},
"requestedThemes": {
"type": "array",
"items": {
"type": "string"
}
},
"tone": {
"type": "string",
"enum": [
"HOPEFUL",
"BALANCED",
"SURVIVALIST"
]
},
"maxSources": {
"type": "integer",
"minimum": 1,
"maximum": 8,
"default": 4
}
},
"required": [
"planId",
"expectedPlanVersion",
"tone"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}curate_menuAction
Select a complete three-course menu through the normalized recipe gateway, using Spoonacular first, Perplexity Agent web discovery as the live fallback, and reviewed local recipes as the final fallback.
View tool JSON
{
"name": "curate_menu",
"kind": "act",
"impl": "imperative",
"description": "Select a complete three-course menu through the normalized recipe gateway, using Spoonacular first, Perplexity Agent web discovery as the live fallback, and reviewed local recipes as the final fallback.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "number"
},
"courseCount": {
"type": "integer",
"enum": [
3
]
},
"servings": {
"type": "integer",
"minimum": 1,
"maximum": 50
},
"dietaryRequirements": {
"type": "array",
"items": {
"type": "string"
}
},
"menuBudgetCap": {
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"currency": {
"type": "string",
"enum": [
"USD"
]
}
},
"required": [
"amount",
"currency"
]
},
"preparationMinutesMax": {
"type": "integer",
"minimum": 30
},
"preserveCourseIds": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"planId",
"expectedPlanVersion",
"courseCount",
"servings",
"dietaryRequirements",
"menuBudgetCap"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}curate_pairingsAction
Pair selected courses with live or catalog wine and sourced zero-proof recipes. It never claims current retail price or availability.
View tool JSON
{
"name": "curate_pairings",
"kind": "act",
"impl": "imperative",
"description": "Pair selected courses with live or catalog wine and sourced zero-proof recipes. It never claims current retail price or availability.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "number"
},
"courseIds": {
"type": "array",
"items": {
"type": "string"
}
},
"includeWine": {
"type": "boolean"
},
"includeZeroProof": {
"type": "boolean"
},
"wineBudgetCap": {
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"currency": {
"type": "string",
"enum": [
"USD"
]
}
}
}
},
"required": [
"planId",
"expectedPlanVersion",
"includeWine",
"includeZeroProof"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}curate_soundtrackAction
Create a draft Apple Music-oriented soundtrack and energy arc for the dinner. This does not save anything to the host’s music library.
View tool JSON
{
"name": "curate_soundtrack",
"kind": "act",
"impl": "imperative",
"description": "Create a draft Apple Music-oriented soundtrack and energy arc for the dinner. This does not save anything to the host’s music library.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "number"
},
"durationMinutes": {
"type": "integer",
"minimum": 30,
"maximum": 480
},
"energyArc": {
"type": "string",
"enum": [
"ARRIVAL_TO_ASCENT",
"STEADY_GLOW",
"CUSTOM"
]
},
"customEnergyNotes": {
"type": "string"
},
"storefront": {
"type": "string"
}
},
"required": [
"planId",
"expectedPlanVersion",
"durationMinutes",
"energyArc",
"storefront"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}enrich_soundtrack_contextAction
Use Perplexity Agent API web research to attach concise, source-backed artist, album, cultural, and hosting context to selected tracks in the current soundtrack. This does not save or publish a playlist.
View tool JSON
{
"name": "enrich_soundtrack_context",
"kind": "act",
"impl": "imperative",
"description": "Use Perplexity Agent API web research to attach concise, source-backed artist, album, cultural, and hosting context to selected tracks in the current soundtrack. This does not save or publish a playlist.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "number"
},
"trackIds": {
"type": "array",
"items": {
"type": "string"
},
"minItems": 1,
"maxItems": 6,
"description": "Optional soundtrack track IDs to research. Omit to enrich the full soundtrack."
}
},
"required": [
"planId",
"expectedPlanVersion"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}find_grocery_storesAnswer
Find nearby Kroger-family stores by ZIP code so the host can choose which location's prices to use.
View tool JSON
{
"name": "find_grocery_stores",
"kind": "answer",
"impl": "imperative",
"description": "Find nearby Kroger-family stores by ZIP code so the host can choose which location's prices to use.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"zipCode": {
"type": "string",
"pattern": "^\\d{5}$"
},
"radiusInMiles": {
"type": "integer",
"minimum": 1,
"maximum": 25
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 5
}
},
"required": [
"planId",
"zipCode"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}price_shopping_listAnswer
Estimate the current plan's grocery subtotal from location-specific Kroger package prices, with coverage, stock, confidence, and unpriced lines. Does not add items to a cart.
View tool JSON
{
"name": "price_shopping_list",
"kind": "answer",
"impl": "imperative",
"description": "Estimate the current plan's grocery subtotal from location-specific Kroger package prices, with coverage, stock, confidence, and unpriced lines. Does not add items to a cart.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"locationId": {
"type": "string",
"pattern": "^\\d{5,12}$"
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 20
},
"pageSize": {
"type": "integer",
"minimum": 1,
"maximum": 5
}
},
"required": [
"planId",
"locationId"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}search_recipesAnswer
Find reviewed recipe alternatives for one course by theme, diet, preparation time, and budget preference without changing the plan. Use price_recipe_candidates for store-specific cost estimates.
View tool JSON
{
"name": "search_recipes",
"kind": "answer",
"impl": "imperative",
"description": "Find reviewed recipe alternatives for one course by theme, diet, preparation time, and budget preference without changing the plan. Use price_recipe_candidates for store-specific cost estimates.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"role": {
"type": "string",
"enum": [
"STARTER",
"MAIN",
"DESSERT"
]
},
"query": {
"type": "string",
"maxLength": 160
},
"dietaryRequirements": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 20
},
"preparationMinutesMax": {
"type": "integer",
"minimum": 5,
"maximum": 720
},
"courseBudgetCap": {
"type": "number",
"minimum": 0
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 3
}
},
"required": [
"planId",
"role"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}price_recipe_candidatesAnswer
Compare up to three searched recipes against a course cap using package prices from one host-selected Kroger location. Read-only and never adds items to a cart.
View tool JSON
{
"name": "price_recipe_candidates",
"kind": "answer",
"impl": "imperative",
"description": "Compare up to three searched recipes against a course cap using package prices from one host-selected Kroger location. Read-only and never adds items to a cart.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"locationId": {
"type": "string",
"pattern": "^\\d{5,12}$"
},
"role": {
"type": "string",
"enum": [
"STARTER",
"MAIN",
"DESSERT"
]
},
"recipeIds": {
"type": "array",
"items": {
"type": "string",
"maxLength": 60
},
"minItems": 1,
"maxItems": 3
},
"courseBudgetCap": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 10000
}
},
"required": [
"planId",
"locationId",
"role",
"recipeIds",
"courseBudgetCap"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}set_menu_courseAction
Choose a specific reviewed recipe for one existing course; preserve all other courses and rebuild shopping and prep.
View tool JSON
{
"name": "set_menu_course",
"kind": "act",
"impl": "imperative",
"description": "Choose a specific reviewed recipe for one existing course; preserve all other courses and rebuild shopping and prep.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "integer",
"minimum": 1
},
"courseId": {
"type": "string"
},
"recipeId": {
"type": "string"
}
},
"required": [
"planId",
"expectedPlanVersion",
"courseId",
"recipeId"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}replace_menu_courseAction
Replace only one course with a different reviewed recipe matching diet, theme, time, and budget preferences.
View tool JSON
{
"name": "replace_menu_course",
"kind": "act",
"impl": "imperative",
"description": "Replace only one course with a different reviewed recipe matching diet, theme, time, and budget preferences.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "integer",
"minimum": 1
},
"courseId": {
"type": "string"
},
"query": {
"type": "string",
"maxLength": 160
},
"dietaryRequirements": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 20
},
"preparationMinutesMax": {
"type": "integer",
"minimum": 5,
"maximum": 720
},
"courseBudgetCap": {
"type": "number",
"minimum": 0
}
},
"required": [
"planId",
"expectedPlanVersion",
"courseId"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}suggest_ingredient_substitutionsAction
Suggest host-reviewed ingredient swaps for allergies, diets, availability, or cost without changing the plan.
View tool JSON
{
"name": "suggest_ingredient_substitutions",
"kind": "act",
"impl": "imperative",
"description": "Suggest host-reviewed ingredient swaps for allergies, diets, availability, or cost without changing the plan.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"courseId": {
"type": "string"
},
"ingredientName": {
"type": "string"
},
"reason": {
"type": "string",
"enum": [
"ALLERGY",
"GLUTEN_FREE",
"DAIRY_FREE",
"VEGAN",
"VEGETARIAN",
"NUT_FREE",
"AVAILABILITY",
"COST"
]
}
},
"required": [
"planId"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}create_prep_timelineAction
Turn the current recipes into a practical cooking schedule and save it to the shared plan.
View tool JSON
{
"name": "create_prep_timeline",
"kind": "act",
"impl": "imperative",
"description": "Turn the current recipes into a practical cooking schedule and save it to the shared plan.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "integer",
"minimum": 1
}
},
"required": [
"planId",
"expectedPlanVersion"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}search_winesAnswer
Find wine candidates for one course from reviewed catalogs and GrapeMinds when configured; exact bottles, prices, and stock require verification.
View tool JSON
{
"name": "search_wines",
"kind": "answer",
"impl": "imperative",
"description": "Find wine candidates for one course from reviewed catalogs and GrapeMinds when configured; exact bottles, prices, and stock require verification.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"courseId": {
"type": "string"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 3
}
},
"required": [
"planId",
"courseId"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}set_wine_pairingAction
Choose one searched wine candidate for a course and save it to the shared plan.
View tool JSON
{
"name": "set_wine_pairing",
"kind": "act",
"impl": "imperative",
"description": "Choose one searched wine candidate for a course and save it to the shared plan.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "integer",
"minimum": 1
},
"courseId": {
"type": "string"
},
"pairingId": {
"type": "string"
}
},
"required": [
"planId",
"expectedPlanVersion",
"courseId",
"pairingId"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}create_zero_proof_pairingsAction
Create and save a substantial zero-proof choice for every current course, including sourced recipes when Perplexity Agent discovery succeeds and reviewed local pairings as fallback.
View tool JSON
{
"name": "create_zero_proof_pairings",
"kind": "act",
"impl": "imperative",
"description": "Create and save a substantial zero-proof choice for every current course, including sourced recipes when Perplexity Agent discovery succeeds and reviewed local pairings as fallback.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "integer",
"minimum": 1
}
},
"required": [
"planId",
"expectedPlanVersion"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}search_musicAnswer
Find live Apple Music track candidates with available artwork and audio previews without changing the plan.
View tool JSON
{
"name": "search_music",
"kind": "answer",
"impl": "imperative",
"description": "Find live Apple Music track candidates with available artwork and audio previews without changing the plan.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"query": {
"type": "string",
"minLength": 1,
"maxLength": 180
},
"storefront": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"default": "us"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 3
}
},
"required": [
"planId",
"query",
"storefront"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}refresh_music_metadataAction
Refresh the current soundtrack track by track with Apple Music album, artwork, preview, and source metadata while preserving the host's selected tracks and successful matches.
View tool JSON
{
"name": "refresh_music_metadata",
"kind": "act",
"impl": "imperative",
"description": "Refresh the current soundtrack track by track with Apple Music album, artwork, preview, and source metadata while preserving the host's selected tracks and successful matches.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "integer",
"minimum": 1
},
"storefront": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"default": "us"
}
},
"required": [
"planId",
"expectedPlanVersion"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}create_shopping_listAction
Aggregate the current menu’s catalog ingredients into an editable shopping list grouped by aisle, preserving checked items when requested.
View tool JSON
{
"name": "create_shopping_list",
"kind": "act",
"impl": "imperative",
"description": "Aggregate the current menu’s catalog ingredients into an editable shopping list grouped by aisle, preserving checked items when requested.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "number"
},
"preserveCheckedItems": {
"type": "boolean",
"default": true
}
},
"required": [
"planId",
"expectedPlanVersion"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}finalize_party_planAction
Validate and lock the current plan for export. This consequential action requires the host’s explicit confirmation.
View tool JSON
{
"name": "finalize_party_plan",
"kind": "act",
"impl": "imperative",
"description": "Validate and lock the current plan for export. This consequential action requires the host’s explicit confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "number"
},
"confirm": {
"type": "boolean",
"description": "True only after the host explicitly approves finalization."
}
},
"required": [
"planId",
"expectedPlanVersion",
"confirm"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}preview_guest_share_kitAction
Preview a guest-safe program and social package without downloading files. Omits host-only operations and location by default.
View tool JSON
{
"name": "preview_guest_share_kit",
"kind": "act",
"impl": "imperative",
"description": "Preview a guest-safe program and social package without downloading files. Omits host-only operations and location by default.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"includeLocation": {
"type": "boolean",
"default": false,
"description": "Include the event location only when the host explicitly requests it."
},
"tone": {
"type": "string",
"enum": [
"EDITORIAL",
"CELEBRATORY"
],
"default": "EDITORIAL"
}
},
"required": [
"planId"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}export_guest_share_kitAction
Download the reviewed guest program, three social cards, captions, alt text, and manifest as one ZIP. Requires explicit confirmation.
View tool JSON
{
"name": "export_guest_share_kit",
"kind": "act",
"impl": "imperative",
"description": "Download the reviewed guest program, three social cards, captions, alt text, and manifest as one ZIP. Requires explicit confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "number"
},
"confirm": {
"type": "boolean",
"description": "True only after the host explicitly approves creating the local download."
},
"includeLocation": {
"type": "boolean",
"default": false,
"description": "Include the event location only when the host explicitly requests it."
},
"tone": {
"type": "string",
"enum": [
"EDITORIAL",
"CELEBRATORY"
],
"default": "EDITORIAL"
}
},
"required": [
"planId",
"expectedPlanVersion",
"confirm"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}prepare_recipe_cardsAction
Preview one provenance-safe kitchen card per dish with ingredients, functional preparation steps, scaling status, allergens, pairings, and source links. Creates no file.
View tool JSON
{
"name": "prepare_recipe_cards",
"kind": "act",
"impl": "imperative",
"description": "Preview one provenance-safe kitchen card per dish with ingredients, functional preparation steps, scaling status, allergens, pairings, and source links. Creates no file.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
}
},
"required": [
"planId"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}export_recipe_packetAction
Download a ZIP containing one combined kitchen PDF, individual dish-card PDFs, and a provenance manifest. Requires explicit host confirmation.
View tool JSON
{
"name": "export_recipe_packet",
"kind": "act",
"impl": "imperative",
"description": "Download a ZIP containing one combined kitchen PDF, individual dish-card PDFs, and a provenance manifest. Requires explicit host confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "number"
},
"confirm": {
"type": "boolean",
"description": "True only after the host explicitly approves creating the local download."
}
},
"required": [
"planId",
"expectedPlanVersion",
"confirm"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}export_host_packetAction
Generate and download a PDF host packet for the finalized plan. Requires explicit host confirmation because it creates a local file.
View tool JSON
{
"name": "export_host_packet",
"kind": "act",
"impl": "imperative",
"description": "Generate and download a PDF host packet for the finalized plan. Requires explicit host confirmation because it creates a local file.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string"
},
"expectedPlanVersion": {
"type": "number"
},
"confirm": {
"type": "boolean"
},
"includeShoppingList": {
"type": "boolean",
"default": true
},
"includePrepTimeline": {
"type": "boolean",
"default": true
}
},
"required": [
"planId",
"expectedPlanVersion",
"confirm"
],
"additionalProperties": false
},
"page": "/?plan=plan-39c01b0d-fbab-46a5-8c7a-b1886b302e6d"
}