sammcj
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"aws-kb-retrieval": {
"args": [
"-y",
"@modelcontextprotocol/server-aws-kb-retrieval"
],
"command": "npx",
"env": {
"AWS_ACCESS_KEY_ID": "YOUR_ACCESS_KEY_HERE",
"AWS_KB_IDS": "[kb-12345,kb-67890]",
"AWS_REGION": "YOUR_AWS_REGION_HERE",
"AWS_SECRET_ACCESS_KEY": "YOUR_SECRET_ACCESS_KEY_HERE",
"AWS_SESSION_TOKEN": "YOUR_OPTIONAL_SESSION_ID_FOR_SSO_TEMPORARY_CREDENTIALS_HERE"
}
}
}
}
服务介绍
AWS 知识库检索 MCP 服务器
一个用于通过 Bedrock Agent Runtime 从 AWS 知识库检索信息的 MCP 服务器实现。
功能
- RAG(Retrieval-Augmented Generation,检索增强生成):根据查询和知识库 ID 从 AWS 知识库中检索上下文。
- 支持多个结果检索:可以选择检索自定义数量的结果。
工具
- retrieve_from_aws_kb
- 使用 AWS 知识库执行检索操作。
- 输入:
query(字符串):检索的搜索查询。knowledgeBaseId(字符串):AWS 知识库的 ID。n(数字, 可选):要检索的结果数量(默认值: 3)。
- 响应格式:
- 响应现在返回两个独立的内容项:
- 一个包含来自知识库的原始上下文的文本项。
- 一个包含带有元数据(id、fileName、snippet 和 score)的结构化 RAG 源的 JSON 项。
- 这种分离允许更灵活地处理结果。
- 响应现在返回两个独立的内容项:
配置
设置 AWS 凭证
您有两种配置 AWS 凭证的选项:
选项 1:IAM 访问密钥
- 从 AWS 管理控制台获取 AWS 访问密钥 ID、秘密访问密钥和地区。
- 确保这些凭证具有适当的权限以执行 Bedrock Agent Runtime 操作。
- 如下面的配置示例所示设置环境变量。
- 对于临时凭证,您还可以使用
AWS_SESSION_TOKEN环境变量提供会话令牌。
选项 2:AWS SSO(单点登录)
服务器现在支持 AWS SSO 凭证:
- 使用您的 SSO 配置文件配置 AWS CLI:
aws configure sso - 在 MCP 服务器配置中仅设置 AWS_REGION 环境变量。
- 服务器将使用默认凭据提供程序链,其中包括 SSO 凭据。
可选:配置默认知识库 ID
您可以选择指定一个或多个默认使用的知识库 ID:
- 以 JSON 格式创建一个知识库 ID 数组。
- 将其设置为配置中的 AWS_KB_IDS 环境变量。
- 当配置了此选项时,工具中的
knowledgeBaseId参数变为可选。
与 Claude Desktop 一起使用
在您的 claude_desktop_config.json 中添加以下内容:
使用 IAM 访问密钥的 Docker
json
{
"mcpServers": {
"aws-kb-retrieval": {
"command": "docker",
"args": [ "run", "-i", "--rm", "-e", "AWS_ACCESS_KEY_ID", "-e", "AWS_SECRET_ACCESS_KEY", "-e", "AWS_REGION", "-e", "AWS_KB_IDS", "mcp/aws-kb-retrieval-server" ],
"env": {
"AWS_ACCESS_KEY_ID": "YOUR_ACCESS_KEY_HERE",
"AWS_SECRET_ACCESS_KEY": "YOUR_SECRET_ACCESS_KEY_HERE",
"AWS_SESSION_TOKEN": "YOUR_OPTIONAL_SESSION_ID_FOR_SSO_TEMPORARY_CREDENTIALS_HERE",
"AWS_REGION": "YOUR_AWS_REGION_HERE",
"AWS_KB_IDS": "["kb-12345", "kb-67890"]"
}
}
}
}
使用 AWS SSO 的 Docker
json
{
"mcpServers": {
"aws-kb-retrieval": {
"command": "docker",
"args": [ "run", "-i", "--rm", "-e", "AWS_REGION", "-e", "AWS_KB_IDS", "-v", "${HOME}/.aws:/root/.aws", "mcp/aws-kb-retrieval-server" ],
"env": {
"AWS_ACCESS_KEY_ID": "YOUR_ACCESS_KEY_HERE",
"AWS_SECRET_ACCESS_KEY": "YOUR_SECRET_ACCESS_KEY_HERE",
"AWS_SESSION_TOKEN": "YOUR_OPTIONAL_SESSION_ID_FOR_SSO_TEMPORARY_CREDENTIALS_HERE",
"AWS_REGION": "YOUR_AWS_REGION_HERE",
"AWS_KB_IDS": "["kb-12345", "kb-67890"]"
}
}
}
}
使用 IAM 访问密钥的 NPX
json
{
"mcpServers": {
"aws-kb-retrieval": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-aws-kb-retrieval"
],
"env": {
"AWS_ACCESS_KEY_ID": "YOUR_ACCESS_KEY_HERE",
"AWS_SECRET_ACCESS_KEY": "YOUR_SECRET_ACCESS_KEY_HERE",
"AWS_SESSION_TOKEN": "YOUR_OPTIONAL_SESSION_ID_FOR_SSO_TEMPORARY_CREDENTIALS_HERE",
"AWS_REGION": "YOUR_AWS_REGION_HERE",
"AWS_KB_IDS": "["kb-12345", "kb-67890"]"
}
}
}
}#### 使用NPX与AWS SSO
json
{
"mcpServers": {
"aws-kb-retrieval": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-aws-kb-retrieval"
],
"env": {
"AWS_ACCESS_KEY_ID": "请在此处输入您的访问密钥",
"AWS_SECRET_ACCESS_KEY": "请在此处输入您的秘密访问密钥",
"AWS_SESSION_TOKEN": "如果您使用SSO临时凭证,请在此处输入会话ID(可选)",
"AWS_REGION": "请在此处输入您的AWS区域",
"AWS_KB_IDS": "["kb-12345", "kb-67890"]"
}
}
}
}
本地仓库(从克隆/构建的仓库)
json
{
"mcpServers": {
"aws-kb": {
"command": "node",
"args": [
"/path/to/mcp-aws-kb/dist/index.js"
],
"env": {
"AWS_ACCESS_KEY_ID": "请在此处输入您的访问密钥",
"AWS_SECRET_ACCESS_KEY": "请在此处输入您的秘密访问密钥",
"AWS_SESSION_TOKEN": "如果您使用SSO临时凭证,请在此处输入会话ID(可选)",
"AWS_REGION": "请在此处输入您的AWS区域",
"AWS_KB_IDS": "["kb-12345", "kb-67890"]"
},
"disabled": false,
"autoApprove": [
"retrieve_from_aws_kb"
],
"timeout": 120
}
}
}
构建
Docker:
sh
docker build -t mcp/aws-kb-retrieval -f src/aws-kb-retrieval-server/Dockerfile .
许可证
此MCP服务器根据MIT许可证发布。这意味着您可以在遵守MIT许可证条款和条件的前提下自由地使用、修改和分发该软件。更多详情,请参阅项目仓库中的LICENSE文件。
本README假设您的服务器包名为@modelcontextprotocol/server-aws-kb-retrieval。如果在您的设置中包名或安装细节不同,请相应调整。同时,请确保您的服务器脚本正确构建,并且所有依赖项都在您的package.json中被妥善管理。