Box Automation via Rube MCP
Automate Box operations including file upload/download, content search, folder management, collaboration, metadata queries, and sign requests through Composio's Box toolkit.
Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Box connection via with toolkit
- Always call first to get current tool schemas
Setup
Get Rube MCP: Add
as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
- Verify Rube MCP is available by confirming responds
- Call with toolkit
- If connection is not ACTIVE, follow the returned auth link to complete Box OAuth
- Confirm connection status shows ACTIVE before running any workflows
Core Workflows
1. Upload and Download Files
When to use: User wants to upload files to Box or download files from it
Tool sequence:
- - Find the target folder if path is unknown [Prerequisite]
BOX_GET_FOLDER_INFORMATION
- Verify folder exists and get folder_id [Prerequisite]
- - Browse folder contents and discover file IDs [Optional]
- - Upload a file to a specific folder [Required for upload]
- - Download a file by file_id [Required for download]
- - Bundle multiple files/folders into a zip [Optional]
Key parameters:
- : Folder ID for upload destination (use for root folder)
- : FileUploadable object with , , and for uploads
- : Unique file identifier for downloads
- : Optional file version ID for downloading specific versions
- : Comma-separated list of attributes to return
Pitfalls:
- Uploading to a folder with existing filenames can trigger conflict behavior; decide overwrite vs rename semantics
- Files over 50MB should use chunk upload APIs (not available via standard tools)
- The part of upload must come before the part or you get HTTP 400 with
metadata_after_file_contents
- File IDs and folder IDs are numeric strings extractable from Box web app URLs (e.g.,
https://*.app.box.com/files/123
gives file_id )
2. Search and Browse Content
When to use: User wants to find files, folders, or web links by name, content, or metadata
Tool sequence:
- - Full-text search across files, folders, and web links [Required]
- - Browse contents of a specific folder [Optional]
- - Get detailed metadata for a specific file [Optional]
BOX_GET_FOLDER_INFORMATION
- Get detailed metadata for a specific folder [Optional]
BOX_QUERY_FILES_FOLDERS_BY_METADATA
- Search by metadata template values [Optional]
BOX_LIST_RECENTLY_ACCESSED_ITEMS
- List recently accessed items [Optional]
Key parameters:
- : Search string supporting operators ( exact match, , , - uppercase only)
- : Filter by , , or
- : Limit search to specific folders (comma-separated IDs)
- : Filter by file type (comma-separated, no dots)
- : Search in , , , ,
- / : Date filters as comma-separated RFC3339 timestamps
- : Results per page (default 30)
- : Pagination offset (max 10000)
- : For (use for root)
Pitfalls:
- Queries with offset > 10000 are rejected with HTTP 400
- requires either or parameter
- Misconfigured filters can silently omit expected items; validate with small test queries first
- Boolean operators (, , ) must be uppercase
- requires pagination via or /; partial listings are common
- Standard folders sort items by type first (folders before files before web links)
3. Manage Folders
When to use: User wants to create, update, move, copy, or delete folders
Tool sequence:
BOX_GET_FOLDER_INFORMATION
- Verify folder exists and check permissions [Prerequisite]
- - Create a new folder [Required for create]
- - Rename, move, or update folder settings [Required for update]
- - Copy a folder to a new location [Optional]
- - Move folder to trash [Required for delete]
BOX_PERMANENTLY_REMOVE_FOLDER
- Permanently delete a trashed folder [Optional]
Key parameters:
- : Folder name (no , , trailing spaces, or /)
- : Parent folder ID (use for root)
- : Target folder ID for operations
- : Destination folder ID for moves via
- : Set to delete non-empty folders
- : Object with , , for creating shared links on folders
- , : Optional metadata fields
Pitfalls:
- moves to trash by default; use
BOX_PERMANENTLY_REMOVE_FOLDER
for permanent deletion
- Non-empty folders require for deletion
- Root folder (ID ) cannot be copied or deleted
- Folder names cannot contain , , non-printable ASCII, or trailing spaces
- Moving folders requires setting via
4. Share Files and Manage Collaborations
When to use: User wants to share files, manage access, or handle collaborations
Tool sequence:
- - Get file details and current sharing status [Prerequisite]
BOX_LIST_FILE_COLLABORATIONS
- List who has access to a file [Required]
- - Change access level or accept/reject invitations [Required]
- - Get details of a specific collaboration [Optional]
- - Create shared links, lock files, or update permissions [Optional]
- - Create shared links on folders [Optional]
Key parameters:
- : Unique collaboration identifier
- : Access level (, , , , , , , )
- : , , or for collaboration invites
- : File to share or manage
- : Set to to lock a file
permissions__can__download
: or for download permissions
Pitfalls:
- Only certain roles can invite collaborators; insufficient permissions cause authorization errors
- increases load time for the invitee's "All Files" page; limit to 1000 per user
- Collaboration expiration requires enterprise admin settings to be enabled
- Nested parameter names use double underscores (e.g., , )
5. Box Sign Requests
When to use: User wants to manage document signature requests
Tool sequence:
BOX_LIST_BOX_SIGN_REQUESTS
- List all signature requests [Required]
BOX_GET_BOX_SIGN_REQUEST_BY_ID
- Get details of a specific sign request [Optional]
BOX_CANCEL_BOX_SIGN_REQUEST
- Cancel a pending sign request [Optional]
Key parameters:
- : UUID of the sign request
- : Set to include requests where user is a collaborator (not owner)
- : Filter by sender emails (requires )
- / : Pagination parameters
Pitfalls:
- Requires Box Sign to be enabled for the enterprise account
- Deleted sign files or parent folders cause requests to not appear in listings
- Only the creator can cancel a sign request
- Sign request statuses include: , , , , , , , , ,
Common Patterns
ID Resolution
Box uses numeric string IDs for all entities:
- Root folder: Always ID
- File ID from URL:
https://*.app.box.com/files/123
gives file_id
- Folder ID from URL:
https://*.app.box.com/folder/123
gives folder_id
- Search to ID: Use to find items, then extract IDs from results
- ETag: Use with file's ETag for safe concurrent delete operations
Pagination
Box supports two pagination methods:
- Offset-based: Use + (max offset 10000)
- Marker-based: Set and follow from responses (preferred for large datasets)
- Always paginate to completion to avoid partial results
Nested Parameters
Box tools use double underscore notation for nested objects:
- for parent folder reference
- , ,
lock__is__download__prevented
for file locks
permissions__can__download
for download permissions
Known Pitfalls
ID Formats
- All IDs are numeric strings (e.g., , not integers)
- Root folder is always
- File and folder IDs can be extracted from Box web app URLs
Rate Limits
- Box API has per-endpoint rate limits
- Search and list operations should use pagination responsibly
- Bulk operations should include delays between requests
Parameter Quirks
- parameter changes response shape: when specified, only mini representation + requested fields are returned
- Search requires either or ; both are optional individually but one must be present
- with set to removes the lock (raw API only)
- Metadata query field format:
enterprise_{enterprise_id}.templateKey
or
Permissions
- Deletions fail without sufficient permissions; always handle error responses
- Collaboration roles determine what operations are allowed
- Enterprise settings may restrict certain sharing options
Quick Reference
| Task | Tool Slug | Key Params |
|---|
| Search content | | , , |
| List folder items | | , , |
| Get file info | | , |
| Get folder info | BOX_GET_FOLDER_INFORMATION
| , |
| Upload file | | , |
| Download file | | |
| Create folder | | , |
| Update folder | | , , |
| Copy folder | | , |
| Delete folder | | , |
| Permanently delete folder | BOX_PERMANENTLY_REMOVE_FOLDER
| folder_id |
| Update file | | , , |
| Delete file | | , |
| List collaborations | BOX_LIST_FILE_COLLABORATIONS
| |
| Update collaboration | | , |
| Get collaboration | | |
| Query by metadata | BOX_QUERY_FILES_FOLDERS_BY_METADATA
| , , |
| List collections | | (none) |
| List collection items | BOX_LIST_COLLECTION_ITEMS
| |
| List sign requests | BOX_LIST_BOX_SIGN_REQUESTS
| , |
| Get sign request | BOX_GET_BOX_SIGN_REQUEST_BY_ID
| |
| Cancel sign request | BOX_CANCEL_BOX_SIGN_REQUEST
| |
| Recent items | BOX_LIST_RECENTLY_ACCESSED_ITEMS
| (none) |
| Create zip download | | item IDs |