embodied-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| detect_datasetA | Identify the on-disk format of an embodied-AI dataset (LeRobot, HDF5/robomimic, MCAP, rosbag1/2, RLDS, canonical JSONL) with confidence and evidence. |
| summarize_datasetA | Summarise a dataset: format, version, fps, robot type, features (key/dtype/shape/kind), episode count, frames, duration, tasks and notes. Use before any analysis to learn the schema. |
| validate_datasetA | Run structural validation: required metadata, feature vocabulary (state/action), episode indices and lengths, fps consistency, format-specific layout rules. Returns issues with severity, stable code, hint and a 0-100 score. Emits MCP progress notifications when the request carries _meta.progressToken. |
| quality_reportB | Compute per-feature statistics (range, mean, std, percentiles, NaN ratio) and detect anomalous windows (jumps, stalls, non-finite spans) with robust z-scoring. Results are cached by dataset fingerprint and parameters unless use_cache=false. Emits MCP progress notifications when the request carries _meta.progressToken. |
| quality_gateA | Evaluate configurable publish rules from an inline JSON object: expected fps/tolerance, required feature keys or kinds, minimum score/episodes/frames, maximum NaN ratio and anomaly-window counts. Returns gate failures plus validation evidence. Read-only and available as a background job. |
| segment_episodesB | Split episodes into moving/idle segments using feature-speed percentiles. Useful for phase labelling and for trimming dead time. |
| labeling_tasksC | Generate an annotation manifest: each task names an episode, a frame range, cues and a concrete question, ready for a human reviewer or a vision-language model. |
| convert_datasetB | Convert a dataset to another layout: 'jsonl' (canonical, dependency-free) or 'lerobot' (v2.1 parquet, needs pyarrow). Numeric features only; camera streams are reported, not re-encoded. |
| scaffold_projectC | Write a project skeleton: 'platform' (HTTP API + quality gate + catalog + data contract), 'adapter' (new format adapter with tests) or 'pipeline' (ingest -> validate -> index). |
| catalog_indexA | Scan a directory tree, load every dataset found and upsert its metadata into a SQLite catalog. Incremental: unchanged datasets are skipped. |
| catalog_searchC | Query the dataset catalog by free text, format, robot type, episode count, duration or minimum health score. |
| catalog_statsB | Totals for schema-v2 catalogs: datasets, immutable versions, runs, lineage edges, formats, episodes, frames and duration. |
| catalog_historyB | Inspect immutable version history, parent/child lineage and recent run records in a schema-v2 catalog, optionally filtered to one dataset path. |
| list_formatsA | List supported dataset formats, how each is detected, which optional dependency it needs, and the available validation checks. |
| plan_windowsC | Plan fixed-length training windows over the episodes of a dataset (window, stride, episode/start/end). |
| submit_jobA | Start a long-running read-only analysis in the background. Supported tools are quality_report, validate_dataset and quality_gate. Returns a job_id immediately; poll job_status for progress and the result. |
| job_statusA | Read a background job's status, progress, message and structured error. Set include_result=true once status is succeeded to fetch the full report. |
| cancel_jobA | Request cooperative cancellation of a background job. Running work stops at the next analysis checkpoint; use job_status to confirm. |
| list_jobsA | List recent background jobs, newest first, optionally filtered by status (queued, running, cancelling, succeeded, failed, cancelled). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 19 tools
Each tool targets a reasonably distinct action (detect vs. summarize vs. validate vs. quality_report vs. quality_gate), and the descriptions draw the lines clearly (structural validation vs. statistics/anomalies vs. rule evaluation). The main soft overlaps are detect_dataset/summarize_dataset (both surface the format) and the direct-call vs. submit_job paths for validate_dataset/quality_gate, but the background job model is explained well enough to avoid misselection.
Nearly all tools use a consistent snake_case verb_noun pattern (segment_episodes, detect_dataset, validate_dataset, convert_dataset, catalog_search), grouped with readable prefixes like catalog_ and job-related tools. Minor deviations are noun-phrase names such as job_status, quality_report, quality_gate and catalog_stats, which mix styles slightly but remain predictable and readable.
At 19 tools the surface is a bit heavy, but the domain is genuinely broad: inspection, validation, quality analysis, windows/segmentation, conversion, scaffolding, cataloging and job orchestration. Almost every tool maps to a real capability rather than filler, so it lands just over the ideal band without feeling padded.
Coverage is strong end-to-end: discovery, schema summary, structural validation, quality analysis and gating, annotation manifests, conversion, project scaffolding, a searchable catalog with version history, and async job lifecycle (submit/status/cancel/list). Minor gaps remain — no tool to read individual frames/episodes or sample data, and no catalog entry deletion/update beyond upsert by index.