
Box
โ 101from box-community
Interact with the Intelligent Content Management platform through Box AI.
Box MCP Server
[!WARNING] This repository is discontinued and no longer maintained. Box now provides an officially supported hosted MCP server with the best experience and full functionality. Please migrate to the hosted MCP server: Set up the Box MCP Server โ
Box Community MCP Server Tools
Below is a summary of the available tools:
Tools available Description box_tools_ai AI-powered file and hub queries box_tools_collaboration Manage file/folder collaborations box_tools_docgen Document generation and template management box_tools_files File operations (read, upload, download) box_tools_folders Folder operations (list, create, delete, update) box_tools_generic Generic Box API utilities box_tools_groups Group management and queries box_tools_metadata Metadata template and instance management box_tools_search Search files and folders box_tools_shared_links Shared link management for files/folders/web-links box_tools_tasks Task and task assignment management box_tools_users User management and queries box_tools_web_link 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 --help
usage: 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 connector -
Configurations:
-
Give it a name
-
Enter the URL e.g.
https://mcp.myserver.com/mcp -
Optionally 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.
brew install uvBefore it works, you'll need: BOX_MCP_SERVER_AUTH_TOKEN
Quick Start
Clone the repository:
git clone https://github.com/box-community/mcp-server-box.git
cd mcp-server-box
Optional but recommended uv installation for virtual environment and dependency management:
Homebrew (macOS)
brew install uv
WinGet (Windows)
winget install --id=astral-sh.uv -e
On macOS and Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
On Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
Set up the virtual environment and install dependencies:
uv sync
Set 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.json
Note:
- 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.py
No common issues documented yet. If you hit a problem, the repository's GitHub Issues page is the best place to look.