**Source URL:** https://limited.veevavault.dev/commercial/mdl/component-types/agent.md

**Class: ** `metadata`

Platform Veeva AI allows Admins to <a href="https://platform.veevavault.help/en/lr/950644">configure custom agents</a> with direct, secure access to Vault object and document data. Agents leverage a Large Language Model (LLM) to allow them to perform a set of agent actions. Learn more about <a href="https://limited.veevavault.dev/ai-agents/overview/">Veeva AI</a>.

| Attribute | Metadata | Description |
| --- | --- | --- |
| label | Type: StringMax length: 60 | UI-friendly string in the Vault's base language. |
| active | Type: Boolean | Indicates whether this Agent is active. |
| agent_user | Type: StringMax length: 255 | The Agent User assigned to this agent, allowing agent actions to execute without a user at the keyboard, such as through a job or email processor. |
| class | Type: ComponentReferenceRequired | Determines a orchestration pattern for an agent. Implemented in Vault Java SDK. |
| description | Type: StringRequiredMax length: 500 | A natural language description of this Agent, displayed to Admins in the Vault UI and used for Chat routing. |
| document_type | Type: Component | The document type upon which this Agent can perform agent actions. |
| model_level | Type: EnumAllowed values:BASICADVANCED | Indicates whether this Agent uses the Basic or Advanced LLM connection. |
| object | Type: Component | The name of the object to which this Agent is scoped. |
| object_type | Type: Component | The name of the object type to which this Agent is scoped. |
| objective | Type: LongStringMax length: 32000 | A description of what this Agent is intended to do. Used as a system prompt when this Agent runs. |
| supplemental_objective | Type: LongStringMax length: 10000 | This field adds supporting information to this Agent's objective. Only available on standard and system-managed Agents based on application family availability. |

### Agentcontext {#agentcontext}

| Attribute | Metadata | Description |
| --- | --- | --- |
| label | Type: StringMax length: 60 | UI-friendly string in the Vault's base language. |
| active | Type: Boolean | Indicates whether the component is active. |
| always_include | Type: BooleanRequired | Indicates whether to automatically include this agent context with each agent action configured in this Agent. |
| context_configuration | Type: XMLStringMax length: 32000 | Defines this agent context's configuration using XML. |
| context_type | Type: ComponentReferenceRequired | The standard context type for this agent context. |
| description | Type: StringMax length: 500 | A natural language description of this agent context. Vault sends this information to your LLM to help it understand and execute the agent context. |

### Agentactioncontext {#agentactioncontext}

| Attribute | Metadata | Description |
| --- | --- | --- |
| label | Type: StringMax length: 60 | UI-friendly string in the Vault's base language. |
| active | Type: Boolean | Indicates whether the component is active. |
| action | Type: SubcomponentReferenceRequired | The agent action for which this context is configured. |
| agent | Type: ComponentReferenceRequired | The assigned agent that can execute this agent action. |
| context | Type: SubcomponentReferenceRequired | The assigned agent context for this agent action. |

### Agentactiontool {#agentactiontool}

| Attribute | Metadata | Description |
| --- | --- | --- |
| label | Type: StringMax length: 60 | UI-friendly string in the Vault's base language. |
| active | Type: Boolean | Indicates whether the component is active. |
| action | Type: SubcomponentReferenceRequired | The agent action for which this tool is configured. |
| agent | Type: ComponentReferenceRequired | The assigned agent that can execute this agent tool. |
| tool | Type: ComponentReferenceRequired | The assigned agent tool for this agent action. |

### Agentaction {#agentaction}

| Attribute | Metadata | Description |
| --- | --- | --- |
| label | Type: StringMax length: 60 | UI-friendly string in the Vault's base language. |
| active | Type: Boolean | Indicates whether the component is active. |
| api_access | Type: Boolean | Indicates whether this agent action is visible to the MCP server and Vault API. If false, no call to Vault API or MCP server can be made to the agent action. |
| description | Type: StringRequiredMax length: 500 | A natural language description of this agent action. Vault sends this information to your LLM to help it understand this agent action. |
| hide_in_chat | Type: Boolean | If support_chat is set to true, this indicates whether to hide this agent action from the Veeva AI Chat window. |
| instructions | Type: LongStringMax length: 32000 | This agent action's instructions. Your LLM uses these instructions to understand how to execute and respond to this agent action. |
| supplemental_instructions | Type: LongStringMax length: 10000 | This field adds supporting information to this agent action's instructions. Only available on standard and system-managed Agents based on application family availability. |
| support_chat | Type: BooleanRequired | Indicates whether to display this agent action in the Veeva AI Chat window. If false, it is hidden in the Veeva AI Chat window. If omitted, this agent action is hidden from the chat window. |
| tool_evaluation | Type: EnumRequiredAllowed values:AUTOREQUIRED | Indicates whether your LLM is allowed to decide when to execute the agent tool or will use the agent tool each time this agent action is executed. |
| tool_evaluation_required_tool | Type: ComponentReference | If tool_evaluation is set to REQUIRED, this indicates the agent tool for this agent action to execute. |

### Supported Operations {#supported-operations}

| Operation | Support |
| --- | --- |
| Create | Yes |
| Recreate | Yes |
| Alter | Yes |
| Drop | Yes |
| Rename | Yes |
| Describe | Yes |
| Generate Recreate | Yes |
| Queryable | Yes |


---

**Previous:** [Actiontrigger](/commercial/mdl/component-types/actiontrigger)  
**Next:** [Appsecurityrule](/commercial/mdl/component-types/appsecurityrule)