CloudSee Drive MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CLOUDSEE_LOG_LEVEL | No | error | warn | info | debug. At debug, every API request + response is logged to stderr (secret redacted) for auditing. | info |
| CLOUDSEE_API_KEY_ID | Yes | Your CloudSee Drive API key id. | |
| CLOUDSEE_TIMEOUT_MS | No | Per-request timeout in milliseconds. | 30000 |
| CLOUDSEE_API_BASE_URL | No | API base URL. UAT: https://drive-api-uat.cloudsee.cloud. | https://drive-api.cloudsee.cloud |
| CLOUDSEE_API_KEY_SECRET | Yes | The matching API key secret. Never commit this. | |
| CLOUDSEE_DEFAULT_BUCKET | No | Default drive (S3 bucket) for tool calls that omit bucketName. Find the name in the CloudSee dashboard. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_bucketsA | List the drives registered to the authenticated CloudSee Drive account that the caller is allowed to see. Use this first to discover available drives before browsing or searching; the |
| browse_folderA | List the files and sub-folders inside a folder of a drive (the indexed view), with sorting and pagination. Requires the drive (bucketName). To filter by keyword use 'search_files'; for a complete, recursive file listing straight from storage use 'list_files'. |
| search_filesA | Search for files and folders by name keyword within a drive (the indexed view). Requires the drive (bucketName). Returns matches with pagination. |
| list_filesA | List the files in a drive straight from storage, recursively by default — the most reliable way to see what a drive actually contains. Requires the drive (bucketName). Returns names, sizes, storage classes and keys, with pagination. The object id in each result is regenerated on every call and must never be used for rename_file, move_file, update_metadata, or delete_files — use search_files, browse_folder, or recent_files for a stable StorageId instead. |
| recent_filesA | List the account's most recently accessed or modified files, newest first, with pagination. |
| get_file_metadataA | Get detailed metadata for a single file or object (size, type, timestamps, storage class, and other attributes) by its object key. Requires the drive (bucketName). |
| get_file_tagsA | Get the S3 object tags (key/value pairs) attached to a file, by object key. Requires the drive (bucketName). |
| download_fileA | Get a short-lived pre-signed download URL for a file. Requires the drive (bucketName). The URL is time-limited and grants read access to that one object — share it with care. Returns the URL; it does not load file bytes into the conversation. |
| share_linkA | Create a shareable, time-limited link to a file (a pre-signed URL suitable for sharing). Requires the drive (bucketName). For richer share management (revocation, folder/prefix shares, expiry control) use the CloudSee dashboard. |
| upload_fileA | Upload a local file to a folder in a drive. Requires the drive (bucketName). Reads the file from the local machine, requests pre-signed upload URL(s), uploads the bytes to storage, then finalizes the object. Files up to 8 MiB use a single upload; larger files are uploaded in parts automatically. (Write access is authorized server-side by the public API's RBAC — a denial means the API key lacks this tool's scope, not a tool failure.) |
| create_folderA | Create a new folder at the given path in a drive. Requires the drive (bucketName). (Write access is authorized server-side by the public API's RBAC — a denial means the API key lacks this tool's scope, not a tool failure.) |
| rename_fileA | Rename a file or folder in a drive, addressed by its exact object key plus its storage id (the StorageId field from search_files / browse_folder / recent_files — not from list_files). Queued: returns a RequestId and the rename completes in the background, typically under 2 minutes — verify by listing until the new name appears. Requires the drive (bucketName). Destructive (changes the object's key). Requires confirm=true. (Write access is authorized server-side by the public API's RBAC — a denial means the API key lacks this tool's scope, not a tool failure.) |
| move_fileA | Move (or copy, with asCopy=true) a file or folder to a new location, addressed by its exact object key plus its storage id (the StorageId field from search_files / browse_folder / recent_files — not from list_files). Queued: returns a RequestId and the operation completes in the background, typically under 2 minutes — verify by listing until the object appears at the destination. Requires the source drive (bucketName). A move removes the source and is destructive, so it requires confirm=true; a copy does not. (Write access is authorized server-side by the public API's RBAC — a denial means the API key lacks this tool's scope, not a tool failure.) |
| duplicate_fileA | Create a copy of a file in the same location. Requires the drive (bucketName). (Write access is authorized server-side by the public API's RBAC — a denial means the API key lacks this tool's scope, not a tool failure.) |
| delete_filesA | Permanently delete one or more files/folders from a drive, each addressed by its exact object key plus its storage id (the StorageId field from search_files / browse_folder / recent_files — not from list_files). Queued: returns a RequestId per object and the deletes complete in the background, typically under 2 minutes — verify by listing until the objects disappear. Requires the drive (bucketName). Destructive and irreversible. Requires confirm=true. (Write access is authorized server-side by the public API's RBAC — a denial means the API key lacks this tool's scope, not a tool failure.) |
| update_metadataA | Update a file's metadata (category / description / project) and tags in a drive, addressed by its storage id (the StorageId field from search_files / browse_folder / recent_files — not from list_files). Destructive: this SETS the full state — omitted metadata fields and omitted tags are cleared. Requires the drive (bucketName) and confirm=true. (Write access is authorized server-side by the public API's RBAC — a denial means the API key lacks this tool's scope, not a tool failure.) |
| restore_archived_fileA | Begin restoring an archived (S3 Glacier) object so it can be downloaded. Requires the drive (bucketName). This is Glacier un-archiving — NOT recovery of a deleted file — and may incur retrieval cost and take minutes to hours. Requires confirm=true. (Write access is authorized server-side by the public API's RBAC — a denial means the API key lacks this tool's scope, not a tool failure.) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/webapper-services/cloudsee-drive-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server