MCPToolsCDP tools
Customer Profile
Get a customer's consolidated CDP profile
cdp_customer_profile
Returns a single customer's consolidated CDP profile for the current brand: the deterministic identity graph (every resolved key — shopify_customer_id, email, phone, vyg_aid, and so on), the materialized attributes (orders count, total spend, AOV, recency, engagement, browse rollups), and the computed tags.
Identify the customer by either a CDP customerId or an external identity. Read-only and scoped to your brand. For the full chronological timeline, use cdp_customer_journey.
Parameters
| Name | Type | Required | Description | Default |
|---|---|---|---|---|
customerId | string | No* | The CDP customer id (uuid). Provide this or identity. | — |
identity | object | No* | An external identity key: { type, value }, e.g. { "type": "email", "value": "a@b.com" }. | — |
* Provide exactly one of customerId or identity.
The identity.type accepts any of the supported identity types (for example email, phone, shopify_customer_id).
Returns
customerId,brandId— the resolved customer and brand.identities— the deterministic identity graph (every resolved key for this customer).profile— the materialized attributes (orders, spend, AOV, recency, engagement, browse rollups).nulluntil the profile has been materialized for this customer.tags— the computed tags.coverage—{ since, note }, the brand's order-data coverage floor. Theprofile's order/spend/recency attributes are CDP-witnessed since this date, not lifetime Shopify history.
Example prompts
Show me the profile for jane@example.comLook up CDP customer 8f2c… — what's their total spend and tags?Notes
- The brand is taken from your authenticated context, never a parameter — you can only read your own customers.
- If no customer matches the given
customerId/identityin your brand, the tool returns a clear not-found error, not another brand's data. - A
nullprofilemeans the customer exists but hasn't been materialized yet — theiridentitiesstill return. - The
profile's orders/spend/recency count only what the CDP has witnessed sincecoverage.since— for a customer's true lifetime figures, useshopify_admin_graphql.