> ## Documentation Index
> Fetch the complete documentation index at: https://mcp.docs.relayfi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# get_contact — Retrieve a single contact

> Reference for the get_contact MCP tool. Fetch one contact by its ID for a given organization with contacts.read scope.

The `get_contact` tool returns a single contact by `contactId` within an organization. Use it to resolve the `contactId` on an invoice. `intent`, `organizationId`, and `contactId` are required, and the token must carry the `contacts.read` scope.

> [!NOTE]
>
> Receivables tools require the organization to have invoicing set up in Relay. If it does not, the tool returns an error instead of data.

## Scope

Required OAuth scope: `contacts.read`

## Input

**organizationId** `string` *required*

The organization that owns the contact. Must be one of the organizations the token can access.

**contactId** `string` *required*

The unique contact identifier to retrieve.

**intent** `string` *required*

What the user asked for and why this call serves it, in 1 to 500 characters. Required on every tool call. See [Common tool arguments](https://mcp.docs.relayfi.com/concepts/transport.md#common-tool-arguments).

## Output

**data** `Contact` *required*

The requested contact.

**Contact**

**id** `string` *required*

Unique contact identifier. Use this value as `contactId`.

**organizationId** `string` *required*

Organization the contact belongs to.

**status** `string` *required*

Contact status. Values: `active`, `archived`.

**name** `string` *required*

Display name of the contact.

**email** `string` *required*

Email address of the contact.

**phoneNumber** `string` *required*

Phone number of the contact.

**address** `object | null` *required*

Postal address of the contact, or `null` when none is on file.

**source** `string` *required*

Where the contact was created or synced from. Values: `relay`, `quickbooks`, `xero`, `import`.

**createdAt** `string` *required*

Timestamp when the contact was created, in RFC 3339 format.

**updatedAt** `string` *required*

Timestamp when the contact was last updated, in RFC 3339 format.

## Example

```json Request theme={null}
{
  "jsonrpc": "2.0",
  "id": 11,
  "method": "tools/call",
  "params": {
    "name": "get_contact",
    "arguments": {
      "intent": "User asked who invoice INV-0042 was billed to.",
      "organizationId": "org_1",
      "contactId": "ct_1"
    }
  }
}
```

```json Response theme={null}
{
  "jsonrpc": "2.0",
  "id": 11,
  "result": {
    "structuredContent": {
      "data": {
        "id": "ct_1",
        "organizationId": "org_1",
        "status": "active",
        "name": "Northwind Traders",
        "email": "billing@example.com",
        "phoneNumber": "+1 555 010 0100",
        "address": null,
        "source": "relay",
        "createdAt": "2026-03-02T15:04:00.000Z",
        "updatedAt": "2026-09-14T10:22:00.000Z"
      }
    }
  }
}
```

## Notes

* If the contact does not exist or is not accessible with the provided token, the tool returns an MCP error: `Contact not found or not accessible.`

> [card] [list\_contacts](https://mcp.docs.relayfi.com/tools/list-contacts.md)
>
> Search and list contacts.

> [card] [get\_invoice](https://mcp.docs.relayfi.com/tools/get-invoice.md)
>
> Fetch an invoice and its contactId.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.