by HumanSignal
Provides a Model Context Protocol server that interfaces with Label Studio to programmatically manage projects, tasks, and predictions via the label‑studio‑sdk.
Enables natural‑language or structured calls to a running Label Studio instance, allowing creation, updating, and querying of projects, tasks, and model predictions without manual UI interaction.
claude_desktop_config.json
or Cursor MCP settings) and supply LABEL_STUDIO_URL
and LABEL_STUDIO_API_KEY
as environment variables.uvx ... mcp-label-studio
).create_label_studio_project_tool
, import_label_studio_project_tasks_tool
, and create_label_studio_prediction_tool
through the MCP client to interact with Label Studio.label-studio-sdk
for reliable API communication.env
block injection for API key and server URL.Q: Do I need to run Label Studio locally? A: No, any reachable Label Studio instance works; just provide its URL.
Q: Where do I obtain the API key? A: Generate it in Label Studio under User Settings → Access Tokens.
Q: Which environment variables are required?
A: LABEL_STUDIO_URL
(e.g., http://localhost:8080
) and LABEL_STUDIO_API_KEY
.
Q: How are tasks imported?
A: Provide a path to a JSON file containing a list of task objects to import_label_studio_project_tasks_tool
.
Q: Can I update the labeling configuration after project creation?
A: Yes, use update_label_studio_project_config_tool
with the new XML config.
Q: What format should predictions follow?
A: A list of dictionaries matching the Label Studio result schema; optional model_version
and score
can be supplied.
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:
label-studio-sdk
for communication.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:
{
"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", // <-- Your API key
"LABEL_STUDIO_URL": "http://localhost:8080"
}
}
}
}
The MCP server exposes the following tools:
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.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.import_label_studio_project_tasks_tool(project_id: int, tasks_file_path: str)
: Imports tasks from a JSON file (containing a list of task objects) into a project. Returns import summary and project URL.create_label_studio_prediction_tool(task_id: int, result: List[Dict[str, Any]], ...)
: Creates a prediction for a specific task. Requires the prediction result as a list of dictionaries matching the Label Studio format. Optional model_version
and score
.create_label_studio_project_tool
.tasks.json
) with task data.import_label_studio_project_tasks_tool
, providing the project ID from step 1 and the path to tasks.json
.list_label_studio_project_tasks_tool
.get_label_studio_task_data_tool
.create_label_studio_prediction_tool
.For questions or support, reach out via GitHub Issues.
Please log in to share your review and rating for this MCP.
Explore related MCPs that share similar capabilities and solve comparable challenges
by zed-industries
A high‑performance, multiplayer code editor designed for speed and collaboration.
by modelcontextprotocol
Model Context Protocol Servers
by modelcontextprotocol
A Model Context Protocol server for Git repository interaction and automation.
by modelcontextprotocol
A Model Context Protocol server that provides time and timezone conversion capabilities.
by cline
An autonomous coding assistant that can create and edit files, execute terminal commands, and interact with a browser directly from your IDE, operating step‑by‑step with explicit user permission.
by continuedev
Enables faster shipping of code by integrating continuous AI agents across IDEs, terminals, and CI pipelines, offering chat, edit, autocomplete, and customizable agent workflows.
by upstash
Provides up-to-date, version‑specific library documentation and code examples directly inside LLM prompts, eliminating outdated information and hallucinated APIs.
by github
Connects AI tools directly to GitHub, enabling natural‑language interactions for repository browsing, issue and pull‑request management, CI/CD monitoring, code‑security analysis, and team collaboration.
by daytonaio
Provides a secure, elastic infrastructure that creates isolated sandboxes for running AI‑generated code with sub‑90 ms startup, unlimited persistence, and OCI/Docker compatibility.