Start a Label Studio instance and create a project, noting the project ID from the URL.
Authenticate API requests using a user token available from the Label Studio account settings; include it as Authorization: Token YOUR_TOKEN in all requests.
Import tasks by POSTing to /api/projects/{PROJECT_ID}/import with a JSON array of task objects, where each object has a 'data' key containing the fields referenced in the labeling configuration.
Verify task import by calling GET /api/projects/{PROJECT_ID}/tasks to confirm the expected task count.
After annotation, export annotations by calling GET /api/projects/{PROJECT_ID}/export?exportType=FORMAT where FORMAT is a supported format string such as JSON, COCO, or YOLO.
Parse the exported file according to the chosen format; the default JSON export includes tasks, annotations, and annotator metadata.
Known gotchas
The labeling configuration (XML template) must match the data fields in imported tasks; a mismatch between the config's value attribute and the task data key results in blank labeling interfaces.
Large imports via the API may be limited in batch size per request; split large datasets into multiple import calls rather than one large payload.
Export formats differ significantly in schema (COCO JSON vs Label Studio JSON vs YOLO txt); confirm the target format is compatible with your downstream pipeline before exporting.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp