Skip to main content

Compatibility matrix

This matrix describes the current repositories represented by this documentation. Check release notes before relying on a feature in a specific published package.

Transport and runtime​

CapabilityPythonC++TypeScript / JavaScript
ZeroMQ streaming✓✓—
ZeroMQ RPC✓✓—
MQTT TCP/TLS✓✓ optionalNode.js
MQTT WebSocket✓✓ optionalBrowser and Node.js
WebRTC data channel✓ optional✓ optionalBrowser
WebRTC native RTP media✓ optional—Browser
HTTP signaling✓✓✓
MQTT signaling✓With MQTT build✓
ZeroMQ signaling✓✓—

Application features​

CapabilityPythonC++TypeScript / JavaScript
Primitive frames✓✓✓
Image framesOptionalOptional✓
Audio framesOptionalOptional✓
Custom serializer interface✓✓✓
JSON-RPC schema✓✓✓
MCP tool server✓✓✓
MCP client transportFastMCPVia Python/TS clientOfficial TS SDK
Node helpers✓✓—
Zeroconf discoveryOptionalCore—
CLI probes✓—npm example scripts
SSH over MQTT✓——

Platform focus​

PlatformRecommended implementation
AI/ML and orchestration servicesPython
Native Linux robot processC++ or Python
Raspberry Pi / NVIDIA JetsonC++ for native integration; Python for fast development and AI
Node.js backendTypeScript
Browser dashboardTypeScript over MQTT WebSocket or WebRTC
Agent clientPython FastMCP or TypeScript MCP SDK

Known cross-language consideration​

C++ currently places WebRTC image and audio frames on the data channel. When pairing C++ with Python, disable native media channels in Python (use_media_channels=False) and C++ (useMediaChannels=false). Python-to-browser deployments can use native media tracks when both peers declare the same media topics.