メインコンテンツまでスキップ

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 のモデルアクセスが必要であり、特定のリージョンでのみ利用可能です。