Label Studio MCP Server 是一个 Model Context Protocol (MCP) 服务器,旨在通过 label-studio-sdk 与 Label Studio 实例进行交互。它允许 MCP 客户端以自然语言或结构化调用的方式,程序化地管理标注项目、任务和预测。
用途
该服务器用于自动化 Label Studio 中的数据标注工作流。用户可以通过 MCP 客户端发出请求,例如:
- "在 Label Studio 中创建包含此数据的项目..."
- "我的 RAG 审查项目中有多少任务已标注?"
- "为我的任务添加预测。"
- "更新我的标注模板以包含评论框。"
主要能力
- 项目管理:创建、更新、列出和查看 Label Studio 项目的详细信息与配置。
- 任务管理:从文件导入任务、列出项目中的任务、获取任务数据与标注。
- 预测集成:为特定任务添加模型预测。
- SDK 集成:利用官方 label-studio-sdk 进行通信。
使用方式
前提条件
- 运行中的 Label Studio 实例:需要有一个可从 MCP 服务器运行位置访问的 Label Studio 实例。
- API 密钥:从 Label Studio 的用户账户设置中获取 API 密钥。
配置
MCP 服务器需要 Label Studio 实例的 URL 和 API 密钥。如果通过 MCP 客户端配置文件启动服务器,可以在服务器定义中直接指定环境变量。这通常是客户端管理服务器的首选方式。 将以下 JSON 条目添加到 claude_desktop_config.json 文件或 Cursor MCP 设置中: (此处应包含配置示例,但原始资料未提供具体 JSON 内容,故暂未提供。)
可用工具
MCP 服务器暴露以下工具:
项目管理
get_label_studio_projects_tool():列出可用项目(ID、标题、任务数量)。get_label_studio_project_details_tool(project_id: int):获取特定项目的详细信息。get_label_studio_project_config_tool(project_id: int):获取项目的 XML 标注配置。create_label_studio_project_tool(title: str, label_config: str, ...):创建新项目,包含标题、XML 配置和可选设置。返回项目详情,包括 URL。update_label_studio_project_config_tool(project_id: int, new_label_config: str):更新现有项目的 XML 标注配置。
任务管理
list_label_studio_project_tasks_tool(project_id: int):列出项目中的任务 ID(最多 100 个)。get_label_studio_task_data_tool(project_id: int, task_id: int):获取特定任务的数据负载。get_label_studio_task_annotations_tool(project_id: int, task_id: int):获取特定任务的现有标注。import_label_studio_project_tasks_tool(project_id: int, tasks_file_path: str):从 JSON 文件(包含任务对象列表)导入任务到项目。返回导入摘要和项目 URL。create_label_studio_prediction_tool(task_id: int, result: List[Dict[str, Any]], ...):为特定任务创建预测。需要预测结果作为符合 Label Studio 格式的字典列表。可选参数:model_version 和 score。
示例用例
- 使用
create_label_studio_project_tool创建新项目。 - 准备包含任务数据的 JSON 文件(tasks.json)。
- 使用
import_label_studio_project_tasks_tool导入任务,提供步骤 1 中的项目 ID 和 tasks.json 的路径。 - 使用
list_label_studio_project_tasks_tool列出任务 ID。 - 使用
get_label_studio_task_data_tool获取特定任务的数据。 - 生成预测结果结构(字典列表)。
- 使用
create_label_studio_prediction_tool添加预测。
适用场景
适用于需要自动化管理 Label Studio 标注项目的团队或个人,特别是在数据标注工作流中,希望通过自然语言或程序化方式批量处理项目、任务和预测的场景。
限制
- 需要运行中的 Label Studio 实例和有效的 API 密钥。
- 任务列表最多返回 100 个任务 ID。
- 预测结果必须符合 Label Studio 的格式要求。
- 具体配置示例和更多细节暂未提供。
如有问题或需要支持,请通过 GitHub Issues 联系。