MCP server for interacting with ClearML tasks, experiments, and metrics
Server has 11 well-named tools with complete input schemas and descriptions. All tools follow verb_noun naming (clearml_search_*, clearml_get_*). Descriptions are present and adequate (50-150 chars typical). However, output schemas are not documented, LLMs cannot predict return structure. Parameter descriptions lack detail on constraints, formats, and valid ranges. No error handling guidance. All tools are read-only (good for safety) but lack idempotent/readonly annotations. Missing per-tool documentation of what fields are returned and when to use each tool vs similar ones.
Compare ClearML tasks at a shared step.
Build a ClearML compare-tasks scalars URL.
Export a compact experiment slice.
Fetch latest scalar values for ClearML tasks. tasks maps alias to task id.
List scalar metric names and variants for ClearML tasks.
Summarize recent ClearML tasks and optional latest metrics.
Output schemas not documented. LLMs cannot predict return structure (e.g., what fields are in task_info dict, what does experiment_slice return). Requires reverse-engineering from code.
Parameter descriptions lack constraint details. 'limit' params have no min/max bounds; 'order' accepts 'asc'|'desc' but description doesn't state enum; 'metric_path' format (e.g., 'train/loss') not documented.
No error handling guidance. Tools may fail (e.g., task not found, invalid metric_path) but descriptions don't explain recovery steps or what errors to expect.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | 2026-07-28+ | v2 |
Fetch a scalar series by ClearML metric/variant path, for example train/loss.
Search ClearML tasks by project id/name, task name filter, tags, and status.
Fetch raw ClearML task events, optionally filtered by event_type.
Fetch task metadata for ClearML tasks. tasks maps alias to task id.
Fetch recent ClearML task log events. tasks maps alias to task id.
Tool annotations missing. All 11 tools are read-only but lack readOnlyHint annotation. Prevents clients from optimizing caching/retry logic.
Ambiguous parameter semantics. 'project' accepts string|list[string]|null but description doesn't explain when to use each form or how list is interpreted (AND vs OR).