Skip to main content

MCP Tools Reference

Swarm AI exposes device control through the Model Context Protocol (MCP). This page lists all available tools.

Tool Categories

Swarm AI provides 42 tools across three categories:

CategoryToolsPurpose
Device Control15Query and operate lab devices
Transporter Control19Control robotic arms and plate handlers
Teachpoint Management8Save and manage named positions

Device Control Tools

These tools work with shakers, centrifuges, sealers, and other lab devices.

Query Tools

ToolDescription
device_listList all connected devices, optionally filtered by type
device_get_infoGet detailed information about a device
device_get_capabilitiesGet list of commands a device supports
device_is_initializedCheck if a device is initialized and ready

Operation Tools

ToolDescriptionParameters
device_shakeShake at speed for durationdevice_id, speed (RPM), duration (seconds)
device_centrifugeCentrifuge at g-forcedevice_id, g, duration (seconds)
device_sealSeal plate at temperaturedevice_id, temperature (Celsius), duration (seconds)
device_stopEmergency stopdevice_id

Device State Tools

ToolDescription
device_initializeInitialize device (connect, home, calibrate)
device_openOpen device door/lid
device_closeClose device door/lid
device_lock_plateLock plate to shaker deck
device_unlock_plateUnlock plate from shaker deck
device_set_temperatureSet temperature setpoint
device_get_temperatureGet current temperature

Transporter Control Tools

These tools control robotic arms and plate handlers.

Movement Tools

ToolDescription
transporter_move_toMove to a named teachpoint
transporter_homeMove to home position
transporter_move_to_safeMove to pre-defined safe position
transporter_haltEmergency stop (immediate)

Pick and Place Tools

ToolDescription
transporter_pick_platePick up plate from a teachpoint
transporter_place_platePlace plate at a teachpoint

Gripper Tools

ToolDescription
transporter_open_gripperOpen gripper
transporter_close_gripperClose gripper

Position Query Tools

ToolDescription
transporter_get_joint_positionGet current position in joint coordinates
transporter_get_cartesian_positionGet current position in cartesian coordinates

Speed Control

ToolDescription
transporter_set_speedSet movement speed (0.0 to 1.0)
transporter_get_speedGet current speed setting

Advanced Movement

ToolDescription
transporter_move_to_coordsMove to raw coordinates (joint or cartesian)
transporter_pick_at_coordsPick at raw cartesian coordinates
transporter_place_at_coordsPlace at raw cartesian coordinates
transporter_move_single_axisMove one axis to absolute position
transporter_move_single_axis_relativeMove one axis by relative distance

Teaching Mode

ToolDescription
transporter_initializeInitialize transporter (home axes, calibrate)
transporter_set_free_modeEnable/disable freedrive for manual positioning

Teachpoint Tools

These tools manage named positions for transporters.

ToolDescription
teachpoint_listList all teachpoints for a device
teachpoint_getGet a specific teachpoint by name
teachpoint_createCreate teachpoint with explicit coordinates
teachpoint_save_current_positionSave current robot position as teachpoint
teachpoint_updateUpdate teachpoint coordinates
teachpoint_deleteDelete a teachpoint
teachpoint_bulk_importImport multiple teachpoints at once
teachpoint_exportExport all teachpoints for a device

Error Responses

All tools return a consistent response format:

Success:

{
"success": true,
"result": { ... }
}

Failure:

{
"success": false,
"error": "error_type",
"message": "Human-readable description"
}

Common error types:

  • not_found - Device or teachpoint doesn't exist
  • not_initialized - Device needs initialization first
  • timeout - Operation timed out
  • device_error - Device reported an error

MCP Endpoint

URL: https://swarm.cheshirelabs.io/mcp

Transport: Streamable HTTP (MCP specification 2025-03-26)

Authentication: X-API-Key header

What's Next?