clients_find_or_create
Look up a client by contact identifier; create one if none exists.
Look up a client by contact identifier; create one if none exists. Single-call idempotent path for "promote this contact to a client" intents — prefer this over clients_list → clients_create chains. Accepts either contact_id (preferred) or a name/email to resolve against the contact directory first. Returns the client record plus a created: true|false flag so the caller can tell whether a new record was inserted. New clients go through the same editable draft flow as clients_create.
Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
contact_id | string | No | Existing contact UUID (preferred). |
first_name | string | No | Given name when resolving by name. |
last_name | string | No | Family name when resolving by name. |
email | string | No | Contact email for lookup/creation. |
phone | string | No | Contact phone for lookup/creation. |
client_type | enum | No | Client type to set when creating (default: buyer). · One of: buyer, seller, both |
Example prompts#
- "If Marcus Lee from my contacts isn't already a client, set him up as a buyer."
- "Promote the contact Priya Shah to a seller client, or pull her file if she exists."
Safety#
Creates data. Creates a new record in your CRM and may trigger notifications or webhooks. Running it twice creates a duplicate, so Claude runs it once per request.
Previous name#
This tool was previously published as find_or_create_client. Call it by its current name — legacy names are kept here for reference and old links redirect, but they are not callable.