idrive-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| IDRIVE_COOKIE | Yes | The session cookie from a logged-in iDrive web console. Log in to idrive.com, open DevTools -> Network, copy the Cookie header from any XHR request to www.idrive.com, and set this to that value. Contains the SES_TOKEN (JWT) and expires after roughly 24 hours. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_account_featuresA | Returns the boolean feature flags iDrive uses to decide which product sections (e.g. Remote PC, E2 object storage, 360 backup) show in the web console's left nav for this account. The exact set of keys isn't guaranteed stable across accounts — treat this as a loose flag bag, not a fixed schema. |
| get_dashboardA | Returns the raw JSON from iDrive's user dashboard endpoint, as-is. Its response shape is unmapped and unconfirmed — in the one captured session so far it returned an empty array. Callers should treat the result as opaque diagnostic data and must not rely on any specific field being present. |
| get_cloud_backup_planA | Returns iDrive's cloud-to-cloud (c2c) product tier pricing/upsell info (current plan, monthly/yearly price, any active offer or promo code). This is billing information only — it does NOT list the user's actual connected cloud accounts (Google Drive, iCloud, etc.) or their backed-up data; no endpoint for that has been discovered yet (see docs/api-map.md, 'Still needed from you' item 6). |
| get_account_usageA | Returns the account's used and total Sync storage quota. There is no dedicated JSON usage endpoint for this — it's scraped from two inline variables on iDrive's account.html page (see docs/api-map.md's 'Account/storage usage' section), so this tool is inherently fragile: a change to that page's markup or variable names could silently break it (it fails with a clear tool error in that case, rather than a crash or a guessed value). Values are returned as raw, free-form strings with their unit suffix (e.g. "0.00 KB", "5000.00 GB"), not parsed into numbers. This reflects the page's own 'Sync' quota naming specifically — whether it also represents total usage across device backups (not just the Sync area) is unconfirmed. |
| list_devicesA | Lists every device backed up under the authenticated iDrive account, including each device's ID, operating system, nickname, IP address, and backup bucket location. |
| list_filesA | Lists the files and folders backed up for a given device at a given path, browsing the device's backed-up file tree as shown in iDrive's restore console. Use the sibling |
| browse_folderA | Lists the files and folders backed up for a given device at a given path, via the richer EVS-hosted |
| get_thumbnailA | Fetches a thumbnail preview image for a backed-up file, via the EVS-hosted |
| download_fileA | Downloads a backed-up file's actual content, via the EVS-hosted |
| get_file_propertiesA | Fetches metadata (size, last-modified date) for a single backed-up file or folder, via the EVS-hosted |
| get_file_versionsA | Lists prior backed-up versions of a single file, via the EVS-hosted |
| create_folderA | MUTATING: creates a new folder inside a device's live backup, via the EVS-hosted |
| delete_fileA | MUTATING, DESTRUCTIVE: removes one or more files/folders from a device's live backup, via the EVS-hosted |
| restore_from_trashA | MUTATING: restores one or more previously trashed files/folders back to their original location, via the EVS-hosted |
| get_server_versionA | Reports exactly which build of this MCP server is currently running: the package.json version, a git commit descriptor (short hash, plus a dirty-working-tree indicator) for the checked-out source, and a combined human-readable display string. Exists to tell a stale, already-running server process apart from the current build — this project doesn't bump package.json's version on every fix, so semver alone can't distinguish them. This is purely local diagnostic info: it doesn't call iDrive's API. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
Most tools target clearly distinct resources and actions, but list_files and browse_folder overlap in core purpose: both list backed-up files at a path, differentiated only by endpoint richness and path format. The rest of the set is cleanly separated into read, download, and mutation roles.
All tools use lowercase snake_case verb_noun names: get_, list_, browse_, download_, create_, delete_, restore_. The pattern is consistent throughout, with no camelCase mixing or vague verbs.
15 tools sits at the upper edge of the well-scoped range but is reasonable for a backup/restore server spanning account diagnostics, device/file browsing, downloads, and mutations. A few tools like get_dashboard and get_server_version are peripheral, but they do not make the set feel bloated.
The set covers the main restore-oriented workflow: discover devices, browse files, fetch metadata/versions/thumbnails, download content, and perform trash-safe mutations. Obvious gaps are the lack of trash enumeration and file search, but these are minor relative to the core backup-restore surface.