---
title: Update Agent
url: https://platform.claude.com/docs/en/api/java/beta/agents/update
---

# Update Agent

`BetaManagedAgentsAgent beta().agents().update(params = AgentUpdateParams.none(), requestOptions = RequestOptions.none())`

**POST** `/v1/agents/{agent_id}`

Update Agent

## Parameters

- `AgentUpdateParams params`

  - `Optional<String> agentId` (path parameter)

    Unique identifier of the agent to update.

  - `Optional<List<AnthropicBeta>> betas` (header parameter)

    This endpoint is in beta: requests must send `managed-agents-2026-04-01` in this header.

    - `MESSAGE_BATCHES_2024_09_24("message-batches-2024-09-24")`

    - `PROMPT_CACHING_2024_07_31("prompt-caching-2024-07-31")`

    - `COMPUTER_USE_2024_10_22("computer-use-2024-10-22")`

    - `COMPUTER_USE_2025_01_24("computer-use-2025-01-24")`

    - `PDFS_2024_09_25("pdfs-2024-09-25")`

    - `TOKEN_COUNTING_2024_11_01("token-counting-2024-11-01")`

    - `TOKEN_EFFICIENT_TOOLS_2025_02_19("token-efficient-tools-2025-02-19")`

    - `OUTPUT_128K_2025_02_19("output-128k-2025-02-19")`

    - `FILES_API_2025_04_14("files-api-2025-04-14")`

    - `MCP_CLIENT_2025_04_04("mcp-client-2025-04-04")`

    - `MCP_CLIENT_2025_11_20("mcp-client-2025-11-20")`

    - `DEV_FULL_THINKING_2025_05_14("dev-full-thinking-2025-05-14")`

    - `INTERLEAVED_THINKING_2025_05_14("interleaved-thinking-2025-05-14")`

    - `CODE_EXECUTION_2025_05_22("code-execution-2025-05-22")`

    - `EXTENDED_CACHE_TTL_2025_04_11("extended-cache-ttl-2025-04-11")`

    - `CONTEXT_1M_2025_08_07("context-1m-2025-08-07")`

    - `CONTEXT_MANAGEMENT_2025_06_27("context-management-2025-06-27")`

    - `MODEL_CONTEXT_WINDOW_EXCEEDED_2025_08_26("model-context-window-exceeded-2025-08-26")`

    - `SKILLS_2025_10_02("skills-2025-10-02")`

    - `FAST_MODE_2026_02_01("fast-mode-2026-02-01")`

    - `OUTPUT_300K_2026_03_24("output-300k-2026-03-24")`

    - `USER_PROFILES_2026_03_24("user-profiles-2026-03-24")`

    - `USER_PROFILES_2026_08_18("user-profiles-2026-08-18")`

    - `USER_PROFILES_2026_09_04("user-profiles-2026-09-04")`

    - `ADVISOR_TOOL_2026_03_01("advisor-tool-2026-03-01")`

    - `MANAGED_AGENTS_2026_04_01("managed-agents-2026-04-01")`

    - `CACHE_DIAGNOSIS_2026_04_07("cache-diagnosis-2026-04-07")`

    - `DREAMING_2026_04_21("dreaming-2026-04-21")`

    - `THINKING_TOKEN_COUNT_2026_05_13("thinking-token-count-2026-05-13")`

    - `SERVER_SIDE_FALLBACK_2026_06_01("server-side-fallback-2026-06-01")`

    - `SERVER_SIDE_FALLBACK_2026_07_01("server-side-fallback-2026-07-01")`

    - `FALLBACK_CREDIT_2026_06_01("fallback-credit-2026-06-01")`

    - `FALLBACK_CREDIT_2026_07_01("fallback-credit-2026-07-01")`

    - `AGENT_MEMORY_2026_07_22("agent-memory-2026-07-22")`

    - `MID_CONVERSATION_TOOL_CHANGES_2026_07_01("mid-conversation-tool-changes-2026-07-01")`

    - `COMPACT_2026_01_12("compact-2026-01-12")`

    - `COMPUTER_USE_2025_11_24("computer-use-2025-11-24")`

    - `MCP_TUNNELS_2026_06_22("mcp-tunnels-2026-06-22")`

    - `STRUCTURED_OUTPUTS_2025_11_13("structured-outputs-2025-11-13")`

    - `TASK_BUDGETS_2026_03_13("task-budgets-2026-03-13")`

    - `THINKING_DISPLAY_UPDATES_2026_08_18("thinking-display-updates-2026-08-18")`

    - `CE_USER_MANAGEMENT_2026_07_13("ce-user-management-2026-07-13")`

    - `MID_CONVERSATION_OUTPUT_CONFIG_2026_07_01("mid-conversation-output-config-2026-07-01")`

    - `THINKING_BINDING_CONTROLS_2026_08_01("thinking-binding-controls-2026-08-01")`

    - `MID_CONVERSATION_SYSTEM_CLEAR_AT_2026_08_21("mid-conversation-system-clear-at-2026-08-21")`

    - `COMPACT_2026_09_04("compact-2026-09-04")`

    - `INLINE_TOOLS_2026_09_15("inline-tools-2026-09-15")`

    - `MCP_CLIENT_2026_09_15("mcp-client-2026-09-15")`

    - `CE_PLUGINS_2026_09_01("ce-plugins-2026-09-01")`

    - `SPEND_LIMIT_READS_2026_09_26("spend-limit-reads-2026-09-26")`

    - `TELEMETRY_DESTINATIONS_2026_08_11("telemetry-destinations-2026-08-11")`

  - `Optional<String> workspaceId` (header parameter)

    Optional header to select the Workspace for this request. The value is a Workspace ID (for example, `wrkspc_011CZkZaBF1tNoB5wlCeusgy`).

    Only needed for credentials that can act on more than one Workspace. A credential that belongs to a specific Workspace may omit it; if sent, it must match that Workspace.

  - `Optional<String> description`

    Description. Omit to preserve; send empty string or null to clear.

    maxLength: 2048

  - `Optional<BetaManagedAgentsExecutionIdentityParams> executionIdentity`

    Execution principal for runs of this agent. Full replacement. Omit to preserve; send null or `{"type": "service_account"}` to restore the default.

  - `Optional<List<BetaManagedAgentsUrlMcpServerParams>> mcpServers`

    MCP servers. Full replacement. Omit to preserve; send empty array or `null` to clear. Names must be unique. Maximum 20. Every server must be referenced by an `mcp_toolset` in the agent's resulting `tools`; unreferenced servers are rejected. See the [MCP connector guide](https://platform.claude.com/docs/en/managed-agents/mcp-connector?sdk_languages=java).

    - `Type type`

    - `String name`

      Unique name for this server, referenced by mcp_toolset configurations. 1-255 characters.

      minLength: 1, maxLength: 255

    - `String url`

      Endpoint URL for the MCP server.

      maxLength: 2048

  - `Optional<Metadata> metadata`

    Metadata patch. Set a key to a string to upsert it, or to null to delete it. Omit the field to preserve. The stored bag is limited to 16 keys (up to 64 chars each) with values up to 512 chars.

  - `Optional<Model> model`

    Model identifier. Accepts the [model string](https://platform.claude.com/docs/en/about-claude/models/overview?sdk_languages=java#latest-models-comparison), e.g. `claude-opus-5-5`, or a `model_config` object for additional configuration control. Omit to preserve. Cannot be cleared.

    - `enum BetaManagedAgentsModel`

      The model that will power your agent.

      See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

      - `CLAUDE_HAIKU_5_5("claude-haiku-5-5")`

        Fastest model for high-volume, real-time tasks

      - `CLAUDE_SONNET_5_5("claude-sonnet-5-5")`

        Efficient model for coding and agents

      - `CLAUDE_OPUS_5_5("claude-opus-5-5")`

        Powerful intelligence for coding, knowledge work, and long-running agents

      - `CLAUDE_FABLE_5_1("claude-fable-5-1")`

        Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

      - `CLAUDE_SONNET_5("claude-sonnet-5")`

        Efficient model for coding and agents

      - `CLAUDE_FABLE_5("claude-fable-5")`

        Next generation of intelligence for the hardest knowledge work and coding problems

      - `CLAUDE_OPUS_5("claude-opus-5")`

        Powerful intelligence for long-running agents and coding

      - `CLAUDE_OPUS_4_8("claude-opus-4-8")`

        Powerful intelligence for long-running agents and coding

      - `CLAUDE_OPUS_4_7("claude-opus-4-7")`

        Powerful intelligence for long-running agents and coding

      - `CLAUDE_OPUS_4_6("claude-opus-4-6")`

        Powerful intelligence for long-running agents and coding

      - `CLAUDE_SONNET_4_6("claude-sonnet-4-6")`

        Best combination of speed and intelligence

      - `CLAUDE_HAIKU_4_5("claude-haiku-4-5")`

      - `CLAUDE_HAIKU_4_5_20251001("claude-haiku-4-5-20251001")`

      - `CLAUDE_OPUS_4_5("claude-opus-4-5")`

        Powerful intelligence for long-running agents and coding

      - `CLAUDE_OPUS_4_5_20251101("claude-opus-4-5-20251101")`

        Powerful intelligence for long-running agents and coding

      - `CLAUDE_SONNET_4_5("claude-sonnet-4-5")`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

      - `CLAUDE_SONNET_4_5_20250929("claude-sonnet-4-5-20250929")`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

    - `class BetaManagedAgentsModelConfigParams`

      An object that defines additional configuration control over model use

      - `BetaManagedAgentsModel id`

        The model that will power your agent.

        See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

      - `Optional<Effort> effort`

        How hard Claude works on each inference call. Accepts a bare level string (`"high"`) or `{"type": "high"}`. On create, omitting it resolves the per-model default; on update, omitting it leaves the stored value unchanged.

        - `enum BetaManagedAgentsEffortLevel`

          How hard Claude works on each turn. Higher levels favor reasoning depth over latency. Not all models accept every level; invalid combinations are rejected at create time.

          - `LOW("low")`

            Low effort. Favors latency over reasoning depth.

          - `MEDIUM("medium")`

            Medium effort. Balances latency and reasoning depth.

          - `HIGH("high")`

            High effort. Favors reasoning depth.

          - `XHIGH("xhigh")`

            Extra-high effort. Not all models accept this level.

          - `MAX("max")`

            Maximum effort. Favors reasoning depth over latency.

        - `class BetaManagedAgentsEffortLow`

          Low effort. Favors latency over reasoning depth.

          - `Type type`

        - `class BetaManagedAgentsEffortMedium`

          Medium effort. Balances latency and reasoning depth.

          - `Type type`

        - `class BetaManagedAgentsEffortHigh`

          High effort. Favors reasoning depth.

          - `Type type`

        - `class BetaManagedAgentsEffortXhigh`

          Extra-high effort. Not all models accept this level.

          - `Type type`

        - `class BetaManagedAgentsEffortMax`

          Maximum effort. Favors reasoning depth over latency.

          - `Type type`

      - `Optional<String> inferenceGeo`

        Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo. On update, `model` is whole-object replacement — omitting inference_geo clears it.

      - `Optional<Speed> speed`

        Inference speed mode. Defaults to `standard`.

        - `STANDARD("standard")`

        - `FAST("fast")`

  - `Optional<BetaManagedAgentsMultiagentParams> multiagent`

    Multiagent orchestration configuration. Full replacement. Omit to preserve; send null to clear.

  - `Optional<String> name`

    Human-readable name. Must be non-empty. Omit to preserve. Cannot be cleared.

    maxLength: 256

  - `Optional<List<BetaManagedAgentsSkillParams>> skills`

    Skills. Full replacement. Omit to preserve; send empty array or null to clear.

    - `class BetaManagedAgentsAnthropicSkillParams`

      An Anthropic-managed skill.

      - `Type type`

      - `String skillId`

        Identifier of the Anthropic skill (e.g., "xlsx").

        minLength: 1, maxLength: 64

      - `Optional<String> version`

        Version to pin. Defaults to latest if omitted.

        minLength: 1, maxLength: 64

    - `class BetaManagedAgentsCustomSkillParams`

      A user-created custom skill.

      - `Type type`

      - `String skillId`

        Tagged ID of the custom skill (e.g., "skill_01XJ5...").

        minLength: 1, maxLength: 64

      - `Optional<String> version`

        Version to pin. Defaults to latest if omitted.

        minLength: 1, maxLength: 64

  - `Optional<String> system`

    System prompt. Omit to preserve; send empty string or null to clear.

    maxLength: 100000

  - `Optional<List<Tool>> tools`

    Tool configurations available to the agent. Full replacement. Omit to preserve; send empty array or null to clear. Maximum of 256 tools across all toolsets allowed.

    - `class BetaManagedAgentsAgentToolset20260401Params`

      Configuration for built-in agent tools. Use this to enable or disable groups of tools available to the agent.

      - `Type type`

      - `Optional<List<BetaManagedAgentsAgentToolConfigParams>> configs`

        Per-tool configuration overrides.

        - `class BetaManagedAgentsBashToolConfigParams`

          Configuration override for the bash tool.

          - `Optional<Type> type`

          - `JsonValue name = "bash"`

            Must be "bash".

          - `Optional<Boolean> enabled`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `Optional<PermissionPolicy> permissionPolicy`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

              - `Type type`

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

              - `Type type`

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

              - `JsonValue type = "auto"`

        - `class BetaManagedAgentsEditToolConfigParams`

          Configuration override for the edit tool.

          - `Optional<Type> type`

          - `JsonValue name = "edit"`

            Must be "edit".

          - `Optional<Boolean> enabled`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `Optional<PermissionPolicy> permissionPolicy`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `class BetaManagedAgentsReadToolConfigParams`

          Configuration override for the read tool.

          - `Optional<Type> type`

          - `JsonValue name = "read"`

            Must be "read".

          - `Optional<Boolean> enabled`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `Optional<PermissionPolicy> permissionPolicy`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `class BetaManagedAgentsWriteToolConfigParams`

          Configuration override for the write tool.

          - `Optional<Type> type`

          - `JsonValue name = "write"`

            Must be "write".

          - `Optional<Boolean> enabled`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `Optional<PermissionPolicy> permissionPolicy`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `class BetaManagedAgentsGlobToolConfigParams`

          Configuration override for the glob tool.

          - `Optional<Type> type`

          - `JsonValue name = "glob"`

            Must be "glob".

          - `Optional<Boolean> enabled`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `Optional<PermissionPolicy> permissionPolicy`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `class BetaManagedAgentsGrepToolConfigParams`

          Configuration override for the grep tool.

          - `Optional<Type> type`

          - `JsonValue name = "grep"`

            Must be "grep".

          - `Optional<Boolean> enabled`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `Optional<PermissionPolicy> permissionPolicy`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `class BetaManagedAgentsWebFetchToolConfigParams`

          Configuration override for the web_fetch tool.

          - `Optional<Type> type`

          - `JsonValue name = "web_fetch"`

            Must be "web_fetch".

          - `Optional<List<String>> allowedDomains`

            Only fetch URLs whose host is one of these domains or a subdomain of one. Each entry is a plain hostname like "docs.example.com" (no scheme, port, or path). At most 64 entries; an empty list is rejected (omit the field instead). Cannot be combined with blocked_domains.

          - `Optional<List<String>> blockedDomains`

            Never fetch URLs whose host is one of these domains or a subdomain of one. Each entry is a plain hostname like "ads.example.com" (no scheme, port, or path). At most 64 entries; an empty list is rejected (omit the field instead). Cannot be combined with allowed_domains.

          - `Optional<Boolean> enabled`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `Optional<Long> maxContentTokens`

            Maximum number of tokens of fetched text content to include in context per call. Does not apply to binary content such as PDFs.

            format: int32

          - `Optional<PermissionPolicy> permissionPolicy`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `Optional<BetaManagedAgentsWebFetchUrlSourcesParams> urlSources`

            Which sources contribute URLs the tool may fetch. Omit to allow every source.

            - `Optional<BetaManagedAgentsWebFetchUrlSourceToolFilterParams> clientToolResults`

              Which custom tools' results contribute URLs that may be fetched: "all" (the default), "none", or an only or except list. Each name in a list must be a custom tool in the same tools array.

              - `enum BetaManagedAgentsWebFetchUrlSourceShorthand`

                String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

                - `ALL("all")`

                - `NONE("none")`

              - `class BetaManagedAgentsWebFetchUrlSourceToolFilter: union`

                Which tools' results contribute URLs that may be fetched.

                - `class BetaManagedAgentsWebFetchUrlSourceAll`

                  Every URL from this source may be fetched. This is the default.

                  - `JsonValue type = "all"`

                - `class BetaManagedAgentsWebFetchUrlSourceNone`

                  This source contributes no URLs that may be fetched.

                  - `JsonValue type = "none"`

                - `class BetaManagedAgentsWebFetchUrlSourceOnly`

                  Only the named tools' results contribute URLs that may be fetched.

                  - `JsonValue type = "only"`

                  - `List<BetaManagedAgentsWebFetchUrlSourceToolReference> tools`

                    The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

                    - `JsonValue type = "tool_reference"`

                      Must be "tool_reference".

                    - `String name`

                      Name of the tool. Compared exactly, so upper and lower case letters are different.

                      minLength: 1, maxLength: 128

                - `class BetaManagedAgentsWebFetchUrlSourceExcept`

                  Every tool's results contribute URLs that may be fetched, except the named tools' results.

                  - `JsonValue type = "except"`

                  - `List<BetaManagedAgentsWebFetchUrlSourceToolReference> tools`

                    The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

                    - `JsonValue type = "tool_reference"`

                      Must be "tool_reference".

                    - `String name`

                      Name of the tool. Compared exactly, so upper and lower case letters are different.

                      minLength: 1, maxLength: 128

            - `Optional<BetaManagedAgentsWebFetchUrlSourceToolFilterParams> serverToolResults`

              Which of the web_search and web_fetch tools' results contribute URLs that may be fetched: "all" (the default), "none", or an only or except list. Each name in a list must be "web_search" or "web_fetch".

            - `Optional<BetaManagedAgentsWebFetchUrlSourceUserInputParams> userInput`

              Whether URLs in the text of user messages may be fetched: "all" (the default) or "none".

              - `enum BetaManagedAgentsWebFetchUrlSourceShorthand`

                String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

              - `class BetaManagedAgentsWebFetchUrlSourceUserInput: union`

                Whether URLs in the text of user messages may be fetched.

                - `class BetaManagedAgentsWebFetchUrlSourceAll`

                  Every URL from this source may be fetched. This is the default.

                - `class BetaManagedAgentsWebFetchUrlSourceNone`

                  This source contributes no URLs that may be fetched.

        - `class BetaManagedAgentsWebSearchToolConfigParams`

          Configuration override for the web_search tool.

          - `Optional<Type> type`

          - `JsonValue name = "web_search"`

            Must be "web_search".

          - `Optional<List<String>> allowedDomains`

            Only return search results whose host is one of these domains or a subdomain of one. Each entry is a plain hostname like "docs.example.com" (no scheme or port; an optional path suffix is accepted). At most 64 entries; an empty list is rejected (omit the field instead). Cannot be combined with blocked_domains.

          - `Optional<List<String>> blockedDomains`

            Never return search results whose host is one of these domains or a subdomain of one. Each entry is a plain hostname like "ads.example.com" (no scheme or port; an optional path suffix is accepted). At most 64 entries; an empty list is rejected (omit the field instead). Cannot be combined with allowed_domains.

          - `Optional<Boolean> enabled`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `Optional<PermissionPolicy> permissionPolicy`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `Optional<BetaManagedAgentsUserLocation> userLocation`

            Approximate user location for search result localization.

            - `JsonValue type = "approximate"`

              Location precision. Only "approximate" is supported.

            - `Optional<String> city`

              City name.

              minLength: 1, maxLength: 255

            - `Optional<String> country`

              Two-letter ISO 3166-1 country code, uppercase.

            - `Optional<String> region`

              Region or state name.

              minLength: 1, maxLength: 255

            - `Optional<String> timezone`

              IANA timezone identifier, e.g. "America/Los_Angeles".

              minLength: 1, maxLength: 255

      - `Optional<BetaManagedAgentsAgentToolsetDefaultConfigParams> defaultConfig`

        Default configuration applied to all tools in this set.

        - `Optional<Boolean> enabled`

          Whether tools are enabled and available to Claude by default. Defaults to true if not specified.

        - `Optional<PermissionPolicy> permissionPolicy`

          Default permission policy for tools. Controls whether tool calls are auto-approved or require confirmation.

          - `class BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `class BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `class BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `class BetaManagedAgentsMcpToolsetParams`

      Configuration for tools from an MCP server defined in `mcp_servers`.

      - `Type type`

      - `String mcpServerName`

        Name of the MCP server. Must match a server name from the mcp_servers array. 1-255 characters.

        minLength: 1, maxLength: 255

      - `Optional<List<BetaManagedAgentsMcpToolConfigParams>> configs`

        Per-tool configuration overrides.

        - `String name`

          Name of the MCP tool to configure. 1-128 characters.

          minLength: 1, maxLength: 128

        - `Optional<Boolean> enabled`

          Whether this tool is enabled. Overrides the `default_config` setting.

        - `Optional<PermissionPolicy> permissionPolicy`

          Permission policy for this tool. Overrides the `default_config` setting.

          - `class BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `class BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `class BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Optional<BetaManagedAgentsMcpToolsetDefaultConfigParams> defaultConfig`

        Default configuration for all tools from this server.

        - `Optional<Boolean> enabled`

          Whether tools are enabled by default. Defaults to true if not specified.

        - `Optional<PermissionPolicy> permissionPolicy`

          Default permission policy for tools from this server.

          - `class BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `class BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `class BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `class BetaManagedAgentsCustomToolParams`

      A custom tool that is executed by the API client rather than the agent. When the agent calls this tool, an `agent.custom_tool_use` event is emitted and the session goes idle, waiting for the client to provide the result via a `user.custom_tool_result` event.

      - `Type type`

      - `String description`

        Description of what the tool does, shown to the agent to help it decide when to use the tool.

        minLength: 1

      - `BetaManagedAgentsCustomToolInputSchema inputSchema`

        JSON Schema defining the expected input parameters for the tool.

        - `JsonValue type = "object"`

        - `Optional<Properties> properties`

        - `Optional<List<String>> required`

      - `String name`

        Unique name for the tool. 1-128 characters; letters, digits, underscores, and hyphens.

        minLength: 1, maxLength: 128

  - `Optional<Long> version`

    The agent's current version, used to prevent concurrent overwrites. Obtain this value from a create or retrieve response. Must be at least 1 if specified. When supplied, the request fails if it does not match the server's current version; omit to apply the update unconditionally.

    format: int32

## Returns

- `class BetaManagedAgentsAgent`

  A Managed Agents `agent`.

  - `Type type`

  - `String id`

  - `Optional<LocalDateTime> archivedAt`

    When the agent was archived. Null if not archived.

    format: date-time

  - `LocalDateTime createdAt`

    A timestamp in RFC 3339 format

    format: date-time

  - `Optional<String> description`

  - `BetaManagedAgentsExecutionIdentity executionIdentity`

    Execution principal for runs of this agent. Always present; `{"type": "service_account"}` when runs carry no customer-named principal.

    - `class BetaManagedAgentsAwsRoleExecutionIdentity`

      An AWS IAM role principal as returned in API responses.

      - `JsonValue type = "aws_role"`

      - `String roleArn`

        The IAM role's ARN.

    - `class BetaManagedAgentsServiceAccountExecutionIdentity`

      The Anthropic-managed service account as returned in API responses.

      - `JsonValue type = "service_account"`

  - `List<BetaManagedAgentsMcpServerUrlDefinition> mcpServers`

    - `Type type`

    - `String name`

    - `String url`

  - `Metadata metadata`

  - `BetaManagedAgentsModelConfig model`

    Model identifier and configuration.

    - `BetaManagedAgentsModel id`

      The model that will power your agent.

      See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

      - `CLAUDE_HAIKU_5_5("claude-haiku-5-5")`

        Fastest model for high-volume, real-time tasks

      - `CLAUDE_SONNET_5_5("claude-sonnet-5-5")`

        Efficient model for coding and agents

      - `CLAUDE_OPUS_5_5("claude-opus-5-5")`

        Powerful intelligence for coding, knowledge work, and long-running agents

      - `CLAUDE_FABLE_5_1("claude-fable-5-1")`

        Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

      - `CLAUDE_SONNET_5("claude-sonnet-5")`

        Efficient model for coding and agents

      - `CLAUDE_FABLE_5("claude-fable-5")`

        Next generation of intelligence for the hardest knowledge work and coding problems

      - `CLAUDE_OPUS_5("claude-opus-5")`

        Powerful intelligence for long-running agents and coding

      - `CLAUDE_OPUS_4_8("claude-opus-4-8")`

        Powerful intelligence for long-running agents and coding

      - `CLAUDE_OPUS_4_7("claude-opus-4-7")`

        Powerful intelligence for long-running agents and coding

      - `CLAUDE_OPUS_4_6("claude-opus-4-6")`

        Powerful intelligence for long-running agents and coding

      - `CLAUDE_SONNET_4_6("claude-sonnet-4-6")`

        Best combination of speed and intelligence

      - `CLAUDE_HAIKU_4_5("claude-haiku-4-5")`

      - `CLAUDE_HAIKU_4_5_20251001("claude-haiku-4-5-20251001")`

      - `CLAUDE_OPUS_4_5("claude-opus-4-5")`

        Powerful intelligence for long-running agents and coding

      - `CLAUDE_OPUS_4_5_20251101("claude-opus-4-5-20251101")`

        Powerful intelligence for long-running agents and coding

      - `CLAUDE_SONNET_4_5("claude-sonnet-4-5")`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

      - `CLAUDE_SONNET_4_5_20250929("claude-sonnet-4-5-20250929")`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

    - `Optional<Effort> effort`

      How hard Claude works on each inference call. One of `low`, `medium`, `high`, `xhigh`, `max`. Always present; resolved to the per-model default at save time when not supplied.

      - `class BetaManagedAgentsEffortLow`

        Low effort. Favors latency over reasoning depth.

        - `Type type`

      - `class BetaManagedAgentsEffortMedium`

        Medium effort. Balances latency and reasoning depth.

        - `Type type`

      - `class BetaManagedAgentsEffortHigh`

        High effort. Favors reasoning depth.

        - `Type type`

      - `class BetaManagedAgentsEffortXhigh`

        Extra-high effort. Not all models accept this level.

        - `Type type`

      - `class BetaManagedAgentsEffortMax`

        Maximum effort. Favors reasoning depth over latency.

        - `Type type`

    - `Optional<String> inferenceGeo`

      Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.

    - `Optional<Speed> speed`

      Inference speed mode. `fast` provides significantly faster output token generation at premium pricing. Defaults to `standard`. Not all models support `fast`; invalid combinations are rejected at create time.

      - `STANDARD("standard")`

      - `FAST("fast")`

  - `Optional<BetaManagedAgentsMultiagent> multiagent`

    Multiagent orchestration configuration. Null when the agent is single-threaded.

    - `class BetaManagedAgentsMultiagentCoordinator`

      Resolved coordinator topology with a concrete agent roster.

      - `Type type`

      - `List<Agent> agents`

        Agents the coordinator may spawn as session threads, each resolved to a specific version.

        - `class BetaManagedAgentsAgentReference`

          A resolved agent reference with a concrete version.

          - `Type type`

          - `String id`

          - `long version`

            format: int32

        - `class BetaManagedAgentsAdvisor`

          Platform advisor roster entry: a model the session's primary thread may consult mid-turn.

          - `Type type`

          - `String model`

            The advisor model id.

    - `class BetaManagedAgentsMultiagent20261001`

      Resolved multiagent configuration with three members, each enabled or disabled on its own.

      - `JsonValue type = "multiagent_20261001"`

      - `BetaManagedAgentsMultiagentAdvisor advisor`

        Whether the session's primary thread can consult an advisor model.

        - `class BetaManagedAgentsMultiagentAdvisorEnabled`

          The session's primary thread can consult `model` mid-turn.

          - `JsonValue type = "enabled"`

          - `String model`

            The advisor model id.

        - `class BetaManagedAgentsMultiagentAdvisorDisabled`

          The agent has no advisor.

          - `JsonValue type = "disabled"`

      - `BetaManagedAgentsMultiagentSubagents subagents`

        Whether the agent can spawn session threads.

        - `class BetaManagedAgentsMultiagentSubagentsEnabled`

          The agent can spawn session threads.

          - `JsonValue type = "enabled"`

          - `BetaManagedAgentsMultiagentInlineAgents inlineAgents`

            Whether the agent can define inline agents, which are not saved, when it spawns session threads.

            - `class BetaManagedAgentsMultiagentInlineAgentsEnabled`

              The agent can define inline agents.

              - `JsonValue type = "enabled"`

            - `class BetaManagedAgentsMultiagentInlineAgentsDisabled`

              The agent cannot define inline agents.

              - `JsonValue type = "disabled"`

          - `List<BetaManagedAgentsAgentReference> predefinedAgents`

            Predefined agents, which are saved agents that this agent can spawn as session threads, each resolved to a specific version.

            - `Type type`

            - `String id`

            - `long version`

              format: int32

        - `class BetaManagedAgentsMultiagentSubagentsDisabled`

          The agent cannot spawn session threads.

          - `JsonValue type = "disabled"`

      - `BetaManagedAgentsMultiagentWorkflows workflows`

        Whether the agent can start workflow runs.

        - `class BetaManagedAgentsMultiagentWorkflowsEnabled`

          The agent can start workflow runs.

          - `JsonValue type = "enabled"`

          - `BetaManagedAgentsMultiagentInlineAgents inlineAgents`

            Whether a run's plan can define inline agents, which are not saved.

          - `List<BetaManagedAgentsAgentReference> predefinedAgents`

            Predefined agents, which are saved agents that a run's plan can use, each resolved to a specific version.

            - `Type type`

            - `String id`

            - `long version`

              format: int32

        - `class BetaManagedAgentsMultiagentWorkflowsDisabled`

          The agent cannot start workflow runs.

          - `JsonValue type = "disabled"`

  - `String name`

  - `List<Skill> skills`

    - `class BetaManagedAgentsAnthropicSkill`

      A resolved Anthropic-managed skill.

      - `Type type`

      - `String skillId`

      - `String version`

    - `class BetaManagedAgentsCustomSkill`

      A resolved user-created custom skill.

      - `Type type`

      - `String skillId`

      - `String version`

  - `Optional<String> system`

  - `List<Tool> tools`

    - `class BetaManagedAgentsAgentToolset20260401`

      - `Type type`

      - `List<BetaManagedAgentsAgentToolConfig> configs`

        - `class BetaManagedAgentsBashToolConfig`

          Configuration for the bash tool.

          - `JsonValue type = "bash"`

          - `boolean enabled`

          - `JsonValue name = "bash"`

          - `PermissionPolicy permissionPolicy`

            Permission policy for tool execution.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

              - `Type type`

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

              - `Type type`

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

              - `JsonValue type = "auto"`

        - `class BetaManagedAgentsEditToolConfig`

          Configuration for the edit tool.

          - `JsonValue type = "edit"`

          - `boolean enabled`

          - `JsonValue name = "edit"`

          - `PermissionPolicy permissionPolicy`

            Permission policy for tool execution.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `class BetaManagedAgentsReadToolConfig`

          Configuration for the read tool.

          - `JsonValue type = "read"`

          - `boolean enabled`

          - `JsonValue name = "read"`

          - `PermissionPolicy permissionPolicy`

            Permission policy for tool execution.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `class BetaManagedAgentsWriteToolConfig`

          Configuration for the write tool.

          - `JsonValue type = "write"`

          - `boolean enabled`

          - `JsonValue name = "write"`

          - `PermissionPolicy permissionPolicy`

            Permission policy for tool execution.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `class BetaManagedAgentsGlobToolConfig`

          Configuration for the glob tool.

          - `JsonValue type = "glob"`

          - `boolean enabled`

          - `JsonValue name = "glob"`

          - `PermissionPolicy permissionPolicy`

            Permission policy for tool execution.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `class BetaManagedAgentsGrepToolConfig`

          Configuration for the grep tool.

          - `JsonValue type = "grep"`

          - `boolean enabled`

          - `JsonValue name = "grep"`

          - `PermissionPolicy permissionPolicy`

            Permission policy for tool execution.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `class BetaManagedAgentsWebFetchToolConfig`

          Configuration for the web_fetch tool.

          - `JsonValue type = "web_fetch"`

          - `boolean enabled`

          - `JsonValue name = "web_fetch"`

          - `PermissionPolicy permissionPolicy`

            Permission policy for tool execution.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `Optional<BetaManagedAgentsWebFetchUrlSources> urlSources`

            Which sources contribute URLs the tool may fetch, always in the object form. Null when not set, which allows every source.

            - `Optional<BetaManagedAgentsWebFetchUrlSourceToolFilter> clientToolResults`

              Which custom tools' results contribute URLs that may be fetched. Null when not set, which allows every custom tool's results.

              - `class BetaManagedAgentsWebFetchUrlSourceAll`

                Every URL from this source may be fetched. This is the default.

                - `JsonValue type = "all"`

              - `class BetaManagedAgentsWebFetchUrlSourceNone`

                This source contributes no URLs that may be fetched.

                - `JsonValue type = "none"`

              - `class BetaManagedAgentsWebFetchUrlSourceOnly`

                Only the named tools' results contribute URLs that may be fetched.

                - `JsonValue type = "only"`

                - `List<BetaManagedAgentsWebFetchUrlSourceToolReference> tools`

                  The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

                  - `JsonValue type = "tool_reference"`

                    Must be "tool_reference".

                  - `String name`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

              - `class BetaManagedAgentsWebFetchUrlSourceExcept`

                Every tool's results contribute URLs that may be fetched, except the named tools' results.

                - `JsonValue type = "except"`

                - `List<BetaManagedAgentsWebFetchUrlSourceToolReference> tools`

                  The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

                  - `JsonValue type = "tool_reference"`

                    Must be "tool_reference".

                  - `String name`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

            - `Optional<BetaManagedAgentsWebFetchUrlSourceToolFilter> serverToolResults`

              Which of the web_search and web_fetch tools' results contribute URLs that may be fetched. Null when not set, which allows both.

            - `Optional<BetaManagedAgentsWebFetchUrlSourceUserInput> userInput`

              Whether URLs in the text of user messages may be fetched. Null when not set, which allows them.

              - `class BetaManagedAgentsWebFetchUrlSourceAll`

                Every URL from this source may be fetched. This is the default.

              - `class BetaManagedAgentsWebFetchUrlSourceNone`

                This source contributes no URLs that may be fetched.

          - `Optional<List<String>> allowedDomains`

          - `Optional<List<String>> blockedDomains`

          - `Optional<Long> maxContentTokens`

            format: int32

        - `class BetaManagedAgentsWebSearchToolConfig`

          Configuration for the web_search tool.

          - `JsonValue type = "web_search"`

          - `boolean enabled`

          - `JsonValue name = "web_search"`

          - `PermissionPolicy permissionPolicy`

            Permission policy for tool execution.

            - `class BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `class BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `class BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `Optional<List<String>> allowedDomains`

          - `Optional<List<String>> blockedDomains`

          - `Optional<BetaManagedAgentsUserLocation> userLocation`

            Approximate user location for search result localization.

            - `JsonValue type = "approximate"`

              Location precision. Only "approximate" is supported.

            - `Optional<String> city`

              City name.

              minLength: 1, maxLength: 255

            - `Optional<String> country`

              Two-letter ISO 3166-1 country code, uppercase.

            - `Optional<String> region`

              Region or state name.

              minLength: 1, maxLength: 255

            - `Optional<String> timezone`

              IANA timezone identifier, e.g. "America/Los_Angeles".

              minLength: 1, maxLength: 255

      - `BetaManagedAgentsAgentToolsetDefaultConfig defaultConfig`

        Resolved default configuration for agent tools.

        - `boolean enabled`

        - `PermissionPolicy permissionPolicy`

          Permission policy for tool execution.

          - `class BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `class BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `class BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `class BetaManagedAgentsMcpToolset`

      - `Type type`

      - `List<BetaManagedAgentsMcpToolConfig> configs`

        - `boolean enabled`

        - `String name`

        - `PermissionPolicy permissionPolicy`

          Permission policy for tool execution.

          - `class BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `class BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `class BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `BetaManagedAgentsMcpToolsetDefaultConfig defaultConfig`

        Resolved default configuration for all tools from an MCP server.

        - `boolean enabled`

        - `PermissionPolicy permissionPolicy`

          Permission policy for tool execution.

          - `class BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `class BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `class BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `String mcpServerName`

    - `class BetaManagedAgentsCustomTool`

      A custom tool as returned in API responses.

      - `Type type`

      - `String description`

      - `BetaManagedAgentsCustomToolInputSchema inputSchema`

        JSON Schema for custom tool input parameters.

        - `JsonValue type = "object"`

        - `Optional<Properties> properties`

        - `Optional<List<String>> required`

      - `String name`

  - `LocalDateTime updatedAt`

    A timestamp in RFC 3339 format

    format: date-time

  - `long version`

    The agent's current version. Starts at 1 and increments when the agent is modified.

    format: int32

## Example

```java
package com.anthropic.example;

import com.anthropic.client.AnthropicClient;
import com.anthropic.client.okhttp.AnthropicOkHttpClient;
import com.anthropic.models.beta.agents.AgentUpdateParams;
import com.anthropic.models.beta.agents.BetaManagedAgentsAgent;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        AnthropicClient client = AnthropicOkHttpClient.fromEnv();

        BetaManagedAgentsAgent betaManagedAgentsAgent = client.beta().agents().update("agent_011CZkYpogX7uDKUyvBTophP");
    }
}
```

### Response (200)

```json
{
  "id": "agent_011CZkYpogX7uDKUyvBTophP",
  "archived_at": null,
  "created_at": "2026-03-15T10:00:00Z",
  "description": "A general-purpose starter agent.",
  "execution_identity": {
    "type": "service_account"
  },
  "mcp_servers": [
    {
      "name": "example-mcp",
      "type": "url",
      "url": "https://example-server.modelcontextprotocol.io/sse"
    }
  ],
  "metadata": {
    "foo": "bar"
  },
  "model": {
    "id": "claude-opus-5-5",
    "effort": {
      "type": "low"
    },
    "inference_geo": "inference_geo",
    "speed": "standard"
  },
  "multiagent": {
    "advisor": {
      "type": "disabled"
    },
    "subagents": {
      "inline_agents": {
        "type": "enabled"
      },
      "predefined_agents": [
        {
          "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
          "type": "agent",
          "version": 1
        }
      ],
      "type": "enabled"
    },
    "type": "multiagent_20261001",
    "workflows": {
      "inline_agents": {
        "type": "enabled"
      },
      "predefined_agents": [
        {
          "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
          "type": "agent",
          "version": 1
        }
      ],
      "type": "enabled"
    }
  },
  "name": "My First Agent",
  "skills": [
    {
      "skill_id": "xlsx",
      "type": "anthropic",
      "version": "1"
    },
    {
      "skill_id": "skill_011CZkZFNu9hAbo3jZPRgTmx",
      "type": "custom",
      "version": "2"
    }
  ],
  "system": "You are a general-purpose agent that can research, write code, run commands, and use connected tools to complete the user's task end to end.",
  "tools": [
    {
      "configs": [
        {
          "enabled": true,
          "name": "bash",
          "permission_policy": {
            "type": "always_allow"
          },
          "type": "bash"
        }
      ],
      "default_config": {
        "enabled": true,
        "permission_policy": {
          "type": "always_ask"
        }
      },
      "type": "agent_toolset_20260401"
    }
  ],
  "type": "agent",
  "updated_at": "2026-03-15T10:00:00Z",
  "version": 1
}
```
