AWS MCP Servers について
AWS MCP Servers は awslabs が提供するAWS向けのオープンソースMCPサーバー群です。この項目は、Amazon Bedrock ナレッジベースを検索するサーバーで、企業のナレッジベースに基づく回答が必要な開発者を想定しています。
主な機能
- 01ナレッジベースとデータソースの検出
- 02自然言語によるナレッジベースへの問い合わせ
- 03データソースによる検索結果のフィルタリング
- 04ベクトル型とマネージド型のナレッジベース対応
- 05user_id によるACL保護コンテンツへのアクセス
- 06検索結果の再ランキング(任意)
活用シーン
- 01Amazon Bedrock ナレッジベースから引用付きの段落を取得
- 02データソースを絞り込んでAIアシスタントから社内文書を検索
- 03SharePoint など権限管理されたコンテンツへのアクセス
MCP 対応
本サーバーはMCPサーバーとして動作し、ナレッジベースの一覧取得、問い合わせ、エージェント型検索のツールをMCPクライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
3掲載時のツール一覧 · 2 週間前に更新
このツールにパラメーターはありません。
詳細
Amazon Bedrock Knowledge Base Retrieval MCP Server
Amazon Bedrock ナレッジベースにアクセスするための MCP サーバー
機能
ナレッジベースとそのデータソースを検出する
- 利用可能なすべてのナレッジベースを検索して確認する
- 名前またはタグでナレッジベースを検索する
- 各ナレッジベースに関連付けられたデータソースを一覧表示する
自然言語でナレッジベースにクエリする
- 会話形式のクエリを使用して情報を取得する
- ナレッジベースから関連する文章を取得する
- すべての結果の引用情報にアクセスする
データソースで結果をフィルタリングする
- 特定のデータソースにクエリを絞り込む
- 特定のデータソースを含める、または除外する
- 特定のデータソースからの結果を優先する
マネージドナレッジベースでのエージェント型検索
- 複数ステップの検索戦略を立て、引用付きの回答を作成する
- 1 回の呼び出しで複数のナレッジベースを検索する
- エージェントの計画および検索ステップのトレースを簡潔に表示する機能(任意)
- マネージドナレッジベースのみを対象とします。それ以外のタイプは、明確なメッセージを表示してツールが拒否します
ACL で保護されたコンテンツにアクセスする
user_idを渡すと、ACL 対応データソース(SharePoint、OneDrive、ドキュメント単位の ACL を使用する Confluence)からコンテンツを取得できますuser_idを指定しない場合、そのコンテンツにはアクセスできず、エージェント型検索の全文展開ステップは「UserContext is required for ACL-aware data sources」で失敗します- 結果は、そのユーザーが閲覧を許可されている内容に絞り込まれます
マネージドナレッジベースとベクトルナレッジベースの両方に対応
- ベクトルナレッジベース(
type: VECTOR)とマネージドナレッジベース(type: MANAGED)の両方で動作します - ナレッジベースのタイプを自動的に検出し、適切な
Retrieve設定(vectorSearchConfigurationまたはmanagedSearchConfiguration)を送信します - データソースのフィルタリングには、ナレッジベースのタイプに適したメタデータキーを使用します
ListKnowledgeBasesツールは、各ナレッジベースのtypeを報告します
結果を再ランク付けする
- 検索結果の関連性を高める
- Amazon Bedrock の再ランク付け機能を使用する
- クエリとの関連性に基づいて結果を並べ替える
前提条件
インストール要件
- Astral または GitHub README から
uvをインストールします uv python install 3.10を使用して Python をインストールします
AWS の要件
- AWS CLI の設定:Amazon Bedrock とナレッジベースへのアクセス権を持つ認証情報および AWS_PROFILE を使用して、AWS CLI を設定しておく必要があります
- Amazon Bedrock ナレッジベース:タグキー
mcp-multirag-kbの値がtrueである Amazon Bedrock ナレッジベースを少なくとも 1 つ用意する必要があります - IAM 権限:IAM ロールまたはユーザーに、次の適切な権限が必要です。
- ナレッジベースの一覧表示と説明
- データソースへのアクセス
- ナレッジベースへのクエリ
再ランク付けの要件
再ランク付け機能を使用する場合、Bedrock ナレッジベースには追加の権限が必要です。
- IAM ロールに
bedrock:Rerankアクションとbedrock:InvokeModelアクションの両方に対する権限が必要です - Amazon Bedrock ナレッジベースのサービスロールにも、これらの権限が必要です
- 再ランク付けの利用可否はモデルごとに異なります。
amazon.rerank-v1:0はus-east-1では提供されていませんが、cohere.rerank-v3-5:0は提供されています。サーバーは(リージョン、モデル)の組み合わせを検証し、明確なメッセージを表示して即座に失敗します。サポート対象リージョンの最新一覧については、公式ドキュメントを参照してください。 - 指定したリージョンで利用可能な再ランク付けモデルへのモデルアクセスを有効にします。
エージェント検索の要件
AgenticQueryKnowledgeBases ツールは AgenticRetrieveStream を呼び出します。これは
マネージドナレッジベース専用(type: MANAGED)でサポートされています。検索戦略を計画し、
generate_response=false を渡さない限り、基盤モデルを呼び出して引用付きの回答を生成します。
- IAM ロールには、上記の権限に加えて、ナレッジベースに対する
bedrock:AgenticRetrieveStreamが必要です - 基盤モデルを呼び出すため、1 回の呼び出しあたりのコストは
QueryKnowledgeBasesよりも実質的に高くなります。合成なしの検索にはgenerate_response=falseを渡してください RetrieveAndGenerateはマネージドナレッジベースではサポートされていないため、generate_response=trueを使用したエージェント検索が、マネージドナレッジベースから生成された回答を取得する方法となります
リランキングの制御
リランキングは、環境変数 BEDROCK_KB_RERANKING_ENABLED を使用してグローバルに有効化または無効化できます:
falseに設定(デフォルト): 明示的に有効化しない限り、すべてのクエリでリランキングを無効化しますtrueに設定: 明示的に無効化しない限り、すべてのクエリでリランキングを有効化します
この環境変数はさまざまな形式を受け付けます:
- 有効化する場合: 'true'、'1'、'yes'、または 'on'(大文字と小文字を区別しません)
- 無効化する場合: その他の値、または未設定(デフォルトの動作)
この設定はグローバルなデフォルトを提供しますが、個々の API 呼び出しでは reranking パラメータを明示的に設定することで、これを上書きできます。
ナレッジベースの設定に関する詳細な手順については、以下を参照してください:
インストール
| Kiro | Cursor | 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 のモデルアクセスが必要であり、特定のリージョンでのみ利用できます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。