Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Tool Catalog Agent for Bedrock AgentCore Gateway

Avatar for matsukada matsukada
September 09, 2025

Tool Catalog Agent for Bedrock AgentCore Gateway

東京支部 CommunityBuilders Night #2 / Jr.ChampionsコラボでのLT資料です。

https://jawsug.connpass.com/event/363613/

Avatar for matsukada

matsukada

September 09, 2025
Tweet

More Decks by matsukada

Other Decks in Programming

Transcript

  1. ©Mitsubishi Electric Corporation Tool Catalog Agent for Bedrock AgentCore Gateway

    三菱電機株式会社 AI戦略プロジェクトグループ 塚田真規 Community Builders Night #2 2025/9/9
  2. ©Mitsubishi Electric Corporation 自己紹介 2 塚田 真規 Masaki Tsukada 三菱電機株式会社

    デジタルイノベーション事業本部 AI戦略プロジェクトグループ • AWS Community Builder 2025 (AI Engineering) • JAWS-UG AI/ML支部運営 • 2024/2025 Japan AWS All Certifications Engineers
  3. ©Mitsubishi Electric Corporation Bedrock AgentCore Gateway 3 Framework MCPクライアント Application

    AWS SDK Amazon Bedrock AgentCore Gateway AWS Cloud AWS Lambda Target API Endpoint Target Tool Tool Tool Tool Tool Tool 既存のLambda関数やAPIをMCPプロトコルで通信可能なツールへと変換するエンドポイントを提供 数多くのツールのツール管理にAIエージェントを活用 どんなツールがあるか? どのようにツールを使えばよいか? 試しにツールを使ってみたい ツールの利用状況は? Tool Catalog Agent
  4. ©Mitsubishi Electric Corporation Tool Catalog Agentの構成 4 1. 自然言語によるツールの検索 2.

    特定ツールの利用方法の提示とサンプル実行 3. 過去1週間の全ツール利用履歴(呼び出し回数とレイテンシ)の取得 4. 過去1週間の特定ツールの利用履歴(呼び出し回数とレイテンシ)の取得 STRANDS AGENTS Bedrock AgentCore Gateway AWS Cloud Orchestrator Tool Search Agent STRANDS AGENTS Tool Execute Agent STRANDS AGENTS Tool Ranking Agent STRANDS AGENTS Amazon CloudWatch Tool Tool Tool … list_tools x_amz_bedrock_ agentcore_search MCP
  5. ©Mitsubishi Electric Corporation Tool Catalog Agentの詳細 5 1. 自然言語によるツールの検索 2.

    特定ツールの利用方法の提示とサンプル実行 3. 過去1週間の全ツール利用履歴(呼び出し回数とレイテンシ)の取得 4. 過去1週間の特定ツールの利用履歴(呼び出し回数とレイテンシ)の取得 STRANDS AGENTS Bedrock AgentCore Gateway AWS Cloud Orchestrator Tool Search Agent STRANDS AGENTS Tool Execute Agent STRANDS AGENTS Tool Ranking Agent STRANDS AGENTS Amazon CloudWatch Tool Tool Tool … list_tools x_amz_bedrock_ agentcore_search MCP ツールのセマンティック 検索機能を活用
  6. ©Mitsubishi Electric Corporation Tool Catalog Agentの詳細 6 1. 自然言語によるツールの検索 2.

    特定ツールの利用方法の提示とサンプル実行 3. 過去1週間の全ツール利用履歴(呼び出し回数とレイテンシ)の取得 4. 過去1週間の特定ツールの利用履歴(呼び出し回数とレイテンシ)の取得 STRANDS AGENTS Bedrock AgentCore Gateway AWS Cloud Orchestrator Tool Search Agent STRANDS AGENTS Tool Execute Agent STRANDS AGENTS Tool Ranking Agent STRANDS AGENTS Amazon CloudWatch Tool Tool Tool … list_tools x_amz_bedrock_ agentcore_search MCP 登録済みツール 一覧を取得
  7. ©Mitsubishi Electric Corporation Tool Catalog Agentの詳細 7 1. 自然言語によるツールの検索 2.

    特定ツールの利用方法の提示とサンプル実行 3. 過去1週間の全ツール利用履歴(呼び出し回数とレイテンシ)の取得 4. 過去1週間の特定ツールの利用履歴(呼び出し回数とレイテンシ)の取得 STRANDS AGENTS Bedrock AgentCore Gateway AWS Cloud Orchestrator Tool Search Agent STRANDS AGENTS Tool Execute Agent STRANDS AGENTS Tool Ranking Agent STRANDS AGENTS Amazon CloudWatch Tool Tool Tool … list_tools x_amz_bedrock_ agentcore_search MCP CloudWatch Metricsから invocationsとlatencyを取得
  8. ©Mitsubishi Electric Corporation Tool Catalog Agentを試す 8 ケース1:自然言語で関連するツールを探す ケース2:指定したツールをテスト実行する ケース3:過去1週間のツール利用実績を取得する

    ケース4:目的に応じた、利用実績のあるツールの使い方を調べる 【AgentCore Gatewayの設定】 AgentCore Sampleリポジトリ(*)をもとに、 AgentCore Gatewayに300以上のツール情報を登録 (*) https://github.com/awslabs/amazon-bedrock-agentcore-samples/tree/main/01-tutorials/02-AgentCore-gateway/03-search-tools
  9. ©Mitsubishi Electric Corporation 9 ケース1:自然言語で関連するツールを探す STRANDS AGENTS AgentCore Gateway AWS

    Cloud Orchestrator Tool Search Agent STRANDS AGENTS x_amz_bedrock_ agentcore_search MCP **利用可能な掛け算ツール:** 1. **CalcTools___multiply_numbers** 2. **Calc2___multiply_numbers** 3. **Calc4___multiply_numbers** これらのツールはすべて同じ機能を提供しており、 2つの数値(被乗数と乗数)を受け取って掛け算の結果を返します。 mcp_client = MCPClient(<GATEWAY_ENDPOINT>) mcp_tools = get_tools_list(mcp_client) for tool in mcp_tools: if tool.tool_name == "x_amz_bedrock_agentcore_search": search_tool = tool agent = Agent( tools=[search_tool] ) prompt=f“”“クエリに関連したツールを3つ検索してください。 <query>{query}</query>""" agent(prompt) 2つの値を掛け算するツールってある?
  10. ©Mitsubishi Electric Corporation 10 ケース2:指定したツールをテスト実行する STRANDS AGENTS AgentCore Gateway AWS

    Cloud Orchestrator Tool Execute Agent STRANDS AGENTS MCP Tool list_tools あmcp_client = MCPClient(<GATEWAY_ENDPOINT>) mcp_tools = get_tools_list(mcp_client) agent = Agent( tools=[mcp_tools] ) prompt=f"サンプルデータを使って、ツール{tool_name}を利用してください" agent(prompt) サンプルデータを使用してCalc3___calculate_bond_priceツールを実行しました。 **使用したパラメータ:** - 債券ID: SAMPLE_BOND_001 <中略> **結果:** - 債券価格: 12,345(通常は額面に対するパーセンテージまたは実際の価格) <中略> <ツール名>のサンプルデータを作成して そのツールを試しに使ってみて
  11. ©Mitsubishi Electric Corporation 11 ケース3:過去1週間のツール利用実績を取得する STRANDS AGENTS AgentCore Gateway AWS

    Cloud Orchestrator Tool Ranking Agent STRANDS AGENTS MCP list_tools Amazon CloudWatch 過去1週間のCalc3___calculate_bond_priceの統計情報は以下の通りです: ## 利用状況 - **呼び出し回数**: 2回 ## レイテンシ - **平均レイテンシ**: 393ミリ秒 過去1週間でこのツールは2回使用され、平均的な応答時間は393ミリ秒でした。 <ツール名>の利用状況を教えて! @tool def tool_usage(self, tool_name: str, time_delta: datetime.timedelta): … response = boto3_client.get_metric_data(…) @tool def tool_ latency(self, tool_name: str, time_delta: datetime.timedelta): … agent = Agent( tools =[tool_usage, tool_latency] ) prompt=f"サンプルデータを使って、ツール{tool_name}を利用してください" agent(prompt)
  12. ©Mitsubishi Electric Corporation 12 ケース4:目的に応じた、利用実績のあるツールの使い方を調べる 掛け算に関するツールを検索して、その中から過去1週間で利用実績のあるものを見つけて実行してみますね。 検索結果から、「掛け算 multiplication multiply」に関連したツールを3つご紹介します: <ツールリスト一覧>

    次に、これらのツールの過去1週間の利用実績を確認してみます: “Calc2___multiply_numbers”が過去1週間で利用実績があるツールなので、これを試しに使ってみますね: Calc2___multiply_numbersツールを使用して、15と4を掛け算しました。結果は60となりました。 ... 2つの値を掛け算するツールを教えて? その中から過去1週間で利用実績のある ツールを試しに使ってみて STRANDS AGENTS Bedrock AgentCore Gateway AWS Cloud Orchestrator Tool Search Agent STRANDS AGENTS Amazon CloudWatch Tool Tool list_tools x_amz_bedrock_ agentcore_search MCP Tool Execute Agent STRANDS AGENTS Tool Ranking Agent STRANDS AGENTS ~Tool Search Agent~ ツールの検索 ~Tool Ranking Agent~ ツール利用実績の確認 ~Tool Execute Agent~ ツールのサンプル実行
  13. ©Mitsubishi Electric Corporation まとめ 13 • Bedrock AgentCore Gatewayをマネジメントするエージェントを構築 •

    エージェントにより以下を実現: • 自然言語によるツール検索 • テストツール実行 • ツールの利用実績/レイテンシの取得