AWS发布教程:用AgentCore Gateway为Claude Desktop接入Web Search
AWS机器学习博客介绍如何通过Amazon Bedrock AgentCore Gateway把托管Web Search连接到Claude Desktop,并用AWS IAM Identity Center与Amazon Cognito完成基于JWT的入站认证;Web Search目前在美国东部(弗吉尼亚北部)、欧洲(爱尔兰)和亚太(东京)三个区域提供。
AWS机器学习博客发布了一篇技术教程,介绍如何为运行在Amazon Bedrock上的Claude Desktop接入Web Search,以补足模型训练知识截止之后的信息缺口。
教程使用Amazon Bedrock AgentCore的AgentCore Gateway,并把它作为Model Context Protocol(MCP)服务器接入Claude Desktop。
按博客描述,Web Search是托管、兼容MCP的搜索能力,由Amazon的网页索引支持,覆盖“数百亿份文档”;所有查询流量留在AWS基础设施内,不需要管理外部API密钥,查询不会离开用户边界。
认证链路:IAM Identity Center到Cognito再到JWT
教程给出的架构以AWS IAM Identity Center作为认证源,面向已经在AWS上使用IAM Identity Center做单点登录(SSO)的企业。
IAM Identity Center通过SAML完成用户认证,Amazon Cognito在其中充当联邦层,采用OAuth 2.0授权码模式签发JWT,AgentCore Gateway在每次请求时校验该JWT,即入站认证类型设为CUSTOM_JWT。
AWS称整条认证链都留在AWS内,企业无需另外准备独立凭证或第三方身份提供商;博客同时说明,这一模式也可替换为任何兼容SAML或OIDC的身份提供商,只需在Amazon Cognito中配置为联邦源。
- 认证源:AWS IAM Identity Center
- 联邦层:Amazon Cognito,OAuth 2.0授权码流程
- 网关校验:AgentCore Gateway校验Cognito签发的JWT
- 回调地址示例:http://localhost:53280/callback
区域与前提条件
博客列出Web Search on Amazon Bedrock AgentCore目前可用的三个AWS区域:美国东部(弗吉尼亚北部,us-east-1)、欧洲(爱尔兰,eu-west-1)和亚太(东京,ap-northeast-1),并提示网关需创建在这些区域之一。
教程列出的前提条件包括:具备创建IAM角色和AgentCore资源权限的AWS账户、AWS Organizations管理账户的管理员权限、已为SSO配置好的IAM Identity Center、已把Amazon Bedrock设为推理提供方的Claude Desktop、AWS CLI v2、Python 3.10或更高版本,以及更新到最新版的Boto3 SDK。
配置步骤概览
博客按顺序给出六个步骤:在目标账户创建Amazon Cognito用户池作为OIDC令牌签发方;在AWS Organizations管理账户的IAM Identity Center中创建SAML应用并配置属性映射(Subject为 ${user:subject},Email为 ${user:email})。
随后把IAM Identity Center注册为Cognito用户池的SAML身份提供商;创建带客户端密钥的Cognito应用客户端;用Python脚本创建AgentCore Gateway并附加托管的Web Search连接器目标。
最后在Claude Desktop的“Connectors and Extensions”中选择“Add server”与“Blank”,填入名称websearchtool、传输方式Streamable HTTP、Step 5生成的网关URL、自带OAuth客户端ID与密钥、授权服务器地址、scope为openid、回调主机localhost、回调端口 53280,登录测试后完成MCP服务器注册。
- Step 1:创建Cognito用户池与域名
- Step 2:在IAM Identity Center创建SAML应用(显示名AgentCore Web Search)
- Step 3:把SAML IdP接入Cognito用户池
- Step 4:创建带密钥的Cognito应用客户端
- Step 5:创建AgentCore Gateway,入站认证选JWT,附加web-search托管连接器
- Step 6:在Claude Desktop中配置MCP连接器并登录
验证与清理
博客称配置完成后,Claude Desktop会通过MCP tools/list调用发现WebSearchTool,并在模型需要来自网络的当前信息时自动调用。
测试时发送一个需要检索最新结果的查询,会出现工具执行审批框,显示Claude想执行的查询,并提供Deny、Allow for this task、Allow once三个选项;批准后搜索结果会出现在回答中。
清理部分列出了删除网关目标、网关、IAM策略与角色、Cognito应用客户端、身份提供商、用户池域名与用户池,以及在管理账户IAM Identity Center控制台删除SAML应用的命令。