A Model Context Protocol (MCP) server that enables AI assistants like Claude Desktop, Cursor, and other MCP-compatible clients to interact with your Proton Drive files.
- 📁 List files and folders in your Proton Drive
- 📄 Read file contents directly
- ✏️ Create and write files to Proton Drive
- 🗑️ Delete files and folders
- 📂 Create new folders
- 🔄 Cross-platform support (Windows, macOS, Linux)
- 🔒 Secure - Works through local filesystem, no credentials needed
- 🚀 Easy to install - Just npm install and configure
- Node.js 16 or higher
- Proton Drive desktop app installed and synced
- Claude Desktop, Cursor, or any MCP-compatible client
npm install -g proton-drive-mcpgit clone https://github.com/anyrxo/proton-drive-mcp.git
cd proton-drive-mcp
npm install
npm run buildThe MCP will try to auto-detect your Proton Drive location, but you can also set it manually:
- macOS:
~/Library/CloudStorage/ProtonDrive-[email]-folder - Windows:
C:\Users\[username]\Proton Drive - Linux:
~/ProtonDrive
Add to your Claude Desktop config:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"proton-drive": {
"command": "node",
"args": ["path/to/proton-drive-mcp/dist/index.js"]
}
}
}Add to your Cursor settings:
{
"mcp.servers": {
"proton-drive": {
"command": "node",
"args": ["path/to/proton-drive-mcp/dist/index.js"]
}
}
}If your Proton Drive is in a non-standard location:
{
"mcpServers": {
"proton-drive": {
"command": "node",
"args": ["path/to/proton-drive-mcp/dist/index.js"],
"env": {
"PROTON_DRIVE_PATH": "/custom/path/to/ProtonDrive"
}
}
}
}Once configured, you can ask your AI assistant:
- "List all files in my Proton Drive"
- "Create a new file called notes.txt with some content"
- "Read the contents of Documents/report.pdf"
- "Create a new folder called Projects"
- "Delete the file old-notes.txt"
The MCP provides these tools:
| Tool | Description |
|---|---|
check_mount |
Verify Proton Drive is accessible |
list_files |
List contents of a directory |
read_file |
Read file contents |
write_file |
Create or overwrite files |
delete_file |
Remove files or folders |
create_folder |
Create new directories |
Test if the MCP is working:
# Check if Proton Drive is detected
npm run test:connection
# Run all tests
npm test- Make sure Proton Drive desktop app is running
- Check if your files are synced
- Set
PROTON_DRIVE_PATHenvironment variable manually
- Ensure the MCP has read/write access to your Proton Drive folder
- On macOS, you may need to grant permissions in System Preferences
- Restart your AI client after configuration
- Check the logs for any error messages
- Verify the path to the MCP is correct
# Install dependencies
npm install
# Run in development mode
npm run dev
# Build for production
npm run build
# Run tests
npm testContributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
MIT License - see LICENSE file
- All operations are performed locally on your filesystem
- No data is sent to external servers
- Proton's end-to-end encryption is preserved
- Path validation prevents directory traversal attacks
- Large files (>10MB) may take time to read
- Binary files are not supported for reading (yet)
- Some special characters in filenames may cause issues
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Made with ❤️ for the Proton Drive community