Claude Platform Docs

Update Agent

client.Beta.Agents.Update(ctx, agentID, params) (*BetaManagedAgentsAgent, error)
POST/v1/agents/{agent_id}

Update Agent

Parameters
agentID string
params BetaAgentUpdateParams
Description param.Field[string] Optional

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

maxLength2048
MCPServers param.Field[[]BetaManagedAgentsURLMCPServerParamsResp] Optional

Body param: 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.

Name string

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

minLength1
maxLength255
Type BetaManagedAgentsURLMCPServerParamsType
URL string

Endpoint URL for the MCP server.

maxLength2048
Metadata param.Field[map[string, string]] Optional

Body param: 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.

Model param.Field[BetaManagedAgentsModelConfigParamsResp] Optional

Body param: Model identifier. Accepts the model string, e.g. claude-opus-5, or a model_config object for additional configuration control. Omit to preserve. Cannot be cleared.

type BetaManagedAgentsModelConfigParamsResp struct{…}

An object that defines additional configuration control over model use

Multiagent param.Field[BetaManagedAgentsMultiagentParamsResp] Optional

Body param: A coordinator topology: the session's primary thread orchestrates work by spawning session threads, each running an agent drawn from the agents roster.

Name param.Field[string] Optional

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

maxLength256
Skills param.Field[[]BetaManagedAgentsSkillParamsUnionResp] Optional

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

type BetaManagedAgentsAnthropicSkillParamsResp struct{…}

An Anthropic-managed skill.

SkillID string

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

minLength1
maxLength64
Type BetaManagedAgentsAnthropicSkillParamsType
Version string Optional

Version to pin. Defaults to latest if omitted.

minLength1
maxLength64
type BetaManagedAgentsCustomSkillParamsResp struct{…}

A user-created custom skill.

SkillID string

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

minLength1
maxLength64
Type BetaManagedAgentsCustomSkillParamsType
Version string Optional

Version to pin. Defaults to latest if omitted.

minLength1
maxLength64
System param.Field[string] Optional

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

maxLength100000
Tools param.Field[[]BetaAgentUpdateParamsToolUnion] Optional

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

type BetaManagedAgentsAgentToolset20260401ParamsResp struct{…}

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

type BetaManagedAgentsMCPToolsetParamsResp struct{…}

Configuration for tools from an MCP server defined in mcp_servers.

type BetaManagedAgentsCustomToolParamsResp struct{…}

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.

Description string

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

minLength1

JSON Schema for custom tool input parameters.

Type Object
Properties map[string, any] Optional
Required []string Optional
Name string

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

minLength1
maxLength128
Type BetaManagedAgentsCustomToolParamsType
Version param.Field[int64] Optional

Body param: 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.

formatint32
Betas param.Field[[]AnthropicBeta] Optional

Header param: Optional header to specify the beta version(s) you want to use.

string
type AnthropicBeta string
One of the following:
const AnthropicBetaMessageBatches2024_09_24 AnthropicBeta = "message-batches-2024-09-24"
const AnthropicBetaPromptCaching2024_07_31 AnthropicBeta = "prompt-caching-2024-07-31"
const AnthropicBetaComputerUse2024_10_22 AnthropicBeta = "computer-use-2024-10-22"
const AnthropicBetaComputerUse2025_01_24 AnthropicBeta = "computer-use-2025-01-24"
const AnthropicBetaPDFs2024_09_25 AnthropicBeta = "pdfs-2024-09-25"
const AnthropicBetaTokenCounting2024_11_01 AnthropicBeta = "token-counting-2024-11-01"
const AnthropicBetaTokenEfficientTools2025_02_19 AnthropicBeta = "token-efficient-tools-2025-02-19"
const AnthropicBetaOutput128k2025_02_19 AnthropicBeta = "output-128k-2025-02-19"
const AnthropicBetaFilesAPI2025_04_14 AnthropicBeta = "files-api-2025-04-14"
const AnthropicBetaMCPClient2025_04_04 AnthropicBeta = "mcp-client-2025-04-04"
const AnthropicBetaMCPClient2025_11_20 AnthropicBeta = "mcp-client-2025-11-20"
const AnthropicBetaDevFullThinking2025_05_14 AnthropicBeta = "dev-full-thinking-2025-05-14"
const AnthropicBetaInterleavedThinking2025_05_14 AnthropicBeta = "interleaved-thinking-2025-05-14"
const AnthropicBetaCodeExecution2025_05_22 AnthropicBeta = "code-execution-2025-05-22"
const AnthropicBetaExtendedCacheTTL2025_04_11 AnthropicBeta = "extended-cache-ttl-2025-04-11"
const AnthropicBetaContext1m2025_08_07 AnthropicBeta = "context-1m-2025-08-07"
const AnthropicBetaContextManagement2025_06_27 AnthropicBeta = "context-management-2025-06-27"
const AnthropicBetaModelContextWindowExceeded2025_08_26 AnthropicBeta = "model-context-window-exceeded-2025-08-26"
const AnthropicBetaSkills2025_10_02 AnthropicBeta = "skills-2025-10-02"
const AnthropicBetaFastMode2026_02_01 AnthropicBeta = "fast-mode-2026-02-01"
const AnthropicBetaOutput300k2026_03_24 AnthropicBeta = "output-300k-2026-03-24"
const AnthropicBetaUserProfiles2026_03_24 AnthropicBeta = "user-profiles-2026-03-24"
const AnthropicBetaUserProfiles2026_08_18 AnthropicBeta = "user-profiles-2026-08-18"
const AnthropicBetaAdvisorTool2026_03_01 AnthropicBeta = "advisor-tool-2026-03-01"
const AnthropicBetaManagedAgents2026_04_01 AnthropicBeta = "managed-agents-2026-04-01"
const AnthropicBetaCacheDiagnosis2026_04_07 AnthropicBeta = "cache-diagnosis-2026-04-07"
const AnthropicBetaDreaming2026_04_21 AnthropicBeta = "dreaming-2026-04-21"
const AnthropicBetaThinkingTokenCount2026_05_13 AnthropicBeta = "thinking-token-count-2026-05-13"
const AnthropicBetaServerSideFallback2026_06_01 AnthropicBeta = "server-side-fallback-2026-06-01"
const AnthropicBetaServerSideFallback2026_07_01 AnthropicBeta = "server-side-fallback-2026-07-01"
const AnthropicBetaFallbackCredit2026_06_01 AnthropicBeta = "fallback-credit-2026-06-01"
const AnthropicBetaFallbackCredit2026_07_01 AnthropicBeta = "fallback-credit-2026-07-01"
const AnthropicBetaAgentMemory2026_07_22 AnthropicBeta = "agent-memory-2026-07-22"
const AnthropicBetaMidConversationToolChanges2026_07_01 AnthropicBeta = "mid-conversation-tool-changes-2026-07-01"
const AnthropicBetaCompact2026_01_12 AnthropicBeta = "compact-2026-01-12"
const AnthropicBetaComputerUse2025_11_24 AnthropicBeta = "computer-use-2025-11-24"
const AnthropicBetaMCPTunnels2026_06_22 AnthropicBeta = "mcp-tunnels-2026-06-22"
const AnthropicBetaStructuredOutputs2025_11_13 AnthropicBeta = "structured-outputs-2025-11-13"
const AnthropicBetaTaskBudgets2026_03_13 AnthropicBeta = "task-budgets-2026-03-13"
const AnthropicBetaThinkingDisplayUpdates2026_08_18 AnthropicBeta = "thinking-display-updates-2026-08-18"
const AnthropicBetaCEUserManagement2026_07_13 AnthropicBeta = "ce-user-management-2026-07-13"
Returns
type BetaManagedAgentsAgent struct{…}

A Managed Agents agent.

Update Agent

package main

import (
	"context"
	"fmt"

	"github.com/anthropics/anthropic-sdk-go"
	"github.com/anthropics/anthropic-sdk-go/option"
)

func main() {
	client := anthropic.NewClient(
		option.WithAPIKey("my-anthropic-api-key"),
	)
	betaManagedAgentsAgent, err := client.Beta.Agents.Update(
		context.TODO(),
		"agent_011CZkYpogX7uDKUyvBTophP",
		anthropic.BetaAgentUpdateParams{
			Description: anthropic.String("updated"),
		},
	)
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", betaManagedAgentsAgent.ID)
}
{
  "id": "agent_011CZkYpogX7uDKUyvBTophP",
  "archived_at": null,
  "created_at": "2026-03-15T10:00:00Z",
  "description": "A general-purpose starter agent.",
  "mcp_servers": [
    {
      "name": "example-mcp",
      "type": "url",
      "url": "https://example-server.modelcontextprotocol.io/sse"
    }
  ],
  "metadata": {
    "foo": "bar"
  },
  "model": {
    "id": "claude-opus-5",
    "effort": {
      "type": "low"
    },
    "inference_geo": "inference_geo",
    "speed": "standard"
  },
  "multiagent": {
    "agents": [
      {
        "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
        "type": "agent",
        "version": 1
      }
    ],
    "type": "coordinator"
  },
  "name": "My First Agent",
  "skills": [
    {
      "skill_id": "xlsx",
      "type": "anthropic",
      "version": "1"
    },
    {
      "skill_id": "skill_011CZkZFNu9hAbo3jZPRgTlx",
      "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
}
Returns Examples
{
  "id": "agent_011CZkYpogX7uDKUyvBTophP",
  "archived_at": null,
  "created_at": "2026-03-15T10:00:00Z",
  "description": "A general-purpose starter agent.",
  "mcp_servers": [
    {
      "name": "example-mcp",
      "type": "url",
      "url": "https://example-server.modelcontextprotocol.io/sse"
    }
  ],
  "metadata": {
    "foo": "bar"
  },
  "model": {
    "id": "claude-opus-5",
    "effort": {
      "type": "low"
    },
    "inference_geo": "inference_geo",
    "speed": "standard"
  },
  "multiagent": {
    "agents": [
      {
        "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
        "type": "agent",
        "version": 1
      }
    ],
    "type": "coordinator"
  },
  "name": "My First Agent",
  "skills": [
    {
      "skill_id": "xlsx",
      "type": "anthropic",
      "version": "1"
    },
    {
      "skill_id": "skill_011CZkZFNu9hAbo3jZPRgTlx",
      "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
}