self-hosted-sandboxes-custom-tools changedmanaged-agents/self-hosted-sandboxes-custom-tools
Nearest release: v2.1.318, published 5 hours 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.
Recorded here
Lines+66added
Lines−7removed
From line
274
where the diff opens
First seen
2 Oct 2026
this site's first read of the page
Recorded edits14to this page, all time
The whole hunk
from line 274, old and new numbered
/
from line 274
274274 name="Internal tools agent",
275275 model="claude-opus-5-5",
276276 tools=[
277 {"type": "agent_toolset_20260401"},
277 {
278 "type": "agent_toolset_20260401",
279 "configs": [
280 {"name": "web_search", "enabled": False},
281 {"name": "web_fetch", "enabled": False},
282 ],
283 },
278284 *[to_custom_tool(tool) for tool in listed.tools],
279285 ],
280286 )
from line 309
303309 name: "Internal tools agent",
304310 model: "claude-opus-5-5",
305311 tools: [
306 { type: "agent_toolset_20260401" },
312 {
313 type: "agent_toolset_20260401",
314 configs: [
315 { name: "web_search", enabled: false },
316 { name: "web_fetch", enabled: false }
317 ]
318 },
307319 // The MCP fields map one to one onto a custom tool declaration.
308320 ...tools.map((tool) => ({
309321 type: "custom" as const,
from line 347
335347 );
336348 var mcpTools = await mcpClient.ListToolsAsync();
337349
338 List<Tool> tools = [new BetaManagedAgentsAgentToolset20260401Params()];
350 List<Tool> tools =
351 [
352 new BetaManagedAgentsAgentToolset20260401Params
353 {
354 Configs =
355 [
356 new BetaManagedAgentsWebSearchToolConfigParams { Enabled = false },
357 new BetaManagedAgentsWebFetchToolConfigParams { Enabled = false },
358 ],
359 },
360 ];
339361 foreach (var tool in mcpTools)
340362 {
341363 var description = tool.Description;
from line 471
449471 }
450472
451473 tools := []anthropic.BetaAgentNewParamsToolUnion{
452 {OfAgentToolset20260401: &anthropic.BetaManagedAgentsAgentToolset20260401Params{}},
474 {OfAgentToolset20260401: &anthropic.BetaManagedAgentsAgentToolset20260401Params{
475 Configs: []anthropic.BetaManagedAgentsAgentToolConfigParamsUnion{
476 {OfWebSearch: &anthropic.BetaManagedAgentsWebSearchToolConfigParams{
477 Enabled: anthropic.Bool(false),
478 }},
479 {OfWebFetch: &anthropic.BetaManagedAgentsWebFetchToolConfigParams{
480 Enabled: anthropic.Bool(false),
481 }},
482 },
483 }},
453484 }
454485 for _, tool := range listed.Tools {
455486 custom, err := toCustomTool(tool)
from line 510
479510 import com.anthropic.models.beta.agents.BetaManagedAgentsCustomToolInputSchema;
480511 import com.anthropic.models.beta.agents.BetaManagedAgentsCustomToolParams;
481512 import com.anthropic.models.beta.agents.BetaManagedAgentsModel;
513 import com.anthropic.models.beta.agents.BetaManagedAgentsWebFetchToolConfigParams;
514 import com.anthropic.models.beta.agents.BetaManagedAgentsWebSearchToolConfigParams;
482515 import io.modelcontextprotocol.client.McpClient;
483516 import io.modelcontextprotocol.client.transport.HttpClientStreamableHttpTransport;
484517 import io.modelcontextprotocol.spec.McpSchema;
from line 550
517550 var params = AgentCreateParams.builder()
518551 .name("Internal tools agent")
519552 .model(BetaManagedAgentsModel.CLAUDE_OPUS_5_5)
520 .addTool(BetaManagedAgentsAgentToolset20260401Params.builder().build());
553 .addTool(BetaManagedAgentsAgentToolset20260401Params.builder()
554 .addConfig(BetaManagedAgentsWebSearchToolConfigParams.builder()
555 .enabled(false)
556 .build())
557 .addConfig(BetaManagedAgentsWebFetchToolConfigParams.builder()
558 .enabled(false)
559 .build())
560 .build());
521561 for (var tool : mcpClient.listTools().tools()) {
522562 params.addTool(toCustomTool(tool));
523563 }
from line 569
529569 ```
530570
531571 ```php PHP
572 use Anthropic\Beta\Agents\BetaManagedAgentsAgentToolset20260401Params;
532573 use Anthropic\Beta\Agents\BetaManagedAgentsModel;
574 use Anthropic\Beta\Agents\BetaManagedAgentsWebFetchToolConfigParams;
575 use Anthropic\Beta\Agents\BetaManagedAgentsWebSearchToolConfigParams;
533576 use Anthropic\Client as Anthropic;
534577 use Mcp\Client as McpClient;
535578 use Mcp\Client\Transport\HttpTransport;
from line 586
543586 $mcpClient = McpClient::builder()->build();
544587 $mcpClient->connect(new HttpTransport($mcpServerUrl));
545588
546 $tools = [['type' => 'agent_toolset_20260401']];
589 $tools = [
590 BetaManagedAgentsAgentToolset20260401Params::with(
591 configs: [
592 BetaManagedAgentsWebSearchToolConfigParams::with(enabled: false),
593 BetaManagedAgentsWebFetchToolConfigParams::with(enabled: false),
594 ],
595 ),
596 ];
547597 foreach ($mcpClient->listTools()->tools as $tool) {
548598 // The MCP fields map one to one onto a custom tool declaration. The
549599 // schema's keywords pass to the SDK unchanged.
from line 646
596646 agent = client.beta.agents.create(
597647 name: "Internal tools agent",
598648 model: Anthropic::Beta::BetaManagedAgentsModel::CLAUDE_OPUS_5_5,
599 tools: [{type: :agent_toolset_20260401}, *custom_tools]
649 tools: [
650 {
651 type: :agent_toolset_20260401,
652 configs: [
653 {name: :web_search, enabled: false},
654 {name: :web_fetch, enabled: false}
655 ]
656 },
657 *custom_tools
658 ]
600659 )
601660 puts agent.id
602661
No line in this hunk matches that.