Source Intelligence
Sweep 28 Aug 2026 · 00:00Z Build v2.1.250 478 read Stable v2.1.236 Latest v2.1.250 Next v2.1.250 Feeds RSS JSON llms.txt

DisclaimerUnofficial, and not affiliated with Anthropic. Nearly all of this is read straight out of what ships: npm bundles, captured prompts, published docs. Anthropic's own notes go in verbatim, marked as theirs. The rest is my reading, and every entry carries the strings behind it. If one looks wrong, vote it down and say why.

One change

Create Agent

api/beta/agents/create

first seen The page's own history The capture it came from

Nearest release: v2.1.245, published an hour after this site recorded the change. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.

api/beta/agents/create Changed · +156 / -243 lines

# Create Agent ## Headers ## Body parameters ## Returns ## Example ### Response (200) ## Create Agent ### Header Parameters ### Body Parameters ### Returns ### Example #### Response

from line 1
----
-title: Create Agent
-url: https://platform.claude.com/docs/en/api/beta/agents/create
----
+# Create Agent
 
-## Create Agent
+**POST** `/v1/agents`
 
-**post** `/v1/agents`
-
 Create Agent
 
-### Header Parameters
+## Headers
 
 - `"anthropic-beta": optional array of AnthropicBeta`
 
from line 82
 
     - `"mid-conversation-tool-changes-2026-07-01"`
 
-### Body Parameters
+## Body parameters
 
 - `model: BetaManagedAgentsModel or BetaManagedAgentsModelConfigParams`
 
from line 154
 
     - `string`
 
-  - `BetaManagedAgentsModelConfigParams object { id, effort, inference_geo, speed }`
+  - `BetaManagedAgentsModelConfigParams object`
 
     An object that defines additional configuration control over model use
 
from line 182
 
         - `"max"`
 
-      - `BetaManagedAgentsEffortLow object { type }`
+      - `BetaManagedAgentsEffortLow object`
 
         Low effort. Favors latency over reasoning depth.
 
         - `type: "low"`
 
-          - `"low"`
+      - `BetaManagedAgentsEffortMedium object`
 
-      - `BetaManagedAgentsEffortMedium object { type }`
-
         Medium effort. Balances latency and reasoning depth.
 
         - `type: "medium"`
 
-          - `"medium"`
+      - `BetaManagedAgentsEffortHigh object`
 
-      - `BetaManagedAgentsEffortHigh object { type }`
-
         High effort. Favors reasoning depth.
 
         - `type: "high"`
 
-          - `"high"`
+      - `BetaManagedAgentsEffortXhigh object`
 
-      - `BetaManagedAgentsEffortXhigh object { type }`
-
         Extra-high effort. Not all models accept this level.
 
         - `type: "xhigh"`
 
-          - `"xhigh"`
+      - `BetaManagedAgentsEffortMax object`
 
-      - `BetaManagedAgentsEffortMax object { type }`
-
         Maximum effort. Favors reasoning depth over latency.
 
         - `type: "max"`
 
-          - `"max"`
-
     - `inference_geo: optional string or null`
 
       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.
from line 228
 
   Human-readable name for the agent.
 
+  minLength: 1, maxLength: 256
+
 - `description: optional string or null`
 
   Description of what the agent does.
 
+  maxLength: 2048
+
 - `mcp_servers: optional array of BetaManagedAgentsURLMCPServerParams`
 
   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](https://platform.claude.com/docs/en/managed-agents/mcp-connector).
from line 244
 
     Unique name for this server, referenced by mcp_toolset configurations. 1-255 characters.
 
+    minLength: 1, maxLength: 255
+
   - `type: "url"`
 
-    - `"url"`
-
   - `url: string`
 
     Endpoint URL for the MCP server.
 
+    maxLength: 2048
+
 - `metadata: optional map[string]`
 
   Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.
from line 268
 
     - `string`
 
-    - `BetaManagedAgentsAgentParams object { id, type, version }`
+    - `BetaManagedAgentsAgentParams object`
 
       Specification for an Agent. Provide a specific `version` or use the short-form `agent="agent_id"` for the most recent version
 
from line 276
 
         The `agent` ID.
 
+        minLength: 1, maxLength: 128
+
       - `type: "agent"`
 
-        - `"agent"`
-
       - `version: optional number`
 
         The specific `agent` version to use. Omit to use the latest version. Must be at least 1 if specified.
 
-    - `BetaManagedAgentsMultiagentSelfParams object { type }`
+        format: int32
 
+    - `BetaManagedAgentsMultiagentSelfParams object`
+
       Sentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference.
 
       - `type: "self"`
 
-        - `"self"`
+    - `BetaManagedAgentsAdvisorParams object`
 
-    - `BetaManagedAgentsAdvisorParams object { model, type }`
-
       Platform advisor roster entry: a model the session's primary thread may consult mid-turn. At most one per roster; the entry occupies the roster name `anthropic.advisor`.
 
       - `model: string`
from line 300
 
         A Claude model id. The model must be permitted as an advisor for this agent's model — see the sessions/threads/advisor spec.
 
+        minLength: 1, maxLength: 256
+
       - `type: "advisor"`
 
-        - `"advisor"`
-
   - `type: "coordinator"`
 
-    - `"coordinator"`
-
 - `skills: optional array of BetaManagedAgentsSkillParams`
 
   Skills available to the agent.
 
-  - `BetaManagedAgentsAnthropicSkillParams object { skill_id, type, version }`
+  - `BetaManagedAgentsAnthropicSkillParams object`
 
     An Anthropic-managed skill.
 
from line 318
 
       Identifier of the Anthropic skill (e.g., "xlsx").
 
+      minLength: 1, maxLength: 64
+
     - `type: "anthropic"`
 
-      - `"anthropic"`
-
     - `version: optional string or null`
 
       Version to pin. Defaults to latest if omitted.
 
-  - `BetaManagedAgentsCustomSkillParams object { skill_id, type, version }`
+      minLength: 1, maxLength: 64
 
+  - `BetaManagedAgentsCustomSkillParams object`
+
     A user-created custom skill.
 
     - `skill_id: string`
from line 336
 
       Tagged ID of the custom skill (e.g., "skill_01XJ5...").
 
+      minLength: 1, maxLength: 64
+
     - `type: "custom"`
 
-      - `"custom"`
-
     - `version: optional string or null`
 
       Version to pin. Defaults to latest if omitted.
 
+      minLength: 1, maxLength: 64
+
 - `system: optional string or null`
 
   System prompt for the agent.
 
+  maxLength: 100000
+
 - `tools: optional array of BetaManagedAgentsAgentToolset20260401Params or BetaManagedAgentsMCPToolsetParams or BetaManagedAgentsCustomToolParams`
 
   Tool configurations available to the agent. Maximum of 128 tools across all toolsets allowed.
 
-  - `BetaManagedAgentsAgentToolset20260401Params object { type, configs, default_config }`
+  - `BetaManagedAgentsAgentToolset20260401Params object`
 
     Configuration for built-in agent tools. Use this to enable or disable groups of tools available to the agent.
 
     - `type: "agent_toolset_20260401"`
 
-      - `"agent_toolset_20260401"`
-
     - `configs: optional array of BetaManagedAgentsAgentToolConfigParams`
 
       Per-tool configuration overrides.
 
-      - `BetaManagedAgentsBashToolConfigParams object { name, enabled, permission_policy, type }`
+      - `BetaManagedAgentsBashToolConfigParams object`
 
         Configuration override for the bash tool.
 
from line 374
 
           Must be "bash".
 
-          - `"bash"`
-
         - `enabled: optional boolean or null`
 
           Whether this tool is enabled and available to Claude. Overrides the default_config setting.
from line 382
 
           Permission policy for tool execution.
 
-          - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAllowPolicy object`
 
             Tool calls are automatically approved without user confirmation.
 
             - `type: "always_allow"`
 
-              - `"always_allow"`
+          - `BetaManagedAgentsAlwaysAskPolicy object`
 
-          - `BetaManagedAgentsAlwaysAskPolicy object { type }`
-
             Tool calls require user confirmation before execution.
 
             - `type: "always_ask"`
 
-              - `"always_ask"`
-
         - `type: optional "bash"`
 
-          - `"bash"`
+      - `BetaManagedAgentsEditToolConfigParams object`
 
-      - `BetaManagedAgentsEditToolConfigParams object { name, enabled, permission_policy, type }`
-
         Configuration override for the edit tool.
 
         - `name: "edit"`
from line 404
 
           Must be "edit".
 
-          - `"edit"`
-
         - `enabled: optional boolean or null`
 
           Whether this tool is enabled and available to Claude. Overrides the default_config setting.
from line 412
 
           Permission policy for tool execution.
 
-          - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAllowPolicy object`
 
             Tool calls are automatically approved without user confirmation.
 
-          - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAskPolicy object`
 
             Tool calls require user confirmation before execution.
 
         - `type: optional "edit"`
 
-          - `"edit"`
+      - `BetaManagedAgentsReadToolConfigParams object`
 
-      - `BetaManagedAgentsReadToolConfigParams object { name, enabled, permission_policy, type }`
-
         Configuration override for the read tool.
 
         - `name: "read"`
from line 430
 
           Must be "read".
 
-          - `"read"`
-
         - `enabled: optional boolean or null`
 
           Whether this tool is enabled and available to Claude. Overrides the default_config setting.
from line 438
 
           Permission policy for tool execution.
 
-          - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAllowPolicy object`
 
             Tool calls are automatically approved without user confirmation.
 
-          - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAskPolicy object`
 
             Tool calls require user confirmation before execution.
 
         - `type: optional "read"`
 
-          - `"read"`
+      - `BetaManagedAgentsWriteToolConfigParams object`
 
-      - `BetaManagedAgentsWriteToolConfigParams object { name, enabled, permission_policy, type }`
-
         Configuration override for the write tool.
 
         - `name: "write"`
from line 456
 
           Must be "write".
 
-          - `"write"`
-
         - `enabled: optional boolean or null`
 
           Whether this tool is enabled and available to Claude. Overrides the default_config setting.
from line 464
 
           Permission policy for tool execution.
 
-          - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAllowPolicy object`
 
             Tool calls are automatically approved without user confirmation.
 
-          - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAskPolicy object`
 
             Tool calls require user confirmation before execution.
 
         - `type: optional "write"`
 
-          - `"write"`
+      - `BetaManagedAgentsGlobToolConfigParams object`
 
-      - `BetaManagedAgentsGlobToolConfigParams object { name, enabled, permission_policy, type }`
-
         Configuration override for the glob tool.
 
         - `name: "glob"`
from line 482
 
           Must be "glob".
 
-          - `"glob"`
-
         - `enabled: optional boolean or null`
 
           Whether this tool is enabled and available to Claude. Overrides the default_config setting.
from line 490
 
           Permission policy for tool execution.
 
-          - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAllowPolicy object`
 
             Tool calls are automatically approved without user confirmation.
 
-          - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAskPolicy object`
 
             Tool calls require user confirmation before execution.
 
         - `type: optional "glob"`
 
-          - `"glob"`
+      - `BetaManagedAgentsGrepToolConfigParams object`
 
-      - `BetaManagedAgentsGrepToolConfigParams object { name, enabled, permission_policy, type }`
-
         Configuration override for the grep tool.
 
         - `name: "grep"`
from line 508
 
           Must be "grep".
 
-          - `"grep"`
-
         - `enabled: optional boolean or null`
 
           Whether this tool is enabled and available to Claude. Overrides the default_config setting.
from line 516
 
           Permission policy for tool execution.
 
-          - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAllowPolicy object`
 
             Tool calls are automatically approved without user confirmation.
 
-          - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAskPolicy object`
 
             Tool calls require user confirmation before execution.
 
         - `type: optional "grep"`
 
-          - `"grep"`
+      - `BetaManagedAgentsWebFetchToolConfigParams object`
 
-      - `BetaManagedAgentsWebFetchToolConfigParams object { name, allowed_domains, blocked_domains, 4 more }`
-
         Configuration override for the web_fetch tool.
 
         - `name: "web_fetch"`
from line 534
 
           Must be "web_fetch".
 
-          - `"web_fetch"`
-
         - `allowed_domains: optional array of string`
 
           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.
from line 550
 
           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
+
         - `permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or null`
 
           Permission policy for tool execution.
 
-          - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAllowPolicy object`
 
             Tool calls are automatically approved without user confirmation.
 
-          - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAskPolicy object`
 
             Tool calls require user confirmation before execution.
 
         - `type: optional "web_fetch"`
 
-          - `"web_fetch"`
+      - `BetaManagedAgentsWebSearchToolConfigParams object`
 
-      - `BetaManagedAgentsWebSearchToolConfigParams object { name, allowed_domains, blocked_domains, 4 more }`
-
         Configuration override for the web_search tool.
 
         - `name: "web_search"`
from line 574
 
           Must be "web_search".
 
-          - `"web_search"`
-
         - `allowed_domains: optional array of string`
 
           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.
from line 590
 
           Permission policy for tool execution.
 
-          - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAllowPolicy object`
 
             Tool calls are automatically approved without user confirmation.
 
-          - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAskPolicy object`
 
             Tool calls require user confirmation before execution.
 
         - `type: optional "web_search"`
 
-          - `"web_search"`
-
         - `user_location: optional BetaManagedAgentsUserLocation or null`
 
           Approximate user location for search result localization.
from line 608
 
             Location precision. Only "approximate" is supported.
 
-            - `"approximate"`
-
           - `city: optional string or null`
 
             City name.
 
+            minLength: 1, maxLength: 255
+
           - `country: optional string or null`
 
             Two-letter ISO 3166-1 country code, uppercase.
from line 622
 
             Region or state name.
 
+            minLength: 1, maxLength: 255
+
           - `timezone: optional string or null`
 
             IANA timezone identifier, e.g. "America/Los_Angeles".
 
+            minLength: 1, maxLength: 255
+
     - `default_config: optional BetaManagedAgentsAgentToolsetDefaultConfigParams or null`
 
       Default configuration for all tools in a toolset.
from line 642
 
         Permission policy for tool execution.
 
-        - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+        - `BetaManagedAgentsAlwaysAllowPolicy object`
 
           Tool calls are automatically approved without user confirmation.
 
-        - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+        - `BetaManagedAgentsAlwaysAskPolicy object`
 
           Tool calls require user confirmation before execution.
 
-  - `BetaManagedAgentsMCPToolsetParams object { mcp_server_name, type, configs, default_config }`
+  - `BetaManagedAgentsMCPToolsetParams object`
 
     Configuration for tools from an MCP server defined in `mcp_servers`.
 
from line 658
 
       Name of the MCP server. Must match a server name from the mcp_servers array. 1-255 characters.
 
+      minLength: 1, maxLength: 255
+
     - `type: "mcp_toolset"`
 
-      - `"mcp_toolset"`
-
     - `configs: optional array of BetaManagedAgentsMCPToolConfigParams`
 
       Per-tool configuration overrides.
from line 670
 
         Name of the MCP tool to configure. 1-128 characters.
 
+        minLength: 1, maxLength: 128
+
       - `enabled: optional boolean or null`
 
         Whether this tool is enabled. Overrides the `default_config` setting.
from line 680
 
         Permission policy for tool execution.
 
-        - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+        - `BetaManagedAgentsAlwaysAllowPolicy object`
 
           Tool calls are automatically approved without user confirmation.
 
-        - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+        - `BetaManagedAgentsAlwaysAskPolicy object`
 
           Tool calls require user confirmation before execution.
 
from line 700
 
         Permission policy for tool execution.
 
-        - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+        - `BetaManagedAgentsAlwaysAllowPolicy object`
 
           Tool calls are automatically approved without user confirmation.
 
-        - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+        - `BetaManagedAgentsAlwaysAskPolicy object`
 
           Tool calls require user confirmation before execution.
 
-  - `BetaManagedAgentsCustomToolParams object { description, input_schema, name, type }`
+  - `BetaManagedAgentsCustomToolParams object`
 
     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.
 
from line 716
 
       Description of what the tool does, shown to the agent to help it decide when to use the tool.
 
+      minLength: 1
+
     - `input_schema: BetaManagedAgentsCustomToolInputSchema`
 
       JSON Schema for custom tool input parameters.
from line 724
 
       - `type: "object"`
 
-        - `"object"`
-
       - `properties: optional map[unknown] or null`
 
       - `required: optional array of string or null`
from line 732
 
       Unique name for the tool. 1-128 characters; letters, digits, underscores, and hyphens.
 
+      minLength: 1, maxLength: 128
+
     - `type: "custom"`
 
-      - `"custom"`
+## Returns
 
-### Returns
+- `BetaManagedAgentsAgent object`
 
-- `BetaManagedAgentsAgent object { id, archived_at, created_at, 12 more }`
-
   A Managed Agents `agent`.
 
   - `id: string`
from line 748
 
     A timestamp in RFC 3339 format
 
+    format: date-time
+
   - `created_at: string`
 
     A timestamp in RFC 3339 format
 
+    format: date-time
+
   - `description: string or null`
 
   - `mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition`
from line 764
 
     - `type: "url"`
 
-      - `"url"`
-
     - `url: string`
 
   - `metadata: map[string]`
from line 842
 
       How hard Claude works on each turn. Sets `output_config.effort` on every Messages call the session makes.
 
-      - `BetaManagedAgentsEffortLow object { type }`
+      - `BetaManagedAgentsEffortLow object`
 
         Low effort. Favors latency over reasoning depth.
 
         - `type: "low"`
 
-          - `"low"`
+      - `BetaManagedAgentsEffortMedium object`
 
-      - `BetaManagedAgentsEffortMedium object { type }`
-
         Medium effort. Balances latency and reasoning depth.
 
         - `type: "medium"`
 
-          - `"medium"`
+      - `BetaManagedAgentsEffortHigh object`
 
-      - `BetaManagedAgentsEffortHigh object { type }`
-
         High effort. Favors reasoning depth.
 
         - `type: "high"`
 
-          - `"high"`
+      - `BetaManagedAgentsEffortXhigh object`
 
-      - `BetaManagedAgentsEffortXhigh object { type }`
-
         Extra-high effort. Not all models accept this level.
 
         - `type: "xhigh"`
 
-          - `"xhigh"`
+      - `BetaManagedAgentsEffortMax object`
 
-      - `BetaManagedAgentsEffortMax object { type }`
-
         Maximum effort. Favors reasoning depth over latency.
 
         - `type: "max"`
 
-          - `"max"`
-
     - `inference_geo: optional string`
 
       Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
from line 892
 
       Agents the coordinator may spawn as session threads, each resolved to a specific version.
 
-      - `BetaManagedAgentsAgentReference object { id, type, version }`
+      - `BetaManagedAgentsAgentReference object`
 
         A resolved agent reference with a concrete version.
 
from line 900
 
         - `type: "agent"`
 
-          - `"agent"`
-
         - `version: number`
 
-      - `BetaManagedAgentsAdvisor object { model, type }`
+          format: int32
 
+      - `BetaManagedAgentsAdvisor object`
+
         Platform advisor roster entry: a model the session's primary thread may consult mid-turn.
 
         - `model: string`
from line 914
 
         - `type: "advisor"`
 
-          - `"advisor"`
-
     - `type: "coordinator"`
 
-      - `"coordinator"`
-
   - `name: string`
 
   - `skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill`
 
-    - `BetaManagedAgentsAnthropicSkill object { skill_id, type, version }`
+    - `BetaManagedAgentsAnthropicSkill object`
 
       A resolved Anthropic-managed skill.
 
from line 928
 
       - `type: "anthropic"`
 
-        - `"anthropic"`
-
       - `version: string`
 
-    - `BetaManagedAgentsCustomSkill object { skill_id, type, version }`
+    - `BetaManagedAgentsCustomSkill object`
 
       A resolved user-created custom skill.
 
from line 938
 
       - `type: "custom"`
 
-        - `"custom"`
-
       - `version: string`
 
   - `system: string or null`
from line 944
 
   - `tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool`
 
-    - `BetaManagedAgentsAgentToolset20260401 object { configs, default_config, type }`
+    - `BetaManagedAgentsAgentToolset20260401 object`
 
       - `configs: array of BetaManagedAgentsAgentToolConfig`
 
-        - `BetaManagedAgentsBashToolConfig object { enabled, name, permission_policy, type }`
+        - `BetaManagedAgentsBashToolConfig object`
 
           Configuration for the bash tool.
 
from line 956
 
           - `name: "bash"`
 
-            - `"bash"`
-
           - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy`
 
             Permission policy for tool execution.
 
-            - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+            - `BetaManagedAgentsAlwaysAllowPolicy object`
 
               Tool calls are automatically approved without user confirmation.
 
               - `type: "always_allow"`
 
-                - `"always_allow"`
+            - `BetaManagedAgentsAlwaysAskPolicy object`
 
-            - `BetaManagedAgentsAlwaysAskPolicy object { type }`
-
               Tool calls require user confirmation before execution.
 
               - `type: "always_ask"`
 
-                - `"always_ask"`
-
           - `type: "bash"`
 
-            - `"bash"`
+        - `BetaManagedAgentsEditToolConfig object`
 
-        - `BetaManagedAgentsEditToolConfig object { enabled, name, permission_policy, type }`
-
           Configuration for the edit tool.
 
           - `enabled: boolean`
from line 982
 
           - `name: "edit"`
 
-            - `"edit"`
-
           - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy`
 
             Permission policy for tool execution.
 
-            - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+            - `BetaManagedAgentsAlwaysAllowPolicy object`
 
               Tool calls are automatically approved without user confirmation.
 
-            - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+            - `BetaManagedAgentsAlwaysAskPolicy object`
 
               Tool calls require user confirmation before execution.
 
           - `type: "edit"`
 
-            - `"edit"`
+        - `BetaManagedAgentsReadToolConfig object`
 
-        - `BetaManagedAgentsReadToolConfig object { enabled, name, permission_policy, type }`
-
           Configuration for the read tool.
 
           - `enabled: boolean`
from line 1004
 
           - `name: "read"`
 
-            - `"read"`
-
           - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy`
 
             Permission policy for tool execution.
 
-            - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+            - `BetaManagedAgentsAlwaysAllowPolicy object`
 
               Tool calls are automatically approved without user confirmation.
 
-            - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+            - `BetaManagedAgentsAlwaysAskPolicy object`
 
               Tool calls require user confirmation before execution.
 
           - `type: "read"`
 
-            - `"read"`
+        - `BetaManagedAgentsWriteToolConfig object`
 
-        - `BetaManagedAgentsWriteToolConfig object { enabled, name, permission_policy, type }`
-
           Configuration for the write tool.
 
           - `enabled: boolean`
from line 1026
 
           - `name: "write"`
 
-            - `"write"`
-
           - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy`
 
             Permission policy for tool execution.
 
-            - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+            - `BetaManagedAgentsAlwaysAllowPolicy object`
 
               Tool calls are automatically approved without user confirmation.
 
-            - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+            - `BetaManagedAgentsAlwaysAskPolicy object`
 
               Tool calls require user confirmation before execution.
 
           - `type: "write"`
 
-            - `"write"`
+        - `BetaManagedAgentsGlobToolConfig object`
 
-        - `BetaManagedAgentsGlobToolConfig object { enabled, name, permission_policy, type }`
-
           Configuration for the glob tool.
 
           - `enabled: boolean`
from line 1048
 
           - `name: "glob"`
 
-            - `"glob"`
-
           - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy`
 
             Permission policy for tool execution.
 
-            - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+            - `BetaManagedAgentsAlwaysAllowPolicy object`
 
               Tool calls are automatically approved without user confirmation.
 
-            - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+            - `BetaManagedAgentsAlwaysAskPolicy object`
 
               Tool calls require user confirmation before execution.
 
           - `type: "glob"`
 
-            - `"glob"`
+        - `BetaManagedAgentsGrepToolConfig object`
 
-        - `BetaManagedAgentsGrepToolConfig object { enabled, name, permission_policy, type }`
-
           Configuration for the grep tool.
 
           - `enabled: boolean`
from line 1070
 
           - `name: "grep"`
 
-            - `"grep"`
-
           - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy`
 
             Permission policy for tool execution.
 
-            - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+            - `BetaManagedAgentsAlwaysAllowPolicy object`
 
               Tool calls are automatically approved without user confirmation.
 
-            - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+            - `BetaManagedAgentsAlwaysAskPolicy object`
 
               Tool calls require user confirmation before execution.
 
           - `type: "grep"`
 
-            - `"grep"`
+        - `BetaManagedAgentsWebFetchToolConfig object`
 
-        - `BetaManagedAgentsWebFetchToolConfig object { enabled, name, permission_policy, 4 more }`
-
           Configuration for the web_fetch tool.
 
           - `enabled: boolean`
from line 1092
 
           - `name: "web_fetch"`
 
-            - `"web_fetch"`
-
           - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy`
 
             Permission policy for tool execution.
 
-            - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+            - `BetaManagedAgentsAlwaysAllowPolicy object`
 
               Tool calls are automatically approved without user confirmation.
 
-            - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+            - `BetaManagedAgentsAlwaysAskPolicy object`
 
               Tool calls require user confirmation before execution.
 
           - `type: "web_fetch"`
 
-            - `"web_fetch"`
-
           - `allowed_domains: optional array of string`
 
           - `blocked_domains: optional array of string`
from line 1112
 
           - `max_content_tokens: optional number or null`
 
-        - `BetaManagedAgentsWebSearchToolConfig object { enabled, name, permission_policy, 4 more }`
+            format: int32
 
+        - `BetaManagedAgentsWebSearchToolConfig object`
+
           Configuration for the web_search tool.
 
           - `enabled: boolean`
from line 1122
 
           - `name: "web_search"`
 
-            - `"web_search"`
-
           - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy`
 
             Permission policy for tool execution.
 
-            - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+            - `BetaManagedAgentsAlwaysAllowPolicy object`
 
               Tool calls are automatically approved without user confirmation.
 
-            - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+            - `BetaManagedAgentsAlwaysAskPolicy object`
 
               Tool calls require user confirmation before execution.
 
           - `type: "web_search"`
 
-            - `"web_search"`
-
           - `allowed_domains: optional array of string`
 
           - `blocked_domains: optional array of string`
from line 1148
 
               Location precision. Only "approximate" is supported.
 
-              - `"approximate"`
-
             - `city: optional string or null`
 
               City name.
 
+              minLength: 1, maxLength: 255
+
             - `country: optional string or null`
 
               Two-letter ISO 3166-1 country code, uppercase.
from line 1162
 
               Region or state name.
 
+              minLength: 1, maxLength: 255
+
             - `timezone: optional string or null`
 
               IANA timezone identifier, e.g. "America/Los_Angeles".
 
+              minLength: 1, maxLength: 255
+
       - `default_config: BetaManagedAgentsAgentToolsetDefaultConfig`
 
         Resolved default configuration for agent tools.
from line 1180
 
           Permission policy for tool execution.
 
-          - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAllowPolicy object`
 
             Tool calls are automatically approved without user confirmation.
 
-          - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAskPolicy object`
 
             Tool calls require user confirmation before execution.
 
       - `type: "agent_toolset_20260401"`
 
-        - `"agent_toolset_20260401"`
+    - `BetaManagedAgentsMCPToolset object`
 
-    - `BetaManagedAgentsMCPToolset object { configs, default_config, mcp_server_name, type }`
-
       - `configs: array of BetaManagedAgentsMCPToolConfig`
 
         - `enabled: boolean`
from line 1202
 
           Permission policy for tool execution.
 
-          - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAllowPolicy object`
 
             Tool calls are automatically approved without user confirmation.
 
-          - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAskPolicy object`
 
             Tool calls require user confirmation before execution.
 
from line 1220
 
           Permission policy for tool execution.
 
-          - `BetaManagedAgentsAlwaysAllowPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAllowPolicy object`
 
             Tool calls are automatically approved without user confirmation.
 
-          - `BetaManagedAgentsAlwaysAskPolicy object { type }`
+          - `BetaManagedAgentsAlwaysAskPolicy object`
 
             Tool calls require user confirmation before execution.
 
from line 1232
 
       - `type: "mcp_toolset"`
 
-        - `"mcp_toolset"`
+    - `BetaManagedAgentsCustomTool object`
 
-    - `BetaManagedAgentsCustomTool object { description, input_schema, name, type }`
-
       A custom tool as returned in API responses.
 
       - `description: string`
from line 1244
 
         - `type: "object"`
 
-          - `"object"`
-
         - `properties: optional map[unknown] or null`
 
         - `required: optional array of string or null`
from line 1252
 
       - `type: "custom"`
 
-        - `"custom"`
-
   - `type: "agent"`
 
-    - `"agent"`
-
   - `updated_at: string`
 
     A timestamp in RFC 3339 format
 
+    format: date-time
+
   - `version: number`
 
     The agent's current version. Starts at 1 and increments when the agent is modified.
 
-### Example
+    format: int32
 
-```http
+## Example
+
+```bash
 curl https://api.anthropic.com/v1/agents \
     -H 'Content-Type: application/json' \
     -H 'anthropic-version: 2023-06-01' \
from line 1290
         }'
 ```
 
-#### Response
+### Response (200)
 
 ```json
 {