🎖️ 🐍 ☁️ 🪟 🐧 🍎 - Create, manage and automate Label Studio projects, tasks and predictions for data labeling…
Label Studio MCP Server
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
Overview
This project provides a Model Context Protocol (MCP) server that allows interaction with a Label Studio instance using the label-studio-sdk. It enables programmatic management of labeling projects, tasks, and predictions via natural language or structured calls from MCP clients. Using this MCP Server, you can make requests like:
* "Create a project in label studio with this data ..."
* "How many tasks are labeled in my RAG review project?"
* "Add predictions for my tasks."
* "Update my labeling template to include a comment box."
Features
* **Project Management**: Create, update, list, and view details/configurations of Label Studio projects.
* **Task Management**: Import tasks from files, list tasks within projects, and retrieve task data/annotations.
* **Prediction Integration**: Add model predictions to specific tasks.
* **SDK Integration**: Leverages the official label-studio-sdk for communication.
Prerequisites
1. **Running Label Studio Instance:** You need a running instance of Label Studio accessible from where this MCP server will run.
2. **API Key:** Obtain an API key from your user account settings in Label Studio.
Configuration
The MCP server requires the URL and API key for your Label Studio instance. If launching the server via an MCP client configuration file, you can specify the environment variables directly within the server definition. This is often preferred for client-managed servers.
Add the following JSON entry to your claude_desktop_config.json file or Cursor MCP settings:
json
{
"mcpServers": {
"label-studio": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/HumanSignal/label-studio-mcp-server",
"mcp-label-studio"
],
"env": {
"LABEL_STUDIO_API_KEY": "your_actual_api_key_here", //
Tools
The MCP server exposes the following tools:
Project Management
* **get_label_studio_projects_tool()**: Lists available projects (ID, title, task count).
* **get_label_studio_project_details_tool(project_id: int)**: Retrieves detailed information for a specific project.
* **get_label_studio_project_config_tool(project_id: int)**: Fetches the XML labeling configuration for a project.
* **create_label_studio_project_tool(title: str, label_config: str, ...)**: Creates a new project with a title, XML config, and optional settings. Returns project details including a URL.
* **update_label_studio_project_config_tool(project_id: int, new_label_config: str)**: Updates the XML labeling configuration for an existing project.
Task Management
* **list_label_studio_project_tasks_tool(project_id: int)**: Lists task IDs within a project (up to 100).
* **get_label_studio_task_data_tool(project_id: int, task_id: int)**: Retrieves the data payload for a specific task.
* **get_label_studio_task_annotations_tool(project_id: int, task_id: int)**: Fetches existing annotations for a specific task.