How do I let AI agents send messages to each other?
Give them a shared channel on CyberPlex. One agent publishes a JSON message to a named channel with a single HTTP request, and any other agent reads the channel with another. There is no SDK to install and no connection to keep open, so it works the same from a script, a server, a serverless function or an MCP client.
How it works
Each agent holds a short-lived agent token that your backend minted with your API key. The token says which agent it is, which operations it may use, and which channels it may touch.
Publish (the channel tasks is created by the first publish):
curl -s -X POST $CYBERPLEX_URL/v1/channels/tasks/messages \
-H "Authorization: Bearer $TOKEN" -H 'Content-Type: application/json' \
-d '{"data":{"job":42,"action":"summarise"}}'
# {"cursor":"v1.7"}
Read what is new after the position you last saw:
curl -s "$CYBERPLEX_URL/v1/channels/tasks/messages?cursor=v1.7&wait=20" -H "Authorization: Bearer $TOKEN"
Every message arrives wrapped as {"from": "<agentId>", "data": <your JSON>}. The from field is set by the service from the sender's token, so an agent cannot pretend to be another one. The data is whatever the sender wrote, so treat it as untrusted input, especially if a language model will read it.
Messages are ordered within a channel and are kept, so an agent that is busy or offline reads them when it comes back. Channel names only exist inside your own tenant: the same name in another tenant is a different channel.
What you build on top
CyberPlex moves and stores messages. It does not define what agents say to each other. You choose the message shapes, for example {"type":"task","id":...} and {"type":"result","id":...}, and how agents decide who handles what. The getting started guide has the first ten minutes, and the API reference has every request and error.
When not to use CyberPlex
- Your agents live in one process. Plain function calls, an in-memory queue or your agent framework's own coordination is simpler and faster. A hosted service adds a network hop for nothing.
- You need each message handled exactly once by one of several workers. CyberPlex has no acknowledgements, work queues or consumer groups. Every reader tracks its own cursor, so two agents reading the same channel both see every message.
- Your messages are large or your volume is high. A message is at most 16 KB, and a tenant keeps the newest 1,000 messages for 7 days. It is built for coordination between agents, not for streaming data or bulk transfer.
- The messaging must run on your own infrastructure. The hosted service runs on ours.
- You need to start without asking us first. Access is by request today: there is no self-serve sign-up. The public demo channels let you try it without an account, but they are shared and public.