Server Configuration
Describes the environment variables required to run the server.
Name | Required | Description | Default |
---|---|---|---|
No arguments |
Schema
Prompts
Interactive templates invoked by user choice
Name | Description |
---|---|
No prompts |
Resources
Contextual data attached and managed by the client
Name | Description |
---|---|
No resources |
Tools
Functions exposed to the LLM to take actions
Name | Description |
---|---|
set_websocket_ip | Set the IP and port for the WebSocket connection. |
get_topics | Fetch available topics from the ROS bridge. Example: get_topics() |
get_topic_type | Get the message type for a specific topic. Example: get_topic_type('/cmd_vel') |
get_message_details | Get the complete structure/definition of a message type. Example: get_message_details('geometry_msgs/Twist') |
get_publishers_for_topic | Get list of nodes that are publishing to a specific topic. Example: get_publishers_for_topic('/cmd_vel') |
get_subscribers_for_topic | Get list of nodes that are subscribed to a specific topic. Example: get_subscribers_for_topic('/cmd_vel') |
subscribe_once | Subscribe to a ROS topic and return the first message received. Example: subscribe_once(topic='/cmd_vel', msg_type='geometry_msgs/msg/TwistStamped') |
publish_once | Publish a single message to a ROS topic. Example: publish_once(topic='/cmd_vel', msg_type='geometry_msgs/msg/TwistStamped', msg={'linear': {'x': 1.0}}) |
subscribe_for_duration | Subscribe to a topic for a duration and collect messages. Example: subscribe_for_duration(topic='/cmd_vel', msg_type='geometry_msgs/msg/TwistStamped', duration=5, max_messages=10) |
publish_for_durations | Publish a sequence of messages with delays. Example: publish_for_durations(topic='/cmd_vel', msg_type='geometry_msgs/msg/TwistStamped', messages=[{'linear': {'x': 1.0}}, {'linear': {'x': 0.0}}], durations=[1, 2]) |
get_services | Get list of all available ROS services. Example: get_services() |
get_service_type | Get the service type for a specific service. Example: get_service_type('/rosapi/topics') |
get_service_details | Get complete service details including request and response structures. Example: get_service_details('my_package/CustomService') |
get_service_providers | Get list of nodes that provide a specific service. Example: get_service_providers('/rosapi/topics') |
inspect_all_services | Get comprehensive information about all services including types and providers. Example: inspect_all_services() |
call_service | Call a ROS service with specified request data. Example: call_service('/rosapi/topics', 'rosapi/Topics', {}) |
ping_robot | Ping a robot's IP address and check if a specific port is open. A successful ping to the IP but not the port can indicate that ROSbridge is not running. Example: ping_robot(ip='192.168.1.100', port=9090) |