What you’ll build

A “show me everything about this customer” view useful for support agents, account managers, and AI copilots that need full context before answering.

The call

Use get_customer_financial_summary (a composite tool).

{
  "name": "get_customer_financial_summary",
  "arguments": {
    "customer_id": "550e8400-e29b-41d4-a716-446655440000"
  }
}

Response (shape may evolve):

{
  "customer": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "email": "jane@example.com",
    "name": "Jane Doe",
    "created_at": "2025-08-12T14:22:01Z"
  },
  "lifetime": {
    "total_paid": 35988,
    "currency": "usd",
    "order_count": 12,
    "refund_count": 1,
    "refunded_total": 2999
  },
  "subscriptions": [
    {
      "id": "6ba7b812-9dad-11d1-80b4-00c04fd430c8",
      "plan_id": "6ba7b814-9dad-11d1-80b4-00c04fd430d0",
      "status": "active",
      "current_period_end": "2026-05-12T14:22:01Z"
    }
  ],
  "payment_methods": [
    { "id": "6ba7b815-9dad-11d1-80b4-00c04fd430c8", "brand": "visa", "last4": "4242", "is_default": true }
  ],
  "recent_orders": [
    /* up to 10 most recent orders */
  ],
  "open_issues": {
    "past_due_subscriptions": 0,
    "active_disputes": 0
  }
}

When to use this vs. multiple read calls

Use this composite toolUse individual get_* and list_* tools
You want a snapshot for a human-facing UIYou need a specific deep field not in the summary
One round-trip matters (latency / rate limit)You’re already paginating through orders
Support agent or AI copilot contextBuilding a custom analytical query

Pair it with revenue insight

For account-level metrics rather than per-customer:

  • get_revenue_summary — totals by currency and plan over a date range.
  • list_past_due_subscriptions — input for dunning workflows.