Skip to main content
Glama
FuturixAI-and-Quantum-Works

zerodrive-mcp-server

ZeroDrive MCP Server

A Model Context Protocol (MCP) server for ZeroDrive file management. This server enables AI assistants like Claude to interact with ZeroDrive cloud storage through a standardized interface.

Features

  • 28 MCP Tools across 4 categories:

    • File Operations (8 tools): List, get, upload, download, move, share files

    • Folder Operations (7 tools): Create, list, update, delete, move, share folders

    • Workspace Operations (10 tools): Manage collaborative workspaces with files and folders

    • Trash Operations (3 tools): List, restore, and empty trash

  • Production-Ready:

    • Zod validation for all inputs

    • Structured logging with pino

    • Comprehensive error handling

    • TypeScript with strict mode

Related MCP server: Filesystem MCP Server

Requirements

  • Node.js 22.0.0 or higher

  • ZeroDrive API key

Installation

npx @futurixai-labs/zerodrive-mcp-server

From Source

# Clone the repository
git clone https://github.com/futurixai/zerodrive-mcp-server.git
cd zerodrive-mcp-server

# Install dependencies
npm install

# Build
npm run build

Configuration

Set the required environment variable:

export ZERODRIVE_API_KEY="your-api-key-here"

Optional environment variables:

Variable

Default

Description

ZERODRIVE_BASE_URL

https://drive.futurixai.com

API base URL

LOG_LEVEL

info

Log level (trace, debug, info, warn, error, fatal, silent)

NODE_ENV

production

Environment mode

Usage with Claude Desktop

Add to your Claude Desktop configuration (claude_desktop_config.json):

{
  "mcpServers": {
    "zerodrive": {
      "command": "npx",
      "args": ["@futurixai-labs/zerodrive-mcp-server"],
      "env": {
        "ZERODRIVE_API_KEY": "your-api-key-here"
      }
    }
  }
}

Available Tools

File Tools

Tool

Description

list_files

List files with filtering, pagination, and sorting

get_file

Get detailed file metadata

upload_file

Upload a file from local path

download_file

Generate download URL for a file

generate_signed_url

Generate time-limited signed URL

fetch_file_content

Fetch text content of a file

move_file

Move file to different folder

share_file

Share file with other users

Folder Tools

Tool

Description

list_folders

List folders with filtering and pagination

create_folder

Create a new folder

get_folder

Get folder details

update_folder

Update folder properties

delete_folder

Delete folder (to trash or permanent)

move_folder

Move folder to different parent

share_folder

Share folder with other users

Workspace Tools

Tool

Description

list_workspaces

List all accessible workspaces

create_workspace

Create a new workspace

get_workspace

Get workspace details

upload_workspace_file

Upload file to workspace

list_workspace_files

List files in workspace

list_workspace_folders

List folders in workspace

create_workspace_folder

Create folder in workspace

get_workspace_folder

Get workspace folder details

update_workspace_folder

Update workspace folder

delete_workspace_folder

Delete workspace folder

Trash Tools

Tool

Description

list_trash

List trashed items

restore_from_trash

Restore item from trash

empty_trash

Permanently delete all trashed items

Development

# Install dependencies
npm install

# Run type checking
npm run typecheck

# Build
npm run build

# Run linting
npm run lint

# Run tests
npm test

# Format code
npm run format

Project Structure

src/
├── index.ts              # Entry point
├── api/                  # HTTP client layer
│   ├── client.ts         # API client with auth
│   └── endpoints.ts      # API endpoint constants
├── config/               # Configuration
│   ├── env.ts            # Environment validation
│   └── constants.ts      # Application constants
├── errors/               # Error handling
│   └── base.ts           # Error classes
├── logging/              # Structured logging
│   └── logger.ts         # Pino logger setup
├── schemas/              # Zod validation schemas
│   ├── common.ts         # Shared schemas
│   ├── files.ts          # File tool schemas
│   ├── folders.ts        # Folder tool schemas
│   ├── workspaces.ts     # Workspace tool schemas
│   └── trash.ts          # Trash tool schemas
├── server/               # MCP server setup
│   ├── server.ts         # Server creation
│   └── handlers.ts       # Request handlers
├── tools/                # Tool implementations
│   ├── files/            # File tools
│   ├── folders/          # Folder tools
│   ├── workspaces/       # Workspace tools
│   ├── trash/            # Trash tools
│   └── registry.ts       # Tool dispatcher
├── types/                # TypeScript types
│   ├── entities.ts       # Domain types
│   └── api.ts            # API types
└── utils/                # Utilities
    ├── query-builder.ts  # URL query builder
    ├── request-builder.ts # Request body builder
    ├── upload-handler.ts # File upload logic
    └── response-formatter.ts # Response formatting

Contributing

See CONTRIBUTING.md for contribution guidelines.

License

MIT License - see LICENSE for details.

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
2Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/FuturixAI-and-Quantum-Works/zerodrive-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server