工具
工具是声明性的。您可以列出代理可以调用的内容; AgentCore 处理调用、凭据和结果。该工具支持五种工具类型,以及内置的文件系统和 shell 工具。
-
MCP 服务器:通过 URL 连接到任何远程模型上下文协议
端点。对于简单的案例,无需网关。 -
AgentCore 网关:通过 inbound/outbound 身份验证、访问控制和策略实施来控制与 API 和 MCP 服务器的连接。引用网关 ARN,该网关上配置的所有工具都将变为可用。当你需要一个受管理的、有策略支持的工具界面时,可以使用 Gateway。
-
AgentCore 浏览器:托管网页浏览和自动化。
-
AgentCore 代码解释器:用于数据分析和计算的沙盒 Python/JavaScript/TypeScript 代码执行。
-
内联函数:在客户端执行的工具架构,而不是在 harness VM 上执行。工具在调用时会暂停,然后返回对代码的调用,由代码决定要做什么并将结果发送回去。这是人性化审批和自定义集成的模式。
默认工具shell,并且在每个会话中file_operations都可用,除非您对其进行限制allowedTools。 shell执行 bash 命令;file_operations支持查看、创建和编辑文件。
该allowedTools参数控制代理可以使用哪些工具。如果省略,则允许使用所有工具。
支持的模式:
| 模式 | 示例 | Matches |
|---|---|---|
|
|
|
所有工具 |
|
普通的名字 |
|
按名称内置 |
|
内置地球仪 |
|
|
|
|
|
所有内置工具 |
|
|
|
特定的内置 |
|
|
|
来自 MCP 服务器的所有工具 |
|
|
|
特定的 MCP 工具 |
|
|
|
服务器内的 Glob |
|
|
|
跨服务器的 Glob |
注意
allowedTools范围 LLM 工具选择InvokeHarness仅在此期间。它不会影响 InvokeAgentRuntimeCommand,它是一个单独的 API,具有自己的 IAM 操作 (bedrock-agentcore:InvokeAgentRuntimeCommand),无需通过 LLM 即可直接执行命令。为防止直接执行命令,请勿bedrock-agentcore:InvokeAgentRuntimeCommand在您的 IAM 策略中授权。
添加工具
例
网页搜寻
要让您的代理进行网络搜索,请将 Web S earch Tool 连接器放在AgentCore 网关后面,然后将该网关作为agentcore_gateway工具连接到您的安全带上。该网关将网络搜索作为标准的 MCP WebSearch 工具公开。您的代理会像任何其他网关工具一样发现并调用它。 AgentCore Gateway 完全在内部提供所有查询 AWS。有关隐私模型和专门构建的 Web 索引的更多信息,请参阅 Web 搜索工具连接器页面。
区域可用性
Web 搜索工具在美国东部(弗吉尼亚北部)us-east-1区域提供。在中创建网关和线束us-east-1。
完成以下步骤,为您的安全带设置网络搜索。
-
创建网关和连接器目标。按照设置 Web 搜索工具中的步骤创建网关(MCP 协议、
AWS_IAM入站身份验证)并使用添加目标。connectorId: "web-search"该目标需要在连接器bedrock-agentcore:InvokeWebSearch上使用网关服务角色。有关更多信息,请参阅配置网关服务角色。当网关 ARN 到达时,请记下网关 ARN。READY -
授予安全带执行角色访问权限。网关 ARN
bedrock-agentcore:InvokeGateway上需要的线束执行角色(不同于上一步中的网关服务角色)。有关所需权限的更多信息,请参阅安全主题中的AgentCore 网关可选权限策略。如果您的安全工具使用托管内存(默认),则执行角色还需要AgentCore 内存权限。代理在每次调用时都会读取和写入会话内存。 -
将网关连接到安全带。将其添加为具有默认
AWS_IAM出站身份验证的agentcore_gateway工具。以下示例说明如何在创建时连接网关。
例
内联函数调用
内联函数允许你定义一个在代码中执行的工具,而不是在线束中执行的工具。这对于人工在环审批、调用内部 API 或任何要控制客户端的逻辑都非常有用。
例
了解有关每种工具的更多信息: