AWS Knowledge Base Retrieval
Recupere informações de uma AWS Knowledge Base usando o Bedrock Agent Runtime.
Documentação
Servidor MCP de Recuperação da AWS Knowledge Base
Um servidor MCP para recuperar informações da AWS Knowledge Base usando o Bedrock Agent Runtime.
Recursos
- RAG (Geração Aumentada por Recuperação): Recupera contexto da AWS Knowledge Base com base em uma consulta e um ID da Knowledge Base.
- Suporte à recuperação de múltiplos resultados: Opção para recuperar um número personalizável de resultados.
Ferramentas
- retrieve_from_aws_kb
- Executa operações de recuperação usando a AWS Knowledge Base.
- Entradas:
query(string): A consulta de busca para recuperação.knowledgeBaseId(string): O ID da AWS Knowledge Base.n(número, opcional): Número de resultados a recuperar (padrão: 3).
- Formato da resposta:
- A resposta agora retorna dois itens de conteúdo separados:
- Um item de texto contendo o contexto bruto da knowledge base.
- Um item JSON contendo as fontes RAG estruturadas com metadados (id, fileName, snippet e score).
- Essa separação permite um processamento mais flexível dos resultados.
- A resposta agora retorna dois itens de conteúdo separados:
Configuração
Configurando credenciais da AWS
Você tem duas opções para configurar as credenciais da AWS:
Opção 1: Chaves de acesso IAM
- Obtenha o ID da chave de acesso, a chave de acesso secreta e a região da AWS no Console de Gerenciamento da AWS.
- Garanta que essas credenciais tenham permissões apropriadas para operações do Bedrock Agent Runtime.
- Defina as variáveis de ambiente conforme mostrado nos exemplos de configuração abaixo.
- Para credenciais temporárias, você também pode fornecer um token de sessão usando a variável de ambiente
AWS_SESSION_TOKEN.
Opção 2: AWS SSO (Single Sign-On)
O servidor agora suporta credenciais AWS SSO:
- Configure a CLI da AWS com seu perfil SSO:
aws configure sso - Defina apenas a variável de ambiente AWS_REGION na configuração do servidor MCP.
- O servidor usará a cadeia padrão de provedores de credenciais, que inclui credenciais SSO.
Opcional: Configurar IDs padrão da Knowledge Base
Você pode opcionalmente especificar um ou mais IDs da knowledge base para usar por padrão:
- Crie uma matriz de IDs da knowledge base em formato JSON.
- Defina isso como a variável de ambiente AWS_KB_IDS na sua configuração.
- Quando isso estiver configurado, o parâmetro
knowledgeBaseIdse torna opcional na ferramenta.
Uso com Claude Desktop
Adicione isso ao seu claude_desktop_config.json:
Docker com chaves de acesso IAM
{
"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\"]"
}
}
}
}
Docker com AWS SSO
{
"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\"]"
}
}
}
}
NPX com chaves de acesso IAM
{
"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 com AWS SSO
{
"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\"]"
}
}
}
}
Repositório local (a partir do repositório clonado/compilado)
{
"mcpServers": {
"aws-kb": {
"command": "node",
"args": [
"/path/to/mcp-aws-kb/dist/index.js"
],
"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\"]"
},
"disabled": false,
"autoApprove": [
"retrieve_from_aws_kb"
],
"timeout": 120
}
}
}
Compilação
Docker:
docker build -t mcp/aws-kb-retrieval -f src/aws-kb-retrieval-server/Dockerfile .
Licença
Este servidor MCP é licenciado sob a Licença MIT. Isso significa que você é livre para usar, modificar e distribuir o software, sujeito aos termos e condições da Licença MIT. Para mais detalhes, consulte o arquivo LICENSE no repositório do projeto.
Este README assume que o pacote do seu servidor é nomeado @modelcontextprotocol/server-aws-kb-retrieval. Ajuste o nome do pacote e os detalhes de instalação se forem diferentes na sua configuração. Além disso, garanta que o script do seu servidor esteja corretamente compilado e que todas as dependências estejam devidamente gerenciadas no seu package.json.