behavior-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
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| load_behaviorA | Load, unload, or hot-swap a behavior tree instance in the browser runtime (actions: load, unload, swap). Use load_behavior instead of manage_behaviors when executing an active behavior tree instance at runtime rather than registering or inspecting definitions. Returns execution handle, runtime state, active node, and session/intention bindings. |
| set_parametersA | Dynamically set, inspect, or reset execution parameters for the active behavior runtime (actions: set, get, reset). Use set_parameters instead of manage_blackboard for tuning tree-level execution variables and thresholds rather than sharing cross-node data keys. Returns updated parameter map and execution ID. |
| get_statusA | Query active behavior execution status, history, or full tree node traversal state (actions: current, history, tree_state). Use get_status instead of get_metrics when inspecting active execution state and node traversal paths rather than aggregated runtime performance telemetry. Returns execution status, current node path, tick counters, duration, and error states. |
| abort_behaviorA | Immediately halt, pause, resume, or unstick behavior execution and disengage active inputs (actions: abort, pause, resume, unstick). Use abort_behavior instead of register_trigger when manually halting or recovering execution rather than configuring automatic condition interrupts. Returns transition status, disengaged inputs, and unstick diagnostics. |
| register_triggerA | Configure or list reactive interrupt triggers with priority preemption and cooldown guards (actions: register, list). Use register_trigger instead of abort_behavior when defining automatic condition-based interrupts rather than manually pausing or stopping a tree. Returns registered trigger configuration, ID, or trigger list. |
| replay_recordingA | Capture or list deterministic browser action sequences with adaptive timing (actions: capture, list). Use replay_recording instead of load_behavior when recording or inspecting fixed action sequences rather than running a dynamic behavior tree. Returns recording metadata, frame sequences, or list of stored recordings. |
| get_metricsA | Retrieve runtime execution telemetry, tick durations, stuck events, category statistics, and 60Hz action outcome spool entries (actions: current, history, aggregate, compare, spool, drain_spool). Use get_metrics instead of get_status when evaluating tick performance, reading spooled action outcomes, or inspecting aggregated statistics rather than active node traversal. Returns telemetry metrics, duration percentiles, stuck event counts, spooled outcome records, or drained entry counts. |
| manage_behaviorsA | Manage immutable JSON behavior tree definitions with SHA-256 hash verification (actions: register, list, get, synthesize). Use manage_behaviors instead of load_behavior when defining, versioning, or synthesizing behavior tree structures rather than executing them. Returns tree definition, version metadata, SHA-256 content hash, or synthesis DAG. |
| manage_blackboardA | Read, write, delete, lease, list, or ingest structured state slices into shared behavior tree blackboard state (actions: get, set, delete, lease, list, ingest_slice). Use manage_blackboard instead of set_parameters when coordinating state across behavior nodes, projecting perception/spatial slices with staleness protection, or acquiring agent mutex leases. Returns blackboard value, lease acquisition status, key listings, or slice ingestion summary with expiry metadata. |
| manage_runtime_dbA | Database maintenance, diagnostics, SHA-256 Merkle audit verification, and snapshot management (actions: stats, audit, doctor, snapshot, diff, restore). Use manage_runtime_db instead of get_metrics when auditing SQLite integrity and Merkle proofs or restoring database snapshots. Returns maintenance diagnostics, Merkle audit trees, snapshot metadata, or diff reports. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| behavior-design | Design a robust, composable behavior tree with sequences, selectors, guards, and decorators |
| debug-stuck | Investigate and resolve stuck behavior execution instances and infinite node loops |
| optimize-behavior | Optimize behavior tree node ordering and conditions for 60Hz tick efficiency |
| trigger-design | Create reactive interrupt triggers with priority preemption and cooldown guards |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| runtime-health | Server health status, version, and timestamp |
| docs-load_behavior | Complete parameter schema and documentation for load_behavior |
| docs-set_parameters | Complete parameter schema and documentation for set_parameters |
| docs-get_status | Complete parameter schema and documentation for get_status |
| docs-abort_behavior | Complete parameter schema and documentation for abort_behavior |
| docs-register_trigger | Complete parameter schema and documentation for register_trigger |
| docs-replay_recording | Complete parameter schema and documentation for replay_recording |
| docs-get_metrics | Complete parameter schema and documentation for get_metrics |
| docs-manage_behaviors | Complete parameter schema and documentation for manage_behaviors |
| docs-manage_blackboard | Complete parameter schema and documentation for manage_blackboard |
| docs-manage_runtime_db | Complete parameter schema and documentation for manage_runtime_db |
TDQS
Scored across 10 tools
Most tools target distinct runtime concerns, but several pairs (manage_behaviors vs load_behavior, get_metrics vs get_status, abort_behavior vs register_trigger, manage_blackboard vs set_parameters) are close enough that descriptions must explicitly disambiguate them. After reading those descriptions an agent can choose correctly, so boundaries are clear but not self-evident.
All names use a consistent snake_case verb_noun pattern: manage_behaviors, load_behavior, get_status, set_parameters, etc. The mixed verbs (manage, get, set, load, abort) are appropriate and used predictably, with no camelCase or stylistic inconsistency.
Ten tools is well-scoped for a behavior runtime server covering definitions, execution, state, telemetry, triggers, recordings, and database maintenance. Each tool has a clear place and the set does not feel bloated or thin.
The surface covers most lifecycle needs: behavior definitions, runtime load/unload/swap, status, metrics, blackboard state, parameters, triggers, abort/pause/resume, recordings, and DB maintenance. However, replay_recording exposes only capture/list despite its name, and behavior definitions lack obvious delete/update operations, leaving minor gaps.