Proton Drive CLI MCP
Servidor MCP do Proton Drive CLI e metadados prontos para Codex/Claude do Proton Drive CLI oficial.
Documentação
Proton Drive CLI MCP
Gerencie o Proton Drive a partir do Claude, Codex, VS Code/Copilot e qualquer cliente MCP por meio da CLI oficial da Proton. A autenticação e o comportamento do Drive criptografado permanecem com as ferramentas da Proton.
Instalação | Primeira Execução | Ferramentas | Segurança | Referência de Ferramentas | Última Versão
Por que isso existe
Agentes de IA já podem executar comandos de shell, mas operações no Drive não devem depender
de linhas de comando elaboradas por prompts. Este servidor expõe o Proton Drive como ferramentas
MCP tipadas, delegando as partes sensíveis à CLI oficial da Proton proton-drive.
| O que você obtém | Como funciona |
|---|---|
| Comportamento do Drive com suporte da Proton | Chama a CLI oficial do Proton Drive em vez de reimplementar autenticação ou APIs criptografadas do Drive. |
| Ferramentas MCP estruturadas | Agentes podem listar, enviar, baixar, compartilhar, mover para a lixeira e inspecionar caminhos do Drive por meio de esquemas. |
| Fluxo de mutação mais seguro | Ferramentas destrutivas ou que alteram a conta exigem confirm: true. |
| Configuração de baixo atrito | Executa a partir do npm com npx e pode instalar a CLI oficial em um diretório gerenciado pelo usuário com verificação SHA-512. |
| Menor uso normal de tokens | Listas de pastas e respostas de status de trabalhos em segundo plano são limitadas por padrão; arquivos completos ainda usam auxiliares de upload/download ou texto. |
[!NOTE] Este projeto é um wrapper de interoperabilidade independente. Não é afiliado à Proton AG.
Instalação
Adicione o servidor a um cliente MCP como um servidor stdio local:
{
"mcpServers": {
"proton-drive": {
"command": "npx",
"args": ["-y", "@borealstack/proton-drive-cli-mcp"],
"env": {}
}
}
}
O comando é um servidor stdio. Se você o executar diretamente em um terminal, nenhum prompt ou banner é esperado; ele aguarda mensagens JSON-RPC do MCP na entrada padrão.
Atalhos para Clientes
| Cliente | Configuração |
|---|---|
| Claude Code | claude mcp add --transport stdio proton-drive -- npx -y @borealstack/proton-drive-cli-mcp |
| Claude Desktop | Use o JSON de configuração acima ou instale o pacote MCPB. |
| Codex | Use os metadados do plugin em plugins/proton-drive-cli-mcp. |
| VS Code | code --add-mcp "{\"name\":\"proton-drive\",\"command\":\"npx\",\"args\":[\"-y\",\"@borealstack/proton-drive-cli-mcp\"]}" |
| npm | npx -y @borealstack/proton-drive-cli-mcp |
Primeira Execução
Comece com o diagnóstico. O servidor informará se a CLI oficial foi encontrada,
se o caminho de instalação gerenciado existe, qual versão está disponível e se
a CLI pode acessar /my-files.
Call proton_drive_diagnose
Se a CLI estiver ausente, execute a configuração:
Call proton_drive_setup with installIfMissing=true
Se a autenticação estiver ausente, inicie o fluxo de login no navegador:
Call proton_drive_auth_login
Finish Proton sign-in in the browser
Call proton_drive_diagnose again
[!TIP] O servidor não solicita nem armazena credenciais da Proton. Login, armazenamento de sessão e comportamento do Drive criptografado permanecem delegados à CLI oficial da Proton.
Requisitos
- Node.js 22+ para o pacote publicado.
- Bun 1.3+ para desenvolvimento do repositório e cobertura de testes com Bun.
- A CLI oficial do Proton Drive, ou acesso à rede ao índice de download da CLI da Proton para instalação gerenciada.
- Acesso ao navegador para o fluxo de login oficial da Proton.
A CLI é resolvida nesta ordem:
PROTON_DRIVE_CLI_PATH- O caminho de instalação gerenciado pelo usuário
proton-driveouproton-drive.exeno diretório atual ou em caminhos de download comunsproton-driveemPATH- Instalação gerenciada a partir do índice de download da CLI da Proton
Variáveis de ambiente úteis:
| Variável | Efeito |
|---|---|
PROTON_DRIVE_CLI_PATH | Use um binário explícito da CLI do Proton Drive. |
PROTON_DRIVE_CLI_AUTO_INSTALL=0 | Desativa a instalação gerenciada da CLI. |
PROTON_DRIVE_CLI_INSTALL_DIR | Substitui o diretório de instalação gerenciado. |
PROTON_DRIVE_CLI_MANAGE_PATH=0 | Ignora atualizações de PATH gerenciadas. |
PROTON_DRIVE_AUTH_STATUS_CACHE_MS | Ajusta o cache de status de autenticação bem-sucedida. |
PROTON_DRIVE_VERSION_CACHE_MS | Ajusta o cache de versão da CLI. |
O que os Agentes Podem Fazer
| Área | Ferramentas |
|---|---|
| Configuração e autenticação | proton_drive_diagnose, proton_drive_setup, proton_drive_auth_status, proton_drive_auth_login, proton_drive_auth_login_status, proton_drive_auth_login_cancel, proton_drive_auth_logout |
| Metadados da CLI | proton_drive_cli_install, proton_drive_cli_version, proton_drive_cli_help |
| Arquivos | proton_drive_list, proton_drive_info, proton_drive_create_folder, proton_drive_upload, proton_drive_download |
| Trabalhos de longa duração | proton_drive_list_async, proton_drive_upload_async, proton_drive_download_async, proton_drive_job_status, proton_drive_job_cancel |
| Pequenos arquivos de texto | proton_drive_read_text, proton_drive_write_text |
| Mutações | proton_drive_rename, proton_drive_copy, proton_drive_move, proton_drive_trash, proton_drive_restore, proton_drive_delete, proton_drive_empty_trash |
| Compartilhamento | proton_drive_sharing_status, proton_drive_sharing_invite, proton_drive_sharing_remove, proton_drive_sharing_set_url, proton_drive_sharing_remove_url |
| Convites | proton_drive_invitation_list, proton_drive_invitation_accept, proton_drive_invitation_reject |
Esquemas completos e exemplos estão em docs/TOOLS.md.
Fluxos de Trabalho Comuns para Agentes
List the top 20 items in /my-files/Reports.
Usa proton_drive_list com saída limitada e metadados de paginação.
Upload these local files to /my-files/Reports, then poll until done.
Usa proton_drive_upload_async seguido por proton_drive_job_status.
Read /my-files/Notes/todo.txt, update the text, and write it back.
Usa proton_drive_read_text e proton_drive_write_text para pequenos arquivos UTF-8.
Trabalho com arquivos binários completos ou grandes deve usar proton_drive_download e
proton_drive_upload.
Modelo de Segurança
Este projeto foi projetado para que a camada MCP possa orquestrar o trabalho no Drive sem se tornar um intermediário de credenciais.
| Salvaguarda | Comportamento |
|---|---|
| Tratamento de credenciais | Login da Proton e armazenamento de sessão permanecem dentro da CLI oficial. |
| Ações destrutivas | Excluir, esvaziar lixeira, sair, remover compartilhamentos e decisões de convites exigem confirm: true. |
| Senhas de links públicos | Senhas personalizadas não são expostas por meio de argumentos MCP porque argumentos de CLI podem ser visíveis para inspeção de processos locais. |
| Tamanho da saída | Ferramentas de listagem são limitadas; saída JSON em segundo plano é resumida com contagens de bytes e metadados de truncamento. |
| Proveniência | Publicações no npm incluem proveniência; artefatos de versão incluem somas de verificação e atestados com suporte Sigstore. |
[!IMPORTANT]
proton_drive_deleteeproton_drive_empty_trashsão operações permanentes. Prefiraproton_drive_trashprimeiro, a menos que o usuário peça explicitamente para excluir.
Canais de Versão
| Canal | Artefato |
|---|---|
| npm | @borealstack/proton-drive-cli-mcp |
| Versão do GitHub | artefatos da versão mais recente |
| Manifesto do Registro MCP | server.json |
| Claude Desktop | proton-drive-cli-mcp.mcpb |
| Plugin Codex | plugins/proton-drive-cli-mcp |
Os artefatos de versão incluem:
- Pacote tarball do npm
- Pacote MCPB
SHA256SUMS- Pacote de atestado JSON Sigstore
Desenvolver Localmente
bun install
bun run typecheck
bun test
bun run build
npm test
Execute o servidor de desenvolvimento por meio do Bun:
{
"mcpServers": {
"proton-drive-dev": {
"command": "bun",
"args": ["run", "<path-to-repo>/src/index.ts"],
"env": {}
}
}
}
Execute verificações de fumaça com conta real somente quando você quiser intencionalmente tocar em uma conta do Proton Drive conectada. Mantenha artefatos de fumaça gerados localmente e fora do git.
Mapa do Projeto
| Caminho | Finalidade |
|---|---|
| src/index.ts | Ponto de entrada do servidor MCP stdio |
| src/server.ts | Superfície de registro de ferramentas MCP |
| src/cli.ts | Comportamento compartilhado da CLI do Proton Drive |
| src/installer.ts | Download gerenciado da CLI oficial e verificação de soma de verificação |
| docs/TOOLS.md | Entradas, saídas e exemplos de ferramentas |
| server.json | Metadados do Registro MCP |
| mcpb/manifest.json | Metadados do Claude MCPB |
| plugins/proton-drive-cli-mcp | Pacote do plugin Codex |
Referências
- Proton: Usando a CLI do Proton Drive
- Blog da Proton: Apresentando a CLI do Proton Drive
- README oficial da CLI do Proton Drive
- SDK TypeScript do Model Context Protocol
Descoberta de Ajuda
Se este projeto ajudar você a conectar o Proton Drive a um cliente MCP, dê uma estrela no repositório para que outros usuários possam encontrar o wrapper mantido da CLI oficial: borealstack/proton-drive-cli-mcp.