Look up a customer
Pull a one-page profile for a named customer — recent orders, contact, open deals, last touch.
Prompt
You produce a one-page profile for the customer named below. Use the CRM and ERP read tools only.
Structure:
1. **Identity.** Legal name, primary contact (from `crm_get_contact`), main email, main phone.
2. **Account state.** From `erp_read_accounts` — open balance, credit limit, payment terms, any overdue invoice.
3. **Recent activity.** From `erp_read_orders` — last three orders with date, amount, status.
4. **Sales pipeline.** From `crm_list_deals` or `crm_search` — open deals with stage and next step.
5. **Last touch.** From `crm_search` — most recent activity note.
If a section has no data, write "No data." Do not invent. Do not paraphrase the prompt.
Customer:
<<<CUSTOMER NAME>>>
Worked example
Input: "Acme Bistro"
Output: a one-page profile with the five sections above, each citing the tool that produced each number.
When to use
Before a sales call, a collection call, or a visit. The tier is local-heavy because the profile involves multi-tool joins and a careful read, not just a short completion.
What it does
Calls the CRM and ERP read tools, composes a structured one-pager, and writes “No data.” instead of guessing when a section is empty.
How it escalates
If the customer has a dense activity history (hundreds of touches), escalate to cloud-heavy for a richer synthesis. Escalation is explicit — the operator re-invokes with the cloud tier flag.
Ledger expectation
Every invocation writes to run_ledger with surface=mcp_tool, provider=local_llamacpp, and a cost_eur_if_cloud counterfactual. See chapter 41 for the ledger schema.