README
🚀 Tuba Workflow MCP 服务器
Tuba Workflow MCP 服务器是一个模型上下文协议(MCP)服务器,作为连接 Tuba.ai 平台的桥梁。Tuba 是一款一体化的 AI 视觉工作流构建器,可简化计算机视觉任务的整个生命周期。该服务器将你的 Tuba 项目工作流作为一组可调用工具公开,允许其他应用程序(如 AI 助手、脚本或像 Claude Desktop 这样的服务)以编程方式控制和与你的 AI 视觉管道进行交互。
🚀 快速开始
🔍 前提条件
- Python 3.10 或更高版本:现代类型提示和异步功能所需。
- uv:快速的 Python 包安装程序和环境管理器。
- 拥有一个活跃项目的 Tuba.ai 账户。
- TUBA_WORKFLOW_ACCESS_TOKEN:你项目的 API 访问令牌。
📦 安装指南
- 克隆仓库:
git clone <this_repo>
cd <this_repo>
- 安装 uv:
- macOS/Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
- **Windows**:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
- 创建虚拟环境并安装依赖项:
uv venv
uv pip install -r requirements-lock.txt
✨ 主要特性
此 MCP 服务器提供以下工具与 Tuba Workflow API 进行交互:
| 工具 | 描述 |
| ---- | ---- |
| run() | 执行你项目的工作流 |
| status() | 获取当前工作流执行状态 |
| result() | 获取工作流结果(如果是文件输出,则下载为 result.zip) |
| get_workflow_blocks() | 获取所有工作流块的当前配置 |
| update_workflow_blocks_data() | 更新工作流块的参数并上传文件 |
🛠️ 配置
🔨 本地开发与测试
对于本地开发,服务器使用 python-dotenv 从环境文件加载你的访问令牌。
- 在项目根目录创建一个
.env文件:
touch .env
- 添加你的访问令牌:
TUBA_WORKFLOW_ACCESS_TOKEN="your_secret_token_goes_here"
⚠️ 重要提示:
.gitignore文件确保此文件不会提交到版本控制。
- 测试服务器:
uv run python tuba_workflow_mcp_server.py
- 验证是否正常工作: 服务器应无错误启动。你可以通过连接 MCP 客户端或通过 Claude Desktop 使用工具来测试它。
🖥️ Claude Desktop 配置
要在 Claude Desktop 中使用此服务器,请将以下配置添加到你的 claude_desktop_config.json 文件中:
- macOS/Linux 位置:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows 位置:
%APPDATA%\Claude\claude_desktop_config.json
- 配置内容:
{
"mcpServers": {
"TubaWorkflow": {
"command": "<home_path>/.local/bin/uv",
"args": [
"run",
"--directory",
"<absolute_path_to_tuba_workflow_mcp_server_folder>",
"python",
"tuba_workflow_mcp_server.py"
],
"env": {
"TUBA_WORKFLOW_ACCESS_TOKEN": "<your_access_token>"
}
}
}
}
替换占位符:
<home_path>:你的主目录路径(例如,/Users/yourname或C:\Users\yourname)<absolute_path_to_tuba_workflow_mcp_server_folder>:此项目文件夹的完整路径<your_access_token>:你的 Tuba.ai 工作流访问令牌
示例(macOS):
{
"mcpServers": {
"TubaWorkflow": {
"command": "/Users/john/.local/bin/uv",
"args": [
"run",
"--directory",
"/Users/john/projects/tuba-workflow-mcp-server",
"python",
"tuba_workflow_mcp_server.py"
],
"env": {
"TUBA_WORKFLOW_ACCESS_TOKEN": "<your_access_token>"
}
}
}
}
配置完成后,重启 Claude Desktop 以加载 MCP 服务器。
💻 使用示例
基础用法
在使用 Claude Desktop(或其他 MCP 客户端)进行配置后,你可以使用自然语言与你的 Tuba 工作流进行交互。AI 助手将处理所有技术细节,如查找块 ID、正确格式化 JSON、处理文件路径和监控工作流进度。 示例对话:
- "Can you check the status of my Tuba workflow?"(你能检查我的 Tuba 工作流的状态吗?)
- "Start my workflow and let me know when it's done"(启动我的工作流,完成后通知我)
- "Update the confidence threshold to 0.8 for my object detector"(将我的目标检测器的置信度阈值更新为 0.8)
- "Process this image with my workflow: /path/to/image.jpg"(使用我的工作流处理此图像:/path/to/image.jpg)
- "Upload these three images from URLs and run the workflow"(从 URL 上传这三张图像并运行工作流)
- "Show me my workflow configuration"(给我展示我的工作流配置)
🤝 贡献
我们欢迎贡献!请参阅我们的 行为准则 以了解社区指南。 贡献前:
- 检查现有的问题和拉取请求。
- 遵循现有的代码风格。
- 为新功能添加测试。
- 根据需要更新文档。 对于重大更改,请先打开一个问题讨论你想要更改的内容。
📄 许可证
本项目采用 MIT 许可证 - 详情请参阅 LICENSE 文件。
🔒 安全
安全是重中之重。如果你发现漏洞,请负责任地报告。 请勿为安全漏洞公开 GitHub 问题。 请使用 GitHub 的私有漏洞报告功能:
- 导航到 Security 选项卡。
- 点击 Report a Vulnerability。
- 提供有关问题的详细信息。 更多信息请参阅 SECURITY.md。
📚 资源
🎈 支持
如有问题、疑问或反馈:
- Tuba.ai 支持:support@tuba.ai
- 加入 Discord 社区:https://discord.com/invite/gDSZr6N5rC
- GitHub 问题:用于报告错误和提出功能请求
- 讨论:使用 GitHub 讨论进行提问和社区互动
版权所有 © 2025 DevisionX。保留所有权利。
微信扫一扫