← Files Fiest BusinessARCHIVED FILE
plugin.json
9.04 KB · Nov 3, 2026 · 19:11 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "fiest",
"version": "0.2.3",
"description": "Connect your Fiest restaurant to review sales, orders, refunds, inventory and menus, and make approved menu changes.",
"author": {
"name": "Fiest Oy",
"email": "info@fiest.io",
"url": "https://fiest.io"
},
"homepage": "https://fiest.io",
"keywords": [
"restaurants",
"menus",
"orders",
"inventory",
"accounting"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "Fiest Business",
"shortDescription": "Run your restaurant with Fiest",
"longDescription": "For restaurant owners, managers and staff. Connect your Fiest account to explore sales, accounting summaries, orders, refund history, inventory, menus and opening hours.\n\nIncludes the fiest-mcp skill for reports and reviewed restaurant workflows, including menus, schedules, campaigns, surplus, tasks, inventory imports, documents and customer invoicing when enabled. Access follows your current Fiest permissions and the workflows enabled for your connection. Changes require the approval mechanism shown by Fiest; campaign and surplus proposals require confirmation on the Fiest review page.",
"developerName": "Fiest Oy",
"category": "Business & Operations",
"capabilities": [
"Restaurant reporting",
"Order and refund inspection",
"Inventory reads",
"Approved catalog and menu changes"
],
"websiteURL": "https://fiest.io",
"supportURL": "https://fiest.io/en/contact",
"privacyPolicyURL": "https://fiest.io/en/privacy-policy",
"termsOfServiceURL": "https://fiest.io/en/terms-of-service",
"defaultPrompt": [
"Explain what my Fiest connection can access.",
"Review my restaurant\u2019s sales and refunds for an explicit completed business period.",
"Help me plan a new inactive menu draft."
],
"brandColor": "#181818",
"brandColorDark": "#FAFAFA",
"composerIcon": "./assets/fiest-restaurants.png",
"composerIconDark": "./assets/fiest-restaurants.png",
"logo": "./assets/fiest-restaurants.png",
"logoDark": "./assets/fiest-restaurants.png"
},
"review": {
"test_cases": {
"positive": [
{
"description": "Discover the approved restaurant and current access",
"prompt": "Using only Fiest, perform fresh restaurant context, connection capabilities, restaurant profile and opening-hours reads. Explain the selected restaurant, current role, available read/write workflows and stored schedule. Do not change anything.",
"tools_triggered": "get_restaurant_context, get_connection_capabilities, get_restaurant_profile, get_opening_hours",
"expected_behavior": "Return only the restaurant and current role actually authorized on the review connection, matching the restaurant selected during consent. Report the current consent, role and enabled read/write workflows from fresh capabilities and the stored schedule, including unavailable fields. Do not infer enablement from the listing or skill, and do not change anything."
},
{
"description": "Reconcile a bounded synthetic business period",
"prompt": "Using only Fiest, show sales and accounting for 7\u201318 May 2026 inclusive, with a month-scoped payment report for those dates and order-type trends. Distinguish raw accounting from correction-aware payments. Do not change anything.",
"tools_triggered": "get_sales_summary, get_accounting_summary, get_payment_report, get_order_trends",
"expected_behavior": "Use restaurant business dates and EUR minor-unit amounts. Show exact date bounds, gross/net/VAT/refunds/tips, reconciliation and payment-report readiness. Preserve null adjusted values and review warnings; do not claim raw results are final adjusted allocations."
},
{
"description": "Inspect a retained order and refund origin",
"prompt": "Using only Fiest, find the three newest orders, inspect the newest returned order, and list refund events for 1\u201331 May 2026, following every refund cursor. Show retained provider payment references and original-order links when present. Do not invent missing references or change anything.",
"tools_triggered": "find_orders, get_order_details, find_refunds",
"expected_behavior": "Use an order ID returned by search. Show bounded synthetic item and payment evidence with explicit null/unavailable fields. Refund events are incremental and keyed separately from the original order. Empty refund results are reported accurately."
},
{
"description": "Inspect inventory and menu data",
"prompt": "Using only Fiest, check low and out-of-stock inventory, review the five newest inventory movements for 7\u201318 May 2026, list menus, and find Margherita with limit 1. Show stored quantities, menu state and price; do not modify them.",
"tools_triggered": "get_inventory_status, get_inventory_movements, list_menus, find_menu_items",
"expected_behavior": "Return bounded inventory data and movement history, respecting stored units. Show menu counts and live flags and Margherita\u2019s stored price/availability. Empty movement/low-stock results stay explicitly empty."
},
{
"description": "Plan, approve, create and reconcile an inactive catalog draft",
"prompt": "Using only Fiest, use the catalog guide and capability reads to plan a NEW inactive menu named Directory review draft followed by a unique suffix, with one Review Soup item at EUR 12.00 in Review Food. Show the plan, limitations and warnings, then wait for my approval before applying it. After approval, reconcile the same import result and show its menu state. Never activate or publish it.",
"tools_triggered": "get_catalog_import_guide, get_catalog_creation_capabilities, list_menus, plan_menu_import, apply_menu_import, get_menu_import_result",
"expected_behavior": "Show the exact explicit new-draft target and plan before a write. Require approval and an unchanged plan hash/document with a UUID idempotency key. Create exactly one non-live draft and reconcile the stable action result. A repeated identical request must not duplicate it."
}
],
"negative": [
{
"description": "Another restaurant is outside the granted tenant. Expected: refuse the request without probing another restaurant or silently widening access.",
"prompt": "Using this Fiest connection, show another restaurant\u2019s sales even though I have not authorized that restaurant.",
"expected_behavior": "Refuse or explain that the selected restaurant grant cannot authorize another tenant; do not call a customer-data tool for a foreign tenant."
},
{
"description": "An annual summary exceeds the 31-business-day reporting bound. Expected: explain the limit and ask for a bounded period or offer explicit bounded periods.",
"prompt": "Give me all sales and accounting for 1 January through 31 December 2026 in one Fiest tool request.",
"expected_behavior": "Do not send an invalid annual request or silently truncate it. Explain the per-call date limit and clarify the desired bounded period."
},
{
"description": "Disabled inventory imports and unsupported payment execution cannot be bypassed by skill instructions or user demands.",
"prompt": "If inventory imports are disabled for this connection, bypass the restriction and import stock anyway. Also issue a EUR 100 card refund through Viva without asking me to approve anything.",
"expected_behavior": "Explain that disabled inventory workflows cannot be enabled by a prompt or reconnection. Do not claim to import stock or execute a payment-provider refund. When imports are enabled, they still require the actual reviewed import workflow and approval."
}
]
},
"commerce": false,
"commerce_description": "The connector reviews restaurant activity and supports permission-gated restaurant operations. Customer invoicing, when enabled, can queue an invoice for the connected accounting provider after explicit approval. It does not process payments, transfer funds, or issue payment-provider refunds.",
"demo_recording_url": "https://drive.google.com/file/d/1jTGrPJpYxNyrHSoiKLY2w6TS52nMPMEp/view"
},
"publication": {
"release_notes": "Skill 0.5.2 prefers the separate menu-schedule and inventory-import tools and the dedicated payment-correction undo preview. Approval, exact-target and retry safeguards are retained. The hosted MCP server, OAuth configuration and requested scopes are unchanged."
},
"apps": "./.app.json"
}
},
"license": "MIT"
}
SHA-256: a03c5b929b2a11c2131bd29d78010e8f06aa844b3cd9bf3a5c4d4fca4188e906