Back to MCP directory
publicPublicdnsLocal runtime

mcp-server-box

MCP Server Box是一个Python项目,通过Box API实现文件搜索、文本提取、AI查询和数据提取等功能,整合了box-sdk-gen库,提供了一套与Box文件和文件夹交互的工具集。

article

README

🚀 MCP 服务器箱中文翻译

MCP 服务器箱是一个基于 Python 的项目,它与 Box API 集成,提供了文件搜索、文本提取、人工智能驱动特性以及文件上传和下载等功能,能有效满足用户在文件管理和处理方面的需求。

🚀 快速开始

MCP 服务器箱是一个强大的工具,可帮助你高效地与 Box 云存储服务进行交互。以下是快速启动项目的步骤:

  1. 按照安装指南完成项目的安装和环境配置。
  2. 启动 MCP 服务器,开始使用各项功能。

✨ 主要特性

核心组件

  • Box API 集成:借助 box-sdk-gen 库,实现与 Box 云存储服务的无缝交互。
  • MCP 框架:基于模型上下文协议(Model Context Protocol),有效管理和协调不同模块之间的通信。
  • 丰富功能特性
    • 文件搜索:能快速定位所需文件。
    • 文本提取:方便从文件中提取关键信息。
    • AI 驱动的特性:利用人工智能技术,提升处理效率。
    • 文件上传和下载:轻松实现文件的上传和下载操作。

📦 安装指南

系统要求

  • 操作系统:支持 MacOS/Linux 或 Windows。
  • 内存:建议至少 2GB RAM。
  • 其他:需安装 Python 和 pip。

安装步骤

  1. 克隆仓库
    git clone https://github.com/your-repository-url/mcp-server-box.git
    cd mcp-server-box
    
  2. 安装 uv 工具
    # 全局安装 uv
    pip install uv
    
    # 创建和激活虚拟环境(MacOS/Linux)
    uv venv
    source .venv/bin/activate
    
    # 创建和激活虚拟环境(Windows)
    uv venv
    ./.venv/Scripts/activate
    
  3. 锁定依赖
    # 锁定项目依赖
    uv lock
    
    # 安装依赖到 virtualenv
    pip install -r requirements.txt
    
  4. 配置环境变量 创建一个 .env 文件,并添加以下内容:
    BOX_CLIENT_ID=你的客户端 ID
    BOX_CLIENT_SECRET=你的客户端密钥
    

💻 使用示例

启动 MCP 服务器

uv --directory /Users/your-username/Desktop/mcp-server-box run src/mcp_server_box.py

配置 Claude 客户端(可选)

  1. 打开 Claude 的配置文件:
    code ~/Library/Application\ 支持/Claude/claude_desktop_config.json
    
  2. 添加以下内容到 mcpServers 节点:
    {
        "mcp-server-box": {
            "command": "uv",
            "args": [
                "--directory",
                "/Users/your-username/Desktop/mcp-server-box",
                "run",
                "src/mcp_server_box.py"
            ]
        }
    }
    
  3. 重启 Claude 应用程序。

📚 详细文档

测试套件

准备测试环境

  1. 更新文件和文件夹 ID
    • tests/ 目录下的每个测试文件中,替换所有硬编码的 Box 文件和文件夹 ID。
    • 示例:在 test_box_api_read.py 中,将 "1728677291168" 替换为你的 Box 账户中的一个有效文件 ID。
  2. 测试用例说明
    • test_box_auth.py:验证身份验证功能。
    • test_box_api_basic.py:测试基础 Box API 功能。
    • test_box_api_read.py:测试文件读取能力。
    • test_box_api_search.py:测试搜索功能。
    • test_box_api_ai.py:测试 AI 驱动的功能。
    • test_box_api_file_ops.py:测试文件上传和下载操作。

执行测试

# 运行所有测试
pytest

# 运行特定测试文件
pytest tests/test_box_api_file_ops.py

# 以详细模式运行测试
pytest -v

# 显示打印输出并运行测试
pytest -v -s

故障排除

常见问题

  • 依赖未安装:确保已正确安装所有项目依赖。
  • 环境变量配置错误:检查 .env 文件中的 BOX_CLIENT_IDBOX_CLIENT_SECRET 是否正确。
  • 权限问题:确保你的 Box 账户拥有足够的权限访问测试文件。

解决方案

  1. 重新安装项目依赖:
    pip install -r requirements.txt
    
  2. 验证环境变量:
    echo $BOX_CLIENT_ID
    echo $BOX_CLIENT_SECRET
    
  3. 检查 Box 账户权限并更新测试文件中的 ID。

其他资源

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client