Claude Platform Docs

Créer un agent

beta.agents.create(**kwargs) -> BetaManagedAgentsAgent
POST/v1/agents

Créer un agent

Parameters

Model identifier. Accepts the model string, e.g. claude-opus-5-5, or a model_config object for additional configuration control

One of the following:
type BetaManagedAgentsModel = :"claude-haiku-5-5" | :"claude-sonnet-5-5" | :"claude-opus-5-5" | 14 more | String

The model that will power your agent.

See models for additional details and options.

One of the following:
class BetaManagedAgentsModelConfigParams { id, effort, inference_geo, speed }

An object that defines additional configuration control over model use

name: String

Human-readable name for the agent.

minLength1
maxLength256
description: String

Description of what the agent does.

maxLength2048

Execution principal for runs of this agent. Omitting it, sending null, or sending {"type": "service_account"} stores the default.

One of the following:
class BetaManagedAgentsAWSRoleExecutionIdentityParams { type: :aws_role, role_arn }

An AWS IAM role principal.

type: :aws_role
role_arn: String

The IAM role's ARN, e.g. "arn:aws:iam::123456789012:role/my-agent-runner". Maximum 2048 characters.

maxLength2048
class BetaManagedAgentsServiceAccountExecutionIdentityParams { type: :service_account }

The Anthropic-managed service account — the default execution principal. Carries no identifier.

type: :service_account
mcp_servers: Array[BetaManagedAgentsURLMCPServerParams { type: :url, name, url }]

MCP servers this agent connects to. Maximum 20. Names must be unique within the array. Every server must be referenced by an mcp_toolset in tools; unreferenced servers are rejected. See the MCP connector guide.

type: :url
name: String

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

minLength1
maxLength255
url: String

Endpoint URL for the MCP server.

maxLength2048
metadata: Hash[Symbol, String]

Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.

Multiagent orchestration configuration.

One of the following:
class BetaManagedAgentsMultiagentCoordinatorParams { type: :coordinator, agents }

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

class BetaManagedAgentsMultiagent20261001Params { type: :multiagent_20261001, advisor, subagents, workflows }

Multiagent configuration with three members, each enabled or disabled on its own. On an update, if the agent's stored multiagent also has type multiagent_20261001, this configuration is merged into the stored one, level by level, instead of replacing it. A key that the update omits keeps its stored value. A key sent as null takes its default, on create as well, so "workflows": null enables workflows. An object sent with a type other than the stored one replaces the stored object, and the keys that it omits take their defaults. A predefined_agents list that is sent replaces the stored list. Every object that is sent needs its type, and an enabled advisor needs its model. Other validation applies to the merged result.

Skills available to the agent.

One of the following:
class BetaManagedAgentsAnthropicSkillParams { type: :anthropic, skill_id, version }

An Anthropic-managed skill.

type: :anthropic
skill_id: String

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

minLength1
maxLength64
version: String

Version to pin. Defaults to latest if omitted.

minLength1
maxLength64
class BetaManagedAgentsCustomSkillParams { type: :custom, skill_id, version }

A user-created custom skill.

type: :custom
skill_id: String

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

minLength1
maxLength64
version: String

Version to pin. Defaults to latest if omitted.

minLength1
maxLength64
system_: String

System prompt for the agent.

maxLength100000

Tool configurations available to the agent. Maximum of 256 tools across all toolsets allowed.

One of the following:
class BetaManagedAgentsAgentToolset20260401Params { type: :agent_toolset_20260401, configs, default_config }

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

class BetaManagedAgentsMCPToolsetParams { type: :mcp_toolset, mcp_server_name, configs, default_config }

Configuration for tools from an MCP server defined in mcp_servers.

class BetaManagedAgentsCustomToolParams { type: :custom, description, input_schema, name }

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: :custom
description: String

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

minLength1
input_schema: BetaManagedAgentsCustomToolInputSchema { type: :object, properties, required }

JSON Schema defining the expected input parameters for the tool.

type: :object
properties: Hash[Symbol, untyped]
required: Array[String]
name: String

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

minLength1
maxLength128
betas: Array[AnthropicBeta]⁠Header parameter

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

One of the following:
String = String
:"message-batches-2024-09-24"
:"prompt-caching-2024-07-31"
:"computer-use-2024-10-22"
:"computer-use-2025-01-24"
:"pdfs-2024-09-25"
:"token-counting-2024-11-01"
:"token-efficient-tools-2025-02-19"
:"output-128k-2025-02-19"
:"files-api-2025-04-14"
:"mcp-client-2025-04-04"
:"mcp-client-2025-11-20"
:"dev-full-thinking-2025-05-14"
:"interleaved-thinking-2025-05-14"
:"code-execution-2025-05-22"
:"extended-cache-ttl-2025-04-11"
:"context-1m-2025-08-07"
:"context-management-2025-06-27"
:"model-context-window-exceeded-2025-08-26"
:"skills-2025-10-02"
:"fast-mode-2026-02-01"
:"output-300k-2026-03-24"
:"user-profiles-2026-03-24"
:"user-profiles-2026-08-18"
:"user-profiles-2026-09-04"
:"advisor-tool-2026-03-01"
:"managed-agents-2026-04-01"
:"cache-diagnosis-2026-04-07"
:"dreaming-2026-04-21"
:"thinking-token-count-2026-05-13"
:"server-side-fallback-2026-06-01"
:"server-side-fallback-2026-07-01"
:"fallback-credit-2026-06-01"
:"fallback-credit-2026-07-01"
:"agent-memory-2026-07-22"
:"mid-conversation-tool-changes-2026-07-01"
:"compact-2026-01-12"
:"computer-use-2025-11-24"
:"mcp-tunnels-2026-06-22"
:"structured-outputs-2025-11-13"
:"task-budgets-2026-03-13"
:"thinking-display-updates-2026-08-18"
:"ce-user-management-2026-07-13"
:"mid-conversation-output-config-2026-07-01"
:"thinking-binding-controls-2026-08-01"
:"mid-conversation-system-clear-at-2026-08-21"
:"compact-2026-09-04"
:"inline-tools-2026-09-15"
:"mcp-client-2026-09-15"
:"ce-plugins-2026-09-01"
:"spend-limit-reads-2026-09-26"
:"telemetry-destinations-2026-08-11"
workspace_id: String⁠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.

Returns
class BetaManagedAgentsAgent { type: :agent, id, archived_at, 13 more }

A Managed Agents agent.

Créer un agent
require "anthropic"

anthropic = Anthropic::Client.new(api_key: "my-anthropic-api-key")

beta_managed_agents_agent = anthropic.beta.agents.create(
  model: Anthropic::Beta::BetaManagedAgentsModel::CLAUDE_OPUS_5_5,
  name: "My First Agent"
)

puts(beta_managed_agents_agent)
Returns Examples
Response 200
{
  "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
}