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

# Create account invitation

> Create account invitation.

`veryfront__create_account_invitation`

Requires account.invitations.manage.

## Access

No external-service connection is required. Use a Veryfront credential with access to the requested resources.

**Call type:** Can change resources.

## Arguments

| Field | Type | Required | Description and constraints |
| - | - | - | - |
| `email` | `string` | Yes | Invitation recipient email. Only one pending invitation is allowed per email; another creation returns 409 until it is revoked or expires. Creation does not send email or reserve a seat; tier and seat capacity are checked when a new member accepts. Maximum length: `254`. Format: `email`. |
| `role` | `string` | No | Invited administrator or member role. Defaults to administrator for existing clients. Default: `"admin"`. Values: `"admin"`, `"member"`. |
| `account_id` | `string` | Yes | Provide the account id. Format: `uuid`. |

## Example request

Send this JSON-RPC request through an initialized MCP client. Replace sample identifiers and values before calling the tool. See [MCP client setup](https://veryfront.com/docs/cloud/getting-started/connect-mcp.md).

```json title="request.json" theme={null}
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "veryfront__create_account_invitation",
    "arguments": {
      "email": "user@example.com",
      "account_id": "00000000-0000-4000-8000-000000000000"
    }
  }
}
```

## Result

The published output shape is summarized below. Inspect both the MCP response content and `isError` when handling a call.

| Field | Type | Required | Description and constraints |
| - | - | - | - |
| `id` | `string` | Yes | Unique identifier for the returned record. Format: `uuid`. |
| `account_id` | `string` | Yes | The account id returned by the tool. |
| `email` | `string` | Yes | The email returned by the tool. |
| `role` | `string` | Yes | The role returned by the tool. Values: `"owner"`, `"admin"`, `"member"`. |
| `status` | `string` | Yes | Pending invitations are reported as expired after `expires_at`. Values: `"pending"`, `"accepted"`, `"revoked"`, `"expired"`. |
| `expires_at` | `string` | Yes | The expires at returned by the tool. |
| `invited_by_user_id` | `string or null` | Yes | The invited by user id returned by the tool. |
| `accepted_by_user_id` | `string or null` | Yes | The accepted by user id returned by the tool. |
| `resolved_at` | `string or null` | Yes | The resolved at returned by the tool. |
| `created_at` | `string` | Yes | Creation timestamp in ISO 8601 format. |
| `token` | `string` | Yes | Raw acceptance token. Returned exactly once; the server stores only its hash. |

## Full schemas

```json title="input-schema.json" theme={null}
{
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 254,
      "description": "Invitation recipient email. Only one pending invitation is allowed per email; another creation returns 409 until it is revoked or expires. Creation does not send email or reserve a seat; tier and seat capacity are checked when a new member accepts."
    },
    "role": {
      "type": "string",
      "enum": [
        "admin",
        "member"
      ],
      "default": "admin",
      "description": "Invited administrator or member role. Defaults to administrator for existing clients."
    },
    "account_id": {
      "type": "string",
      "format": "uuid",
      "description": "Provide the account id."
    }
  },
  "required": [
    "email",
    "account_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "Arguments for the create_account_invitation tool."
}
```

```json title="output-schema.json" theme={null}
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "Unique identifier for the returned record."
    },
    "account_id": {
      "$ref": "#/properties/id",
      "description": "The account id returned by the tool."
    },
    "email": {
      "type": "string",
      "description": "The email returned by the tool."
    },
    "role": {
      "type": "string",
      "enum": [
        "owner",
        "admin",
        "member"
      ],
      "description": "The role returned by the tool."
    },
    "status": {
      "type": "string",
      "enum": [
        "pending",
        "accepted",
        "revoked",
        "expired"
      ],
      "description": "Pending invitations are reported as expired after `expires_at`."
    },
    "expires_at": {
      "type": "string",
      "description": "The expires at returned by the tool."
    },
    "invited_by_user_id": {
      "anyOf": [
        {
          "$ref": "#/properties/id",
          "description": "The invited by user id returned by the tool."
        },
        {
          "type": "null",
          "description": "The invited by user id returned by the tool."
        }
      ],
      "description": "The invited by user id returned by the tool."
    },
    "accepted_by_user_id": {
      "anyOf": [
        {
          "$ref": "#/properties/id",
          "description": "The accepted by user id returned by the tool."
        },
        {
          "type": "null",
          "description": "The accepted by user id returned by the tool."
        }
      ],
      "description": "The accepted by user id returned by the tool."
    },
    "resolved_at": {
      "type": [
        "string",
        "null"
      ],
      "description": "The resolved at returned by the tool."
    },
    "created_at": {
      "type": "string",
      "description": "Creation timestamp in ISO 8601 format."
    },
    "token": {
      "type": "string",
      "description": "Raw acceptance token. Returned exactly once; the server stores only its hash."
    }
  },
  "required": [
    "id",
    "account_id",
    "email",
    "role",
    "status",
    "expires_at",
    "invited_by_user_id",
    "accepted_by_user_id",
    "resolved_at",
    "created_at",
    "token"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "Structured result returned by the create_account_invitation tool."
}
```

<details>
  <summary>Try this tool</summary>

  Replace sample arguments with values for your project or connected account. Calls run only when you select Run tool.

  MCP tool call

  Call `veryfront__create_account_invitation` against the Veryfront MCP endpoint.

  Bearer token or API key

  Arguments (JSON)

  Run this tool with these arguments.

  Run tool

  Output JSON

  <pre />
</details>


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