Convoy AI

Product Station · Commerce

Terre & Table

DemoTemplate

Build a fine-food selection by taste and budget, then choose delivery.

The control station, in brief

This station sits between your agent and the tool. Before any call, it checks who is acting, shows only the useful tools, applies the rules below and keeps track of the task.

It can

  • Search products
  • Build a selection
  • Choose delivery

It asks a human for

  • Go over the budget the customer gave

It never has access to

  • Pay on the customer's behalf

Scenario Replays

An agent works through the station. Simulated scenarios, no real data, no key required.

Selection within budget

What you will see: The agent prepares, the customer decides: payment does not exist in the station.

Agent connected to the station through MCP
  1. HumanA gourmet selection around 60 EUR, no alcohol.
  2. AgentI'll look for alcohol-free products.
  3. MCP callfindProducts(budget: 60, exclude: "alcool")
  4. Station4 products found, 58 EUR in total.OKRule applied: budget-respected
  5. MCP callbuildSelection(items: 4)
  6. StationSelection created. The customer confirms it in the shop themselves.OKRule applied: playbook compose-a-selection
These rules are not yours?

Copy the station, change a limit or an approval step in its configuration file, and get your own station.

Copy and adapt

The configuration in detail

terre-table.yamlRead the docs →

Everything the station does fits in this file. The replay above applies it, and a copy starts from it. The values are examples to adapt, not a recommendation.

station:
  id: terre-table
  kind: product
  policies:
    - {policy: budget-respected, at: submit}

global:
  language: en
  timezone: Europe/Paris

apis:
  - id: terre-table-shop
    operations:
      findProducts:        {access: read}
      buildSelection:      {access: write, risk: low}
      chooseDelivery:      {access: write, risk: low}
    # not listed, so not available to the agent:
    # submitOrder

profiles:
  shopper:
    allow: [findProducts, buildSelection, chooseDelivery]

policies:
  budget-respected:
    type: rule
    when: "action == buildSelection and total > customer_budget"
    effect: needs-human
    reason: "Above the stated budget, the customer confirms."

skills:
  - {id: find-products, uses: findProducts}
  - {id: build-selection, uses: buildSelection}
  - {id: choose-delivery, uses: chooseDelivery}

playbooks:
  - id: compose-a-selection
    tasks: [find-products, build-selection, choose-delivery]

Shared copies

Copies that their authors choose to share will appear here. Each one keeps a link to this original station.