AWS S3

Recupera arquivos como PDFs de um bucket AWS S3. Requer credenciais AWS para acesso.

Documentação

Servidor de Protocolo de Contexto de Modelo (MCP) de Exemplo para S3

Uma implementação de servidor MCP para recuperar dados como PDFs do S3.

Recursos

Recursos

Exponha dados do AWS S3 por meio de Recursos. (pense neles como endpoints GET; eles são usados para carregar informações no contexto do LLM). Atualmente, apenas documentos PDF são suportados e limitados a 1000 objetos.

Ferramentas

  • ListBuckets
    • Retorna uma lista de todos os buckets pertencentes ao remetente autenticado da solicitação
  • ListObjectsV2
    • Retorna alguns ou todos (até 1.000) os objetos em um bucket a cada solicitação
  • GetObject
    • Recupera um objeto do Amazon S3. Na solicitação GetObject, especifique o nome completo da chave do objeto. Buckets de propósito geral - Tanto as solicitações de estilo virtual-hosted quanto as de estilo path são suportadas

Configuração

Configurando credenciais da AWS

  1. Obtenha o ID da chave de acesso da AWS, a chave de acesso secreta e a região no Console de Gerenciamento da AWS.
  2. Garanta que essas credenciais tenham permissões apropriadas para o AWS S3.

Uso com Claude Desktop

Claude Desktop

No MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json No Windows: %APPDATA%/Claude/claude_desktop_config.json

Configuração de Servidores Não Publicados
{
  "mcpServers": {
    "s3-mcp-server": {
      "command": "uv",
      "args": [
        "--directory",
        "/Users/user/generative_ai/model_context_protocol/s3-mcp-server",
        "run",
        "s3-mcp-server"
      ]
    }
  }
}
Configuração de Servidores Publicados
{
  "mcpServers": {
    "s3-mcp-server": {
      "command": "uvx",
      "args": [
        "s3-mcp-server"
      ]
    }
  }
}

Desenvolvimento

Construção e Publicação

Para preparar o pacote para distribuição:

  1. Sincronize as dependências e atualize o arquivo de bloqueio:
uv sync
  1. Construa as distribuições do pacote:
uv build

Isso criará distribuições de origem e wheel no diretório dist/.

  1. Publique no PyPI:
uv publish

Observação: Você precisará definir as credenciais do PyPI por meio de variáveis de ambiente ou sinalizadores de comando:

  • Token: --token ou UV_PUBLISH_TOKEN
  • Ou nome de usuário/senha: --username/UV_PUBLISH_USERNAME e --password/UV_PUBLISH_PASSWORD

Depuração

Como os servidores MCP são executados via stdio, a depuração pode ser desafiadora. Para a melhor experiência de depuração, recomendamos fortemente o uso do MCP Inspector.

Você pode iniciar o MCP Inspector via npm com este comando:

npx @modelcontextprotocol/inspector uv --directory /Users/user/generative_ai/model_context_protocol/s3-mcp-server run s3-mcp-server

Ao iniciar, o Inspector exibirá uma URL que você pode acessar no seu navegador para começar a depurar.

Segurança

Consulte CONTRIBUTING para obter mais informações.

Licença

Esta biblioteca é licenciada sob a Licença MIT-0. Consulte o arquivo LICENSE.