0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Bedrock AgentCore に Web Search (Web 検索) が追加されたので試してみた

0
Last updated at Posted at 2026-06-23

はじめに

2026年6月16日に発表された Web Search on Amazon Bedrock AgentCore はフルマネージドな Web 検索ツールです。AgentCore Gateway に「コネクタ」として追加するだけで、エージェントが MCP ツールとして Web 検索を呼べるようになります。

急がしい人向けのポイントまとめ

  • AgentCore Gateway のターゲットに web-search を追加するだけで、Web 検索が MCP ツールとして使える
  • 検索 API の調達やキー管理も不要
  • クエリは AWS 内部で完結し、外部の検索エンジンには送られない
  • 料金は 1,000 クエリあたり $7
  • 発表時点での提供リージョンは現状 us-east-1 のみ
  • ドメインの denylist で特定サイトを除外することも可能

仕組み

検索リクエストは Gateway がサービスロールで内部認証し、AWS 内部で処理されます。外部検索エンジンへの送信や AWS 外へのルーティングは発生しません。

入力スキーマは次のとおりで、tools/call で自然言語クエリ(200文字以内)という点に注意が必要そうです。

パラメータ 必須 説明
query string Yes 検索クエリ。200文字以内
maxResults integer No 返す件数。1〜25、デフォルト10

料金

1,000 クエリあたり $7

これは、高いのか安いのかはなんとも言えませんかね。
1 回のリクエストで 10 回クエリされた場合のことを考えると決して安いとは言えない金額のような気もします。

やってみた

前提条件

  • 利用リージョンは us-east-1(バージニア北部)

手順: マネジメントコンソールから MCP ターゲットに Web Search を追加

  1. Amazon Bedrock AgentCore コンソールを開き、左メニューの ゲートウェイゲートウェイの作成 をクリック
  2. 【Define gateway details】ゲートウェイ名 を入力
  3. 【Configure Inbound Identity】Inbound Identity details は今回は検証用途なので一旦は No authorization とします
  4. 【Add targets】ここが本題です。ターゲット で MCP target を選択し、ターゲットタイプに Connectors を選び、Pre-configured targets に Web Search Tools を選択します。なお、Exclude domains で特定ドメインを除外したい場合は、ここで設定できます

スクリーンショット 2026-06-23 23.44.06.png
スクリーンショット 2026-06-23 23.44.22.png

5.【Review and create】内容を確認し、問題なければ ゲートウェイを作成 をクリック。

動作確認: エージェントから実際に呼び出す

ここでは Strands Agents から MCP クライアント経由でサクッと Gateway に接続してみます。

from datetime import date
from strands import Agent
from strands.models.bedrock import BedrockModel
from strands.tools.mcp import MCPClient
from mcp_proxy_for_aws.client import aws_iam_streamablehttp_client

# Gateway の MCP エンドポイント(末尾は /mcp)
gateway_url = "https://gateway-<id>.gateway.bedrock-agentcore.us-east-1.amazonaws.com/mcp"

mcp_client = MCPClient(lambda: aws_iam_streamablehttp_client(
    endpoint=gateway_url,
    aws_region="us-east-1",
    aws_service="bedrock-agentcore",
))

model = BedrockModel(
    model_id="us.amazon.nova-2-lite-v1:0",
    region_name="us-east-1",
    max_tokens=4096,
)

system_prompt = (
    f"あなたは有能なアシスタントです。今日の日付は {date.today().isoformat()} です。"
    "必要に応じて利用可能なツールを使用してください。"
)

with mcp_client:
    tools = mcp_client.list_tools_sync()  # Gateway から WebSearch ツールを発見
    agent = Agent(model=model, tools=tools, system_prompt=system_prompt)

    result = agent("今週発表された AI の最新ニュースを教えて")
    print(result)

実行すると、エージェントが WebSearch で取得した最新情報をもとに回答を組み立てます(出力は抜粋)。

スクリーンショット 2026-06-24 0.04.34.png

注意点

  • 利用規約 (Acceptable use): エンドユーザーに結果を見せる際は出典の引用・リンクの保持が必須。検索結果の一括抽出・保存や、競合インデックス/DB の構築は禁止(公式ドキュメントの Acceptable useに記載あり)

まとめ

これまでエージェントに Web 検索を持たせるには、Tavily や SerpAPI といった外部の検索 API を契約し、API キーやレート制限を管理する必要がありました。Web Search on AgentCore を使えば、Gateway にコネクタを1つ足すだけでその一式が要らなくなります。キー管理が不要で、クエリが AWS 内で完結する点も嬉しいところです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?