About Microduck MCP
Microduck MCP is an MCP server published by aj-dev-smith in the Science category: agent-agnostic MCP server for the Pollen Robotics Microduck.
The repository has 3 stars and 1 forks, with the last commit a month ago. Recent commit activity is the strongest signal that reported issues will get attention.
Install
git clone https://github.com/aj-dev-smith/microduck-mcpThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Tools (19)
duck_camera(view, distance)Rendered frame: `head` (the duck's own POV), `follow`, `front`, `side`, `top`
Parameters not published.
duck_chirp(tag, variant?, voice_bank?)One call from the duck's own voice bank — `alarm`, `greet`, `inquire`, `peck`, `chirp`, `coo`, and `wheee`, which the sim grants only when the referee has a goal on the board
Parameters not published.
duck_drive(vx, vy, wz, duration_s?)Velocity intent; with `duration_s`, drives then stops and reports — one call instead of drive/poll/stop
Parameters not published.
duck_emote(name, action?)Play an authored **gesture** — `head_tilt`, `nod`, `perk_up`, `droop` — or `action='list'` what a server has
Parameters not published.
duck_look(...)Point the head (it's a command to the policy, not a servo write) — also pans the head camera
Parameters not published.
duck_machine(action, ...)Load/arm/hot-reload a **behavior machine** — autonomy between the agent's decisions (see below)
Parameters not published.
duck_mouth(opening)Beak opening 0..1 — the real robot's `robot.mouth` verb, in the sim (expressive only, no physics)
Parameters not published.
duck_policy(action, role?, path?)**The brains, inspectable and mutable on a live sim**: `list` every role's ONNX and obs width; `swap` rebinds one role to a freshly exported checkpoint with no restart. Validated off to the side first (missing/malformed file, obs-width mismatch → refused with the incumbent still flying); the reply's `previous` is the one-call rollback
Parameters not published.
duck_push(magnitude, angle_deg)Shove the trunk; tests push recovery
Parameters not published.
duck_resetBack to origin, default stance (`destructive_hint` — it ends the episode)
Parameters not published.
Show all 19 tools
duck_say(text, voice_bank?)**Speak as the duck**: renders the duck's voice, plays it on the host's speakers, lip-syncs the beak live in the sim (see below)
Parameters not published.
duck_sequence(steps)Chain drive/stop/trick/look steps server-side — motion flows through transitions with no client round-trips (arcs, an approach, kick + celebration as one call)
Parameters not published.
duck_statePosition, orientation, body-frame velocity, active policy, upright?, plus `ball_seen` — the camera-derived ball sighting
Parameters not published.
duck_stopZero commands → standing policy
Parameters not published.
duck_train_start(task_id, ...)**Train a new behavior**: launches a run in its own tmux session on the GPU box (see below). `smoke=True` is the 64-env / 5-iteration validation run
Parameters not published.
duck_train_status(session?, tail?)List training sessions; for one, the wandb URL, latest iteration/reward/ETA, whether it's alive, and a diagnosis if it died
Parameters not published.
duck_train_stop(session)Ctrl-C the trainer, then kill the session (`destructive_hint` — it ends an experiment)
Parameters not published.
duck_train_tasks(refresh?)Task ids the GPU box can train — the live `list-envs` registry, cached
Parameters not published.
duck_trick(name, stage_ball?)`sit`, `stand`, `ground_pick`, `kick_left`, `kick_right`, `roulade`. `stage_ball=False` makes kicks **honest**: no ball teleport — the agent has to walk the ball into the kick pocket first (`ball_offset_m` in state), or it kicks air
Parameters not published.
Ask AI
Ask AI about Microduck MCP
Powered by Claude · Grounded in docs
Security checks
6 checks have not been run yet.