Metadata-Version: 2.4
Name: cloud-storage-mcp
Version: 0.1.0
Summary: MCP server and Claude-powered CLI for Mega.nz, Box, and OneDrive — one tool to manage all your cloud storage
Author-email: Mrigank Shekhar Chaubey <mriganksc@infinitywards.com>
License: MIT
Project-URL: Homepage, https://github.com/mshekharc/cloud-storage-mcp
Project-URL: Changelog, https://github.com/mshekharc/cloud-storage-mcp/blob/main/CHANGELOG.md
Keywords: mcp,claude,mega,box,onedrive,cloud-storage,anthropic,ai
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.11
Description-Content-Type: text/markdown
Requires-Dist: mega.py>=1.0.8
Requires-Dist: tenacity>=8.0.0
Requires-Dist: boxsdk[jwt]<4.0,>=3.0.0
Requires-Dist: O365>=2.0.0
Requires-Dist: anthropic>=0.105.0
Requires-Dist: mcp>=1.27.0
Requires-Dist: click>=8.1.0

# cloud-storage-mcp

One MCP server and Claude-powered CLI to manage **Mega.nz**, **Box**, and **OneDrive** — all from a single install.

## Install

```bash
pip install cloud-storage-mcp
```

## Supported Providers

| Provider | Status |
|---|---|
| Mega.nz | ✅ Full support |
| Box | ✅ Full support |
| OneDrive | ✅ Full support |

## Setup

Credentials are stored locally at `~/.config/cloud-storage-mcp/config` (mode 600) and are never included in the package.

On first use, you'll be prompted for each provider's credentials. Or set env vars:

```bash
# Mega.nz
export MEGA_EMAIL=your@email.com
export MEGA_PASSWORD=yourpassword

# Box — create app at https://developer.box.com
export BOX_CLIENT_ID=...
export BOX_CLIENT_SECRET=...
export BOX_ACCESS_TOKEN=...

# OneDrive — register app at https://portal.azure.com
export ONEDRIVE_CLIENT_ID=...
export ONEDRIVE_CLIENT_SECRET=...
export ONEDRIVE_TENANT_ID=common   # or your Azure tenant ID

# Claude API (CLI only)
export ANTHROPIC_API_KEY=sk-ant-...
```

## Usage

### CLI

```bash
cloud-storage
# or pre-select a provider
cloud-storage --provider mega
```

Example prompts:
- `show storage usage on box`
- `list all files on onedrive`
- `search for invoices on mega`
- `upload /home/user/report.pdf to box`
- `create a folder called Backups on onedrive`
- `download photo.jpg from mega to /tmp`

### MCP Server

```bash
cloud-storage-mcp
```

Add to Claude Code (`~/.claude/settings.json`):

```json
{
  "mcpServers": {
    "cloud-storage": {
      "command": "cloud-storage-mcp",
      "env": {
        "MEGA_EMAIL": "your@email.com",
        "MEGA_PASSWORD": "yourpassword",
        "BOX_CLIENT_ID": "...",
        "BOX_CLIENT_SECRET": "...",
        "BOX_ACCESS_TOKEN": "...",
        "ONEDRIVE_CLIENT_ID": "...",
        "ONEDRIVE_CLIENT_SECRET": "..."
      }
    }
  }
}
```

## Available MCP Tools

| Tool | Description |
|---|---|
| `storage_info` | Get storage usage and quota |
| `storage_list` | List files and folders |
| `storage_search` | Search by name |
| `storage_upload` | Upload a local file |
| `storage_download` | Download a file |
| `storage_create_folder` | Create a folder |
| `storage_delete` | Delete a file or folder |

All tools take a `provider` parameter: `"mega"`, `"box"`, or `"onedrive"`.

## License

MIT
