# Find Contact By Email

`lawmatics_find-contact-by-email` · Lawmatics MCP tool · Lookups

Fuzzy-find a single contact in Lawmatics by email address, including a `relationships` envelope of {id,type} pointers to related records (company, prospects/matters, emails, phone numbers, addresses, notes, files, folders, tags, and more). Returns `{ match: <entity> }` on a hit and `{ match: null }` when no record matches. `match: null` is a normal empty result, not an error — do not retry.

## Input

- **emailAddress** `string(email)` (required, pattern: ^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$) — Email address to search for. Expects a valid email address.

## Output

- **match** `object | null` (required) — The single best matching contact, or null if nothing matched. Returns `{ match: <entity> }` on a hit and `{ match: null }` when no record matches. `match: null` is a normal empty result, not an error — do not retry.
  - **id** `string` (required) — Lawmatics contact ID
  - **firstName** `string | null` (required) — Contact's first/given name; null if unset
  - **lastName** `string | null` (required) — Contact's last/family name; null if unset
  - **email** `string | null` (required) — Primary email address; null if unset
  - **phone** `string | null` (required) — Primary phone number as stored; null if unset
  - **createdAt** `string | null` (required) — When the contact was created, as an ISO 8601 timestamp; null if unknown
  - **updatedAt** `string | null` (required) — When the contact was last updated, as an ISO 8601 timestamp; null if unknown
  - **relationships** `object` (required) — JSON:API relationship pointers to related records as {id,type} stubs. Not materialized — follow a pointer by calling that resource's own get/find tool (e.g. type 'company' -> get-company, type 'prospect' -> get-matter, type 'user' -> get-user).
    - **createdBy** `object | null` (required) — Creating user pointer; null when unset
      - **id** `string` (required) — ID of the referenced Lawmatics record
      - **type** `string` (required) — JSON:API record class of the reference (e.g. "user", "contact", "prospect", "firm"); resolve it by calling that resource's own get/find tool — this pointer is not materialized
    - **client** `object | null` (required) — Linked client pointer; null when unset
      - **id** `string` (required) — ID of the referenced Lawmatics record
      - **type** `string` (required) — JSON:API record class of the reference (e.g. "user", "contact", "prospect", "firm"); resolve it by calling that resource's own get/find tool — this pointer is not materialized
    - **company** `object | null` (required) — Linked company pointer; null when unset
      - **id** `string` (required) — ID of the referenced Lawmatics record
      - **type** `string` (required) — JSON:API record class of the reference (e.g. "user", "contact", "prospect", "firm"); resolve it by calling that resource's own get/find tool — this pointer is not materialized
    - **customContactType** `object | null` (required) — Custom contact-type pointer; null when unset
      - **id** `string` (required) — ID of the referenced Lawmatics record
      - **type** `string` (required) — JSON:API record class of the reference (e.g. "user", "contact", "prospect", "firm"); resolve it by calling that resource's own get/find tool — this pointer is not materialized
    - **prospects** `array` (required) — Prospect (matter) pointers; empty if none
      - **[]** `object`
        - **id** `string` (required) — ID of the referenced Lawmatics record
        - **type** `string` (required) — JSON:API record class of the reference; resolve it by calling that resource's own tool
    - **tags** `array` (required) — Tag pointers; empty if none
      - **[]** `object`
        - **id** `string` (required) — ID of the referenced Lawmatics record
        - **type** `string` (required) — JSON:API record class of the reference; resolve it by calling that resource's own tool
    - **emails** `array` (required) — Email-address pointers; empty if none
      - **[]** `object`
        - **id** `string` (required) — ID of the referenced Lawmatics record
        - **type** `string` (required) — JSON:API record class of the reference; resolve it by calling that resource's own tool
    - **phoneNumbers** `array` (required) — Phone-number pointers; empty if none
      - **[]** `object`
        - **id** `string` (required) — ID of the referenced Lawmatics record
        - **type** `string` (required) — JSON:API record class of the reference; resolve it by calling that resource's own tool
    - **addresses** `array` (required) — Address pointers; empty if none
      - **[]** `object`
        - **id** `string` (required) — ID of the referenced Lawmatics record
        - **type** `string` (required) — JSON:API record class of the reference; resolve it by calling that resource's own tool
    - **notes** `array` (required) — Note pointers; empty if none
      - **[]** `object`
        - **id** `string` (required) — ID of the referenced Lawmatics record
        - **type** `string` (required) — JSON:API record class of the reference; resolve it by calling that resource's own tool
    - **files** `array` (required) — File pointers; empty if none
      - **[]** `object`
        - **id** `string` (required) — ID of the referenced Lawmatics record
        - **type** `string` (required) — JSON:API record class of the reference; resolve it by calling that resource's own tool
    - **folders** `array` (required) — Folder pointers; empty if none
      - **[]** `object`
        - **id** `string` (required) — ID of the referenced Lawmatics record
        - **type** `string` (required) — JSON:API record class of the reference; resolve it by calling that resource's own tool
