AWS Bedrock KB Retrieval

公式

Amazon Bedrock Knowledge Basesに対して自然言語でクエリを実行し、データソースから関連情報を取得します。

AWS Bedrock KB Retrieval MCPで何ができますか?

  • 利用可能なナレッジベースを検出する — アシスタントにすべてのBedrockナレッジベースを一覧表示するよう依頼するか、list_knowledge_basesを使用して名前やタグで検索します。
  • 自然言語で情報を取得する — 会話形式でナレッジベースにクエリを実行し、retrieve_from_knowledge_baseを使用して引用付きの関連パッセージを取得します。
  • データソースで結果をフィルタリングする — クエリに特定のデータソースを含めたり除外したりすることで、取得対象を絞り込みます。
  • 関連性に基づいて結果を再ランク付けする — クエリに対してAmazon Bedrockの再ランク付けを有効にし、質問への関連性に基づいて取得したパッセージを並べ替えます。

ドキュメント

Amazon Bedrock ナレッジベース検索 MCP サーバー

Amazon Bedrock ナレッジベースにアクセスするための MCP サーバー

機能

ナレッジベースとそのデータソースの検出

  • 利用可能なすべてのナレッジベースを検索して探索
  • 名前やタグでナレッジベースを検索
  • 各ナレッジベースに関連付けられたデータソースを一覧表示

自然言語によるナレッジベースへのクエリ

  • 会話形式のクエリを使用して情報を取得
  • ナレッジベースから関連するパッセージを取得
  • すべての結果の引用情報にアクセス

データソースによる結果のフィルタリング

  • 特定のデータソースにクエリを集中
  • 特定のデータソースを含めるか除外する
  • 特定のデータソースからの結果を優先

結果の再ランク付け

  • 検索結果の関連性を向上
  • Amazon Bedrock の再ランク付け機能を使用
  • クエリとの関連性で結果を並べ替え

前提条件

インストール要件

  1. Astral または GitHub README から uv をインストール
  2. uv python install 3.10 を使用して Python をインストール

AWS 要件

  1. AWS CLI 設定: Amazon Bedrock とナレッジベースにアクセスできる認証情報と AWS_PROFILE で AWS CLI が設定されている必要があります
  2. Amazon Bedrock ナレッジベース: タグキー mcp-multirag-kb と値 true を持つ Amazon Bedrock ナレッジベースが少なくとも 1 つ必要です
  3. IAM アクセス許可: IAM ロール/ユーザーに以下を行う適切なアクセス許可が必要です:
    • ナレッジベースの一覧表示と説明
    • データソースへのアクセス
    • ナレッジベースへのクエリ

再ランク付けの要件

再ランク付け機能を使用する場合、Bedrock ナレッジベースに追加のアクセス許可が必要です:

  1. IAM ロールに bedrock:Rerankbedrock:InvokeModel の両方のアクションに対するアクセス許可が必要です
  2. Amazon Bedrock ナレッジベースのサービスロールにもこれらのアクセス許可が必要です
  3. 再ランク付けは特定のリージョンでのみ利用可能です。サポートされているリージョンの最新リストについては、公式ドキュメントを参照してください。
  4. 指定されたリージョンで利用可能な再ランク付けモデルのモデルアクセスを有効にします。

再ランク付けの制御

再ランク付けは、BEDROCK_KB_RERANKING_ENABLED 環境変数を使用してグローバルに有効または無効にできます:

  • false に設定 (デフォルト): 明示的に有効にしない限り、すべてのクエリで再ランク付けを無効にします
  • true に設定: 明示的に無効にしない限り、すべてのクエリで再ランク付けを有効にします

環境変数はさまざまな形式を受け入れます:

  • 有効にする場合: 'true'、'1'、'yes'、または 'on' (大文字と小文字を区別しない)
  • 無効にする場合: その他の値または未設定 (デフォルトの動作)

この設定はグローバルなデフォルトを提供し、個々の API 呼び出しでは reranking パラメーターを明示的に設定することで上書きできます。

ナレッジベースの設定に関する詳細な手順については、以下を参照してください:

インストール

KiroCursorVS Code
Add to KiroInstall MCP ServerInstall on VS Code

MCP クライアント設定で MCP サーバーを構成します (例: Kiro の場合、~/.kiro/settings/mcp.json を編集):

{
  "mcpServers": {
    "awslabs.bedrock-kb-retrieval-mcp-server": {
      "command": "uvx",
      "args": ["awslabs.bedrock-kb-retrieval-mcp-server@latest"],
      "env": {
        "AWS_PROFILE": "your-profile-name",
        "AWS_REGION": "us-east-1",
        "FASTMCP_LOG_LEVEL": "ERROR",
        "KB_INCLUSION_TAG_KEY": "optional-tag-key-to-filter-kbs",
        "BEDROCK_KB_RERANKING_ENABLED": "false"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Windows インストール

Windows ユーザーの場合、MCP サーバー設定形式は若干異なります:

{
  "mcpServers": {
    "awslabs.bedrock-kb-retrieval-mcp-server": {
      "disabled": false,
      "timeout": 60,
      "type": "stdio",
      "command": "uv",
      "args": [
        "tool",
        "run",
        "--from",
        "awslabs.bedrock-kb-retrieval-mcp-server@latest",
        "awslabs.bedrock-kb-retrieval-mcp-server.exe"
      ],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR",
        "AWS_PROFILE": "your-aws-profile",
        "AWS_REGION": "us-east-1"
      }
    }
  }
}

または、docker build -t awslabs/bedrock-kb-retrieval-mcp-server . が成功した後の Docker:

# fictitious `.env` file with AWS temporary credentials
AWS_ACCESS_KEY_ID=ASIAIOSFODNN7EXAMPLE
AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
AWS_SESSION_TOKEN=AQoEXAMPLEH4aoAH0gNCAPy...truncated...zrkuWJOgQs8IZZaIv2BXIa2R4Olgk
  {
    "mcpServers": {
      "awslabs.bedrock-kb-retrieval-mcp-server": {
        "command": "docker",
        "args": [
          "run",
          "--rm",
          "--interactive",
          "--env",
          "FASTMCP_LOG_LEVEL=ERROR",
          "--env",
          "KB_INCLUSION_TAG_KEY=optional-tag-key-to-filter-kbs",
          "--env",
          "BEDROCK_KB_RERANKING_ENABLED=false",
          "--env",
          "AWS_REGION=us-east-1",
          "--env-file",
          "/full/path/to/file/above/.env",
          "awslabs/bedrock-kb-retrieval-mcp-server:latest"
        ],
        "env": {},
        "disabled": false,
        "autoApprove": []
      }
    }
  }

注意: 認証情報はホストから定期的に更新する必要があります

制限事項

  • IMAGE コンテンツタイプの結果は、KB クエリ応答に含まれません。
  • reranking パラメーターには追加のアクセス許可、Amazon Bedrock モデルアクセスが必要であり、特定のリージョンでのみ利用可能です。