> ## 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.

# Update account member

> Change an account member's role.

`veryfront__update_account_member`

Requires account.members.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 |
| - | - | - | - |
| `role` | `string` | Yes | Member role. Promoting to or demoting from owner requires account ownership authority. The account must retain at least one owner. Setting the current role succeeds without a change. Values: `"owner"`, `"admin"`, `"member"`. |
| `account_id` | `string` | Yes | Provide the account id. Format: `uuid`. |
| `user_id` | `string` | Yes | Provide the user 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__update_account_member",
    "arguments": {
      "role": "owner",
      "account_id": "00000000-0000-4000-8000-000000000000",
      "user_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 |
| - | - | - | - |
| `user_id` | `string` | Yes | The user id returned by the tool. Format: `uuid`. |
| `email` | `string` | Yes | The email returned by the tool. |
| `name` | `string or null` | Yes | Human-readable name for the returned record. |
| `avatar_src` | `string or null` | Yes | The avatar src returned by the tool. |
| `role` | `string` | Yes | The role returned by the tool. Values: `"owner"`, `"admin"`, `"member"`. |
| `invited_by_user_id` | `string or null` | Yes | The invited by user id returned by the tool. |
| `created_at` | `string` | Yes | Creation timestamp in ISO 8601 format. |
| `updated_at` | `string` | Yes | Last update timestamp in ISO 8601 format. |

## Full schemas

```json title="input-schema.json" theme={null}
{
  "type": "object",
  "properties": {
    "role": {
      "type": "string",
      "enum": [
        "owner",
        "admin",
        "member"
      ],
      "description": "Member role. Promoting to or demoting from owner requires account ownership authority. The account must retain at least one owner. Setting the current role succeeds without a change."
    },
    "account_id": {
      "type": "string",
      "format": "uuid",
      "description": "Provide the account id."
    },
    "user_id": {
      "type": "string",
      "format": "uuid",
      "description": "Provide the user id."
    }
  },
  "required": [
    "role",
    "account_id",
    "user_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "Arguments for the update_account_member tool."
}
```

```json title="output-schema.json" theme={null}
{
  "type": "object",
  "properties": {
    "user_id": {
      "type": "string",
      "format": "uuid",
      "description": "The user id returned by the tool."
    },
    "email": {
      "type": "string",
      "description": "The email returned by the tool."
    },
    "name": {
      "type": [
        "string",
        "null"
      ],
      "description": "Human-readable name for the returned record."
    },
    "avatar_src": {
      "type": [
        "string",
        "null"
      ],
      "description": "The avatar src returned by the tool."
    },
    "role": {
      "type": "string",
      "enum": [
        "owner",
        "admin",
        "member"
      ],
      "description": "The role returned by the tool."
    },
    "invited_by_user_id": {
      "anyOf": [
        {
          "$ref": "#/properties/user_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."
    },
    "created_at": {
      "type": "string",
      "description": "Creation timestamp in ISO 8601 format."
    },
    "updated_at": {
      "type": "string",
      "description": "Last update timestamp in ISO 8601 format."
    }
  },
  "required": [
    "user_id",
    "email",
    "name",
    "avatar_src",
    "role",
    "invited_by_user_id",
    "created_at",
    "updated_at"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "Structured result returned by the update_account_member 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__update_account_member` 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.