mcpField
A
AWS MCP Servers

AWS MCP Servers

本地服务
awslabs.github.io云与基础设施9.8k今天更新

关于 AWS MCP Servers

AWS MCP Servers 是 awslabs 提供的开源 MCP 服务集合,覆盖 AWS 的多个服务场景。本条目为其中的 Amazon Bedrock 知识库检索 MCP 服务,面向需要基于企业知识库回答问题的开发者。

主要功能

  1. 01发现知识库及其数据源
  2. 02使用自然语言查询知识库
  3. 03按数据源过滤检索结果
  4. 04支持向量与托管知识库
  5. 05通过 user_id 访问 ACL 保护内容
  6. 06可选的重排序功能

适用场景

  1. 01在 Amazon Bedrock 知识库中检索带引用的段落
  2. 02在 AI 助手中查询企业文档并限定数据源
  3. 03访问 SharePoint 等带权限控制的内容

MCP 相关

该服务作为 MCP 服务运行,向 MCP 客户端暴露知识库列表、查询和智能体检索等工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"mcp": {
"command": "uvx",
"args": [
"awslabs.bedrock-kb-retrieval-mcp-server@latest"
],
"env": {
"AWS_PROFILE": "<AWS_PROFILE>",
"AWS_REGION": "<AWS_REGION>",
"FASTMCP_LOG_LEVEL": "<FASTMCP_LOG_LEVEL>"
}
}
}
}
启动命令uvx awslabs.bedrock-kb-retrieval-mcp-server@latest
需要配置的环境变量
AWS_PROFILE
AWS_REGION
FASTMCP_LOG_LEVEL

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypiawslabs.bedrock-kb-retrieval-mcp-server@latest

工具

3

收录的工具列表 · 更新于 2 周前

此工具无需参数。

详细介绍

Amazon Bedrock 知识库检索 MCP 服务

用于访问 Amazon Bedrock 知识库的 MCP 服务

功能

发现知识库及其数据源
  • 查找并浏览所有可用的知识库
  • 按名称或标签搜索知识库
  • 列出与每个知识库关联的数据源
使用自然语言查询知识库
  • 使用对话式查询检索信息
  • 从知识库中获取相关段落
  • 查看所有结果的引用信息
按数据源筛选结果
  • 将查询范围限定到特定数据源
  • 包含或排除特定数据源
  • 优先显示来自特定数据源的结果
对托管知识库进行智能体检索
  • 规划多步骤检索策略,并综合生成带引用的答案
  • 一次调用即可搜索多个知识库
  • 可选择查看 Agent 规划和检索步骤的精简追踪记录
  • 仅支持托管知识库;对于其他类型,工具会返回明确提示
访问受 ACL 保护的内容
  • 传入 user_id,以从支持 ACL 的数据源(SharePoint、OneDrive、带有逐文档 ACL 的 Confluence)检索内容
  • 如果不传入,该内容将无法访问,且智能体检索的全文扩展步骤会失败,并显示 "UserContext is required for ACL-aware data sources"
  • 结果会筛选为该用户有权查看的内容
同时支持托管知识库和向量知识库
  • 适用于向量知识库(type: VECTOR)和托管知识库(type: MANAGED)
  • 自动检测知识库类型,并发送正确的 Retrieve 配置(vectorSearchConfiguration 或 managedSearchConfiguration)
  • 数据源筛选会使用适用于相应知识库类型的元数据键
  • ListKnowledgeBases 工具会报告每个知识库的 type
对结果重新排序
  • 提高检索结果的相关性
  • 使用 Amazon Bedrock 的重新排序功能
  • 按与查询的相关性对结果排序

前提条件

安装要求
  1. 从 Astral 或 GitHub README 安装 uv
  2. 使用 uv python install 3.10 安装 Python
AWS 要求
  1. AWS CLI 配置:必须配置 AWS CLI,并设置具有 Amazon Bedrock 和知识库访问权限的凭证及 AWS_PROFILE
  2. Amazon Bedrock 知识库:必须至少有一个 Amazon Bedrock 知识库带有标签键 mcp-multirag-kb,且值为 true
  3. IAM 权限:IAM 角色/用户必须具备以下相应权限:
    • 列出和描述知识库
    • 访问数据源
    • 查询知识库
重新排序要求

如果计划使用重新排序功能,Bedrock 知识库需要额外权限:

  1. IAM 角色必须同时具备 bedrock:Rerank 和 bedrock:InvokeModel 操作的权限
  2. Amazon Bedrock 知识库服务角色也必须具备这些权限
  3. 重新排序功能是否可用因模型而异:amazon.rerank-v1:0 在 us-east-1 不提供,而 cohere.rerank-v3-5:0 提供。服务会验证(区域、模型)组合,并在不匹配时立即返回明确提示。支持的区域列表请参阅官方文档,以获取最新信息。
  4. 在指定区域启用可用重新排序模型的模型访问权限。
Agentic 检索要求

AgenticQueryKnowledgeBases 工具会调用 AgenticRetrieveStream,该功能仅支持托管知识库(type: MANAGED)。它会规划检索策略,除非你传入 generate_response=false,否则还会调用基础模型编写带引用的答案。

  1. 除上述权限外,你的 IAM 角色还需要对知识库具有 bedrock:AgenticRetrieveStream 权限
  2. 由于会调用基础模型,因此每次调用的成本明显高于 QueryKnowledgeBases。如需检索而不生成综合答案,请传入 generate_response=false
  3. RetrieveAndGenerate 不支持托管知识库,因此使用 generate_response=true 进行 Agentic 检索,是从托管知识库获取生成式答案的方式
控制重排

可以使用 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": []
      }
    }
  }

注意:需要从主机持续刷新凭证

限制

  • KB 查询响应中不包含内容类型为 IMAGE 的结果。
  • reranking 参数需要额外权限和 Amazon Bedrock 模型访问权限,并且仅在特定区域可用。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。