Proton Drive CLI MCP

io.github.borealstackPublished by GitHub account borealstackv0.1.2Updated Oct 25, 2026

Manage Proton Drive from MCP clients through Proton's official CLI without exposing credentials.

VerifiedSTDIODesktop onlyCloud & InfrastructureFiles & Storage

Overview

AI-generated overview

Lets an assistant manage Proton Drive files, folders and sharing through Proton's official CLI, without handling your Proton credentials itself.

What you can do
Check setup and sign-in: diagnose the CLI, install it if missing, start or cancel browser login, check auth status, log out, and read CLI version and help output. Browse and transfer files: list folders, inspect paths, create folders, upload and download files, and run long jobs asynchronously with status polling and cancellation. Edit small text files in place with read and write helpers. Change items: rename, copy, move, trash, restore, permanently delete, and empty the trash. Manage sharing: check sharing status, invite or remove people, and set or remove public links. Handle invitations: list, accept or reject incoming share invitations.
When to use it
Use it when you want an AI client to work with files in a Proton Drive account, such as listing a folder, uploading reports, reading or updating a small text note, or managing shares, while keeping login and encryption inside Proton's own tooling.
Requirements
Runs locally over stdio via npx, so Node.js 22 or newer is needed. The official Proton Drive CLI must be present or installable from Proton's download index, which needs network access. Signing in requires a browser for Proton's login flow. Optional environment variables such as PROTON_DRIVE_CLI_PATH and PROTON_DRIVE_CLI_AUTO_INSTALL adjust CLI resolution and installation.
Before you install
Tools can write, move, share and delete data in a real Proton Drive account. Delete and empty-trash are permanent, and destructive or account-changing actions require confirm set to true; prefer trash first. Sharing invites and public links expose files to others. The server does not ask for or store Proton credentials, but it can download and install the CLI and update PATH unless disabled.

Installation

In SourceWeft

  1. Open Proton Drive CLI MCP in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

[Proton Drive CLI MCP]

Proton Drive CLI MCP

Manage Proton Drive from Claude, Codex, VS Code/Copilot, and any MCP client through Proton's official CLI. Authentication and encrypted Drive behavior stay with Proton's tooling.

[npm version] [npm downloads] [MCP stdio] [Claude MCPB] [Codex plugin] [Node.js 22+] [OpenSSF Scorecard]

Install | First Run | Tools | Safety | Tool Reference | Latest Release


Why This Exists

AI agents can already run shell commands, but Drive operations should not depend on prompt-crafted command lines. This server exposes Proton Drive as typed MCP tools while delegating the sensitive parts to Proton's official proton-drive CLI.

What you getHow it works
Proton-supported Drive behaviorCalls the official Proton Drive CLI instead of reimplementing auth or encrypted Drive APIs.
Structured MCP toolsAgents can list, upload, download, share, trash, and inspect Drive paths through schemas.
Safer mutation flowDestructive or account-changing tools require confirm: true.
Low-friction setupRuns from npm with npx, and can install the official CLI into a managed user-local directory with SHA-512 verification.
Lower normal token useFolder lists and background job status responses are bounded by default; full files still use upload/download or text helpers.

[!NOTE] This project is an independent interoperability wrapper. It is not affiliated with Proton AG.

Install

Add the server to an MCP client as a local stdio server:

json
{  "mcpServers": {    "proton-drive": {      "command": "npx",      "args": ["-y", "@borealstack/proton-drive-cli-mcp"],      "env": {}    }  }}

The command is a stdio server. If you run it directly in a terminal, no prompt or banner is expected; it waits for MCP JSON-RPC messages on stdin.

Client Shortcuts

ClientSetup
Claude Codeclaude mcp add --transport stdio proton-drive -- npx -y @borealstack/proton-drive-cli-mcp
Claude DesktopUse the JSON config above, or install the MCPB bundle.
CodexUse the plugin metadata in plugins/proton-drive-cli-mcp.
VS Codecode --add-mcp "{\"name\":\"proton-drive\",\"command\":\"npx\",\"args\":[\"-y\",\"@borealstack/proton-drive-cli-mcp\"]}"
npmnpx -y @borealstack/proton-drive-cli-mcp

First Run

Start with diagnosis. The server will report whether the official CLI is found, whether the managed install path exists, which version is available, and whether the CLI can access /my-files.

text
Call proton_drive_diagnose

If the CLI is missing, run setup:

text
Call proton_drive_setup with installIfMissing=true

If authentication is missing, start the browser login flow:

text
Call proton_drive_auth_loginFinish Proton sign-in in the browserCall proton_drive_diagnose again

[!TIP] The server does not request or store Proton credentials. Login, session storage, and encrypted Drive behavior remain delegated to Proton's official CLI.

Requirements

  • Node.js 22+ for the published package.
  • Bun 1.3+ for repository development and Bun test coverage.
  • The official Proton Drive CLI, or network access to Proton's CLI download index for managed install.
  • Browser access for the official Proton login flow.

The CLI is resolved in this order:

  1. PROTON_DRIVE_CLI_PATH
  2. The managed user-local install path
  3. proton-drive or proton-drive.exe in the current directory or common download paths
  4. proton-drive on PATH
  5. Managed install from Proton's CLI download index

Useful environment switches:

VariableEffect
PROTON_DRIVE_CLI_PATHUse an explicit Proton Drive CLI binary.
PROTON_DRIVE_CLI_AUTO_INSTALL=0Disable managed CLI installation.
PROTON_DRIVE_CLI_INSTALL_DIROverride the managed install directory.
PROTON_DRIVE_CLI_MANAGE_PATH=0Skip managed PATH updates.
PROTON_DRIVE_AUTH_STATUS_CACHE_MSTune successful auth-status caching.
PROTON_DRIVE_VERSION_CACHE_MSTune CLI version caching.

What Agents Can Do

AreaTools
Setup and authproton_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
CLI metadataproton_drive_cli_install, proton_drive_cli_version, proton_drive_cli_help
Filesproton_drive_list, proton_drive_info, proton_drive_create_folder, proton_drive_upload, proton_drive_download
Long-running workproton_drive_list_async, proton_drive_upload_async, proton_drive_download_async, proton_drive_job_status, proton_drive_job_cancel
Small text filesproton_drive_read_text, proton_drive_write_text
Mutationsproton_drive_rename, proton_drive_copy, proton_drive_move, proton_drive_trash, proton_drive_restore, proton_drive_delete, proton_drive_empty_trash
Sharingproton_drive_sharing_status, proton_drive_sharing_invite, proton_drive_sharing_remove, proton_drive_sharing_set_url, proton_drive_sharing_remove_url
Invitationsproton_drive_invitation_list, proton_drive_invitation_accept, proton_drive_invitation_reject

Full schemas and examples are in docs/TOOLS.md.

Common Agent Workflows

text
List the top 20 items in /my-files/Reports.

Uses proton_drive_list with bounded output and pagination metadata.

text
Upload these local files to /my-files/Reports, then poll until done.

Uses proton_drive_upload_async followed by proton_drive_job_status.

text
Read /my-files/Notes/todo.txt, update the text, and write it back.

Uses proton_drive_read_text and proton_drive_write_text for small UTF-8 files. Full binary or large-file work should use proton_drive_download and proton_drive_upload.

Safety Model

This project is designed so the MCP layer can orchestrate Drive work without becoming a credential broker.

GuardrailBehavior
Credential handlingProton login and session storage stay inside the official CLI.
Destructive actionsDelete, empty trash, logout, sharing removal, and invitation decisions require confirm: true.
Public-link passwordsCustom passwords are not exposed through MCP arguments because CLI arguments can be visible to local process inspection.
Output sizeList tools are bounded; background JSON output is summarized with byte counts and truncation metadata.
Provenancenpm publishes with provenance; release assets include checksums and Sigstore-backed attestations.

[!IMPORTANT] proton_drive_delete and proton_drive_empty_trash are permanent operations. Prefer proton_drive_trash first unless the user explicitly asks to delete.

Release Channels

ChannelArtifact
npm@borealstack/proton-drive-cli-mcp
GitHub releaselatest release assets
MCP Registry manifestserver.json
Claude Desktopproton-drive-cli-mcp.mcpb
Codex pluginplugins/proton-drive-cli-mcp

Release assets include:

  • npm package tarball
  • MCPB bundle
  • SHA256SUMS
  • Sigstore JSON attestation bundle

Develop Locally

powershell
bun installbun run typecheckbun testbun run buildnpm test

Run the development server through Bun:

json
{  "mcpServers": {    "proton-drive-dev": {      "command": "bun",      "args": ["run", "<path-to-repo>/src/index.ts"],      "env": {}    }  }}

Run real-account smoke checks only when you intentionally want to touch a logged-in Proton Drive account. Keep generated smoke artifacts local and out of git.

Project Map

PathPurpose
src/index.tsstdio MCP server entry point
src/server.tsMCP tool registration surface
src/cli.tsshared Proton Drive CLI behavior
src/installer.tsmanaged official CLI download and checksum verification
docs/TOOLS.mdtool inputs, outputs, and examples
server.jsonMCP Registry metadata
mcpb/manifest.jsonClaude MCPB metadata
plugins/proton-drive-cli-mcpCodex plugin package

References

Help Discovery

If this project helps you connect Proton Drive to an MCP client, star the repository so other users can find the maintained official-CLI wrapper: borealstack/proton-drive-cli-mcp.

Source: README.md at commit bbc3209

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.2LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts