Skip to main content
Glama
hpdkhoa

io.github.hpdkhoa/poselab-mcp

by hpdkhoa

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
POSELAB_OUTNothe only folder Pose Lab writes to (renders, the worker's log); default `~/.poselab`~/.poselab
POSELAB_RIGSNoa `rigs.json` describing your own rigs (see `examples/rigs.example.json`)
POSELAB_BLENDERNoBlender's executable, if it is not on the PATH or in the usual install folder

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

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_rigsC

The rigs to load: the built-in sample and those in the rigs file (POSELAB_RIGS).

load_rigB

Loads a rig: the arms on their idle pose, the rifle on the gun bone, its clips. Returns the frames, sign rules, named points, clips and moving parts. Call first.

describeB

What is loaded and the conventions every tool uses.

pose_idleC

The arms back on the idle pose, every rifle part home.

pose_clipC

The arms as a clip has them at a time in seconds. The rifle follows the gun bone; its parts stay where move_part left them.

move_partC

Draws a moving part of the rifle (such as carrier) back along the barrel, cm from home.

move_gunB

Moves the rifle from where it stands: roll + turns its right side up (about the bore); swing + takes the muzzle left, pitch + the muzzle up (about the pivot); right, forward, up move it in the view, cm. The hands in keep_hands keep their hold. Returns how far each hand ended from its hold and the barrel's angle off the view line.

reachA

Puts a wrist on a point by arm IK; the hand keeps its turn. Returns how far the wrist ended from the point. Trying poles while the wrist stays put moves only the elbow: a way to clear a forearm.

snapshotC

Saves or loads a named pose (the arms and the rifle's parts).

whereC

Where bones, fingertips (tip<l|r>) and rig points are, in a frame.

distanceC

The distance between two points, cm, and b minus a in the frame.

clearanceC

How deep the rifle sits inside the arms (capsules: forearm 3 cm, palm 1.8 cm, finger segments 0.75 cm). worst_cm 0 means nothing touches. The deepest contacts by segment, with the rifle point in the frame.

faces_eyeC

How squarely a surface faces the eye: facing 1 square on, 0 edge on, below 0 turned away.

visibleC

The share of a small disc round a point that the eye sees with nothing (arms, rifle) in the way.

screenB

Where a point falls on a 90 degree, 16:9 screen from the eye: x and y from -1 to 1, and whether it is on screen.

solveB

Searches rifle moves from the current pose for one meeting every goal, and leaves the scene there. Reports each goal at the best move and how often it was met across samples: a goal never met is a fact of the geometry.

renderB

Renders the pose as one labelled contact sheet: eye is the player's camera (90 degrees, 5 cm near plane); right, left, top and front look at the rifle from outside. Every tile is a Blender view, labelled so.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.1/5.0

Scored across 17 tools

Disambiguation5/5

Each tool targets a distinct action or spatial question: loading/rig setup, posing modes, rifle/part translation, wrist IK, snapshot save/load, geometry queries, solving, and rendering. Even the eye-related tools (faces_eye, visible, screen) measure different things and are differentiated by their descriptions.

Naming Consistency4/5

All names are lowercase snake_case, so casing and separators are consistent. The only minor deviation is that some tools are verb-led actions while others are noun/adjective-style queries (where, distance, visible), so it is not a strict verb_noun pattern.

Tool Count4/5

17 tools is slightly above the typical 3-15 range, but the domain is a specialized 3D rig/rifle posing and analysis lab with many distinct operations. Each tool appears to cover a separate capability, so the count is reasonable rather than bloated.

Completeness4/5

The surface covers the core lifecycle: list/load rigs, describe conventions, reset/clip posing, manipulate rifle and parts, wrist IK, save/load snapshots, spatial diagnostics, goal solving, and rendering. Minor gaps include snapshot management (list/delete) and direct hand-orientation control, but the main workflows are complete.

Maintenance

ActivityMaintained
ResponsivenessNo issues