Skip to main content
Glama

Create depth silhouette

create_depth_silhouette

Extract a white-on-black silhouette mask from a depth sensor, video file, or synthetic input. Adjust threshold and smoothing, optionally invert or fill with color for compositing in interactive installations.

Instructions

Extract a silhouette / body mask from a depth or video source — a person's white outline on black you can composite, fill with colour, or use as a mask for reactive visuals (interactive installations / camera-reactive sets). The signal is smoothed (Blur TOP), keyed to a mask (Threshold TOP), optionally inverted (Level TOP) and optionally filled with a colour keyed through the mask (Constant + multiply Composite). Source defaults to a self-contained synthetic noise field so it builds and previews with ZERO device permissions; pick 'file' for a clip, or a 'kinect_azure'/'kinect'/'realsense' sensor for the live installation (may prompt for macOS permission). Exposes Threshold (bind to proximity/audio), Smooth, Invert (+ FillColor) and outputs a Null TOP.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sourceNoWhere the depth/luma signal comes from. 'synthetic' (the default) = a self-contained animated noise/ramp field that needs ZERO device permissions, so the network builds and previews immediately — use it to dial in the look. 'file' = a movie/image file (source_file_path). 'kinect_azure' | 'kinect' | 'realsense' = a live depth/IR sensor (the real installation source); creating it may pop a one-time macOS camera/depth-permission dialog — click Allow. (The depth-device op names are confirmed to exist; their per-device params still need live confirmation.)synthetic
source_file_pathNoMovie/image file path for source='file' (e.g. a pre-recorded depth or IR clip). Ignored for other sources.
thresholdNoDepth/luma cutoff (0..1) that separates the body from the background: pixels brighter than this become the white silhouette, the rest go black. The headline 'Threshold' knob and the parameter to bind to audio/beat/proximity later.
smoothNoEdge smoothing — a Blur TOP filter size applied to the raw mask to round off jagged sensor edges before the silhouette is keyed. 0 = hard, aliased edges; higher = softer outline.
invertNoInvert the mask (swap silhouette and background). Off = white body on black; on = black body on white. Drives a Level TOP's invert.
fill_colorNoOptional hex colour ('#rrggbb') to fill the silhouette with instead of plain white — keyed through the mask via a Constant TOP composited (multiply) against it. Omit for a white-on-black mask.
expose_controlsNoExpose live Threshold / Smooth / Invert (+ FillColor) controls on the system container.
parent_pathNo/project1
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the full processing pipeline (Blur, Threshold, Level, Constant, multiply Composite), output type (Null TOP), and device permission requirements. The annotations are minimal, but the description compensates fully, providing no behavioral surprises.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single dense paragraph that front-loads the main purpose. It is efficient but could be slightly more scannable with bullet points or separation. Still, every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (8 parameters, no output schema), the description thoroughly covers behavior, output, permissions, and workflow stages. It is self-contained and leaves no major gaps for an AI agent to infer.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 88% schema description coverage, the description adds contextual meaning beyond the schema, such as explaining threshold's binding use, smooth's edge effect, and fill_color's compositing method. Each parameter's purpose is clarified in the context of the pipeline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool extracts a silhouette/body mask from a depth or video source, using specific verbs like 'extract' and describing the resource. It distinguishes from sibling tools like 'create_depth_displacement' by focusing on masking and compositing. The purpose is unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use the tool (interactive installations, camera-reactive sets) and provides guidance on source selection (synthetic for preview, file for clips, sensor for live). It lacks explicit 'when not to use' statements but implies context well.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Pantani/tdmcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server