article
README
🚀 MCP 服务器箱中文翻译
MCP 服务器箱是一个基于 Python 的项目,它与 Box API 集成,提供了文件搜索、文本提取、人工智能驱动特性以及文件上传和下载等功能,能有效满足用户在文件管理和处理方面的需求。
🚀 快速开始
MCP 服务器箱是一个强大的工具,可帮助你高效地与 Box 云存储服务进行交互。以下是快速启动项目的步骤:
- 按照安装指南完成项目的安装和环境配置。
- 启动 MCP 服务器,开始使用各项功能。
✨ 主要特性
核心组件
- Box API 集成:借助
box-sdk-gen库,实现与 Box 云存储服务的无缝交互。 - MCP 框架:基于模型上下文协议(Model Context Protocol),有效管理和协调不同模块之间的通信。
- 丰富功能特性:
- 文件搜索:能快速定位所需文件。
- 文本提取:方便从文件中提取关键信息。
- AI 驱动的特性:利用人工智能技术,提升处理效率。
- 文件上传和下载:轻松实现文件的上传和下载操作。
📦 安装指南
系统要求
- 操作系统:支持 MacOS/Linux 或 Windows。
- 内存:建议至少 2GB RAM。
- 其他:需安装 Python 和 pip。
安装步骤
- 克隆仓库
git clone https://github.com/your-repository-url/mcp-server-box.git cd mcp-server-box - 安装 uv 工具
# 全局安装 uv pip install uv # 创建和激活虚拟环境(MacOS/Linux) uv venv source .venv/bin/activate # 创建和激活虚拟环境(Windows) uv venv ./.venv/Scripts/activate - 锁定依赖
# 锁定项目依赖 uv lock # 安装依赖到 virtualenv pip install -r requirements.txt - 配置环境变量
创建一个
.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 客户端(可选)
- 打开 Claude 的配置文件:
code ~/Library/Application\ 支持/Claude/claude_desktop_config.json - 添加以下内容到
mcpServers节点:{ "mcp-server-box": { "command": "uv", "args": [ "--directory", "/Users/your-username/Desktop/mcp-server-box", "run", "src/mcp_server_box.py" ] } } - 重启 Claude 应用程序。
📚 详细文档
测试套件
准备测试环境
- 更新文件和文件夹 ID:
- 在
tests/目录下的每个测试文件中,替换所有硬编码的 Box 文件和文件夹 ID。 - 示例:在
test_box_api_read.py中,将"1728677291168"替换为你的 Box 账户中的一个有效文件 ID。
- 在
- 测试用例说明:
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_ID和BOX_CLIENT_SECRET是否正确。 - 权限问题:确保你的 Box 账户拥有足够的权限访问测试文件。
解决方案
- 重新安装项目依赖:
pip install -r requirements.txt - 验证环境变量:
echo $BOX_CLIENT_ID echo $BOX_CLIENT_SECRET - 检查 Box 账户权限并更新测试文件中的 ID。
Scan to contact