# bb_mcp v0.3.3 - Table of Contents

> Model Context Protocol server for Beam Bots robots.

## Pages

- [README](readme.md)
- [Change Log](changelog.md)

## Modules

- [BB.MCP](BB.MCP.md): Model Context Protocol server for Beam Bots robots.
- [BB.MCP.ArgumentType](BB.MCP.ArgumentType.md): How a BB command argument's declared type appears on the MCP wire.
- [BB.MCP.CommandRobot](BB.MCP.CommandRobot.md): A robot with a command that keeps running until it is told to stop, for
exercising the tools that list and cancel in-flight commands.
- [BB.MCP.EventBuffer](BB.MCP.EventBuffer.md): Per-session ring buffer for BB pubsub events.
- [BB.MCP.EventBuffer.Serializer](BB.MCP.EventBuffer.Serializer.md): Convert `BB.MCP.EventBuffer` entries into JSON-safe maps for tool replies.
- [BB.MCP.FixtureRobot](BB.MCP.FixtureRobot.md): Minimal BB-DSL robot used for introspection in the bb_mcp test suite.
- [BB.MCP.Json](BB.MCP.Json.md): Render arbitrary BB terms as something `JSON.encode!/1` can carry.
- [BB.MCP.JsonSchema](BB.MCP.JsonSchema.md): Converts BB command argument definitions into JSON Schema fragments.
- [BB.MCP.ParameterRobot](BB.MCP.ParameterRobot.md): A robot which declares runtime parameters, for exercising the parameter
tools and resource against a real schema.
- [BB.MCP.ParameterValue](BB.MCP.ParameterValue.md): Translate parameter values across the MCP boundary.
- [BB.MCP.PeriSchema](BB.MCP.PeriSchema.md): Converts BB command argument definitions into Peri schemas suitable for
`Anubis.Server.Frame.register_tool/3`.
- [BB.MCP.PlanarRobot](BB.MCP.PlanarRobot.md): A robot whose chain starts at a planar joint, for exercising resources
against joints with more than one degree of freedom.
- [BB.MCP.Resources](BB.MCP.Resources.md): Shared helpers for the resource component modules under
`BB.MCP.Resources.*`.

- [BB.MCP.Resources.RobotCommands](BB.MCP.Resources.RobotCommands.md): Declared commands on a robot, with typed argument schemas.
- [BB.MCP.Resources.RobotIndex](BB.MCP.Resources.RobotIndex.md): Index of all configured robots exposed by this MCP server.
- [BB.MCP.Resources.RobotJoints](BB.MCP.Resources.RobotJoints.md): Current joint positions and velocities of a robot, in SI base units
(metres or radians for position, m/s or rad/s for velocity).
- [BB.MCP.Resources.RobotParameters](BB.MCP.Resources.RobotParameters.md): All runtime parameters registered on a robot, with their current values.
- [BB.MCP.Resources.RobotState](BB.MCP.Resources.RobotState.md): Current operational and safety state of a robot.
- [BB.MCP.Resources.RobotTopology](BB.MCP.Resources.RobotTopology.md): Static topology of a robot — links, joints, sensors, and actuators.
- [BB.MCP.Robots](BB.MCP.Robots.md): Resolves between agent-facing robot name strings and robot modules.
- [BB.MCP.Router](BB.MCP.Router.md): Phoenix router macro for mounting the BB MCP server over Streamable HTTP.
- [BB.MCP.Server](BB.MCP.Server.md): MCP server that exposes BB robots to AI agents.
- [BB.MCP.SlowRobot](BB.MCP.SlowRobot.md): A robot with a command that stays running until told to stop, so the state
resource and tool can be read while a command is in flight.
- [BB.MCP.State](BB.MCP.State.md): Describe a robot's current safety and operational state.
- [BB.MCP.Tools](BB.MCP.Tools.md): Shared logic used by the per-tool component modules under
`BB.MCP.Tools.*`.
- [BB.MCP.Tools.CancelCommand](BB.MCP.Tools.CancelCommand.md): Cancel a command running on a robot.
- [BB.MCP.Tools.ForceDisarm](BB.MCP.Tools.ForceDisarm.md): Force-disarm a robot from `:error` state.
- [BB.MCP.Tools.GetParameter](BB.MCP.Tools.GetParameter.md): Read a single runtime parameter from a robot.
- [BB.MCP.Tools.GetState](BB.MCP.Tools.GetState.md): Get the current operational and safety state of a robot.
- [BB.MCP.Tools.ListCommands](BB.MCP.Tools.ListCommands.md): List the commands declared on a robot, with their typed argument schemas.
- [BB.MCP.Tools.ListParameters](BB.MCP.Tools.ListParameters.md): List the runtime parameters registered on a robot, optionally filtered
by a path prefix.
- [BB.MCP.Tools.ListRobots](BB.MCP.Tools.ListRobots.md): List the robots this MCP server is configured to expose.
- [BB.MCP.Tools.QueryEvents](BB.MCP.Tools.QueryEvents.md): Query pubsub events captured by the current MCP session.
- [BB.MCP.Tools.SendJointPositions](BB.MCP.Tools.SendJointPositions.md): Send target positions to one or more robot joints.
- [BB.MCP.Tools.SetParameter](BB.MCP.Tools.SetParameter.md): Write a single runtime parameter on a robot.

## Mix Tasks

- [mix bb_mcp.install](Mix.Tasks.BbMcp.Install.md): Installs BB.MCP into an application

