The MCP Server Box is a Python-based server that integrates with the Box API to manage, process, and query files and folders with AI capabilities.
Authorization: Authorize the Box app and check connection status
Search & Read: Search for files based on criteria (name, content, extensions) and read file content
AI Operations: Query Box AI about file content and extract specific data fields in JSON format
Folder Management: Locate folders by name and list folder contents (with recursive option)
Automation: Integrate Box functionalities into broader systems and workflows using Python
Enables comprehensive Box file and folder management through the Box API, offering tools for file search, text extraction, AI-based querying, and data extraction. Features include user authentication, file content reading, AI-powered file analysis, folder navigation, and structured data extraction from files.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP Server Boxsearch for files containing 'Q4 report' in the marketing folder"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Box MCP Server
Quick Start
Clone the repository:
git clone https://github.com/box-community/mcp-server-box.git
cd mcp-server-boxOptional but recommended uv installation for virtual environment and dependency management:
Homebrew (macOS)
brew install uvWinGet (Windows)
winget install --id=astral-sh.uv -eOn macOS and Linux
curl -LsSf https://astral.sh/uv/install.sh | shOn Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"Set up the virtual environment and install dependencies:
uv syncSet environment variables:
Set the following environment variables for Box authentication in a .env file or your system environment.
For comprehensive authentication configuration options, see the Authentication Guide.
Using OAuth2.0 with a Box App
BOX_CLIENT_ID = YOUR_CLIENT_ID
BOX_CLIENT_SECRET = YOUR_CLIENT_SECRET
BOX_REDIRECT_URL = http://localhost:8000/callback
# MCP Server Authentication (for HTTP transports)
BOX_MCP_SERVER_AUTH_TOKEN = YOUR_BOX_MCP_SERVER_AUTH_TOKEN
OAUTH_PROTECTED_RESOURCES_CONFIG_FILE = .oauth-protected-resource.jsonNote:
The
BOX_MCP_SERVER_AUTH_TOKENis used to authenticate the MCP client to the MCP server when using--mcp-auth-type=token(independent of Box authentication)
Run the MCP server in STDIO mode:
uv run src/mcp_server_box.pyRelated MCP server: Box MCP Server
Box Community MCP Server Tools
Below is a summary of the available tools:
Tools available | Description |
AI-powered file and hub queries | |
Manage file/folder collaborations | |
Document generation and template management | |
File operations (read, upload, download) | |
Folder operations (list, create, delete, update) | |
Generic Box API utilities | |
Group management and queries | |
Metadata template and instance management | |
Search files and folders | |
Shared link management for files/folders/web-links | |
Task and task assignment management | |
User management and queries | |
Web link creation and management |
Box Community MCP Server Operations Details
Command line interface parameters
To run the MCP server with specific configurations, you can use the following command line parameters:
uv run src/mcp_server_box.py --helpusage: mcp_server_box.py [-h] [--transport {stdio,sse,http}] [--host HOST] [--port PORT] [--mcp-auth-type {oauth,token,none}] [--box-auth-type {oauth,ccg,jwt,mcp_client}]
Box Community MCP Server
options:
-h, --help show this help message and exit
--transport {stdio,sse,http}
Transport type (default: stdio)
--host HOST Host for SSE/HTTP transport (default: localhost)
--port PORT Port for SSE/HTTP transport (default: 8005)
--mcp-auth-type {oauth,token,none}
Authentication type for MCP server (default: token)
--box-auth-type {oauth,ccg,jwt,mcp_client}
Authentication type for Box API (default: oauth)For detailed information about authentication types, configurations, and use cases, see the Authentication Guide.
Claude Desktop Configuration
STDIO mode
Edit your claude_desktop_config.json:
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
Add the configuration:
{
"mcpServers": {
"mcp-server-box": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcp-server-box",
"run",
"src/mcp_server_box.py"
]
}
}
}Restart Claude if it is running.
HTTP Mode
Assuming your MCP server is running on https://mcp.myserver.com/mcp
Go to Claude -> Settings -> Connectors
Select
Add custom connectorConfigurations:
Give it a name
Enter the URL e.g.
https://mcp.myserver.com/mcpOptionally enter the
client idandclient secret
Click add
Click connect. The OAuth flow should start. Complete the flow
Back in Claude, click Configure. You should see all the tools available.