Artificial Intelligence · Beta
ElizaOS
API integration
Ship Artificial Intelligence features without building the integration. Full ElizaOS API access via Proxy and 80+ MCP-ready tools for AI agents — extend models and mappings to fit your product.
Built for specific customer use cases. Issues are resolved quickly.
Talk to usUse Cases
Why integrate with ElizaOS
Common scenarios for SaaS companies building ElizaOS integrations for their customers.
Embed white-label AI agents into your SaaS
Let your customers spin up branded, character-driven AI agents inside your product without you building agent orchestration, memory, or lifecycle management from scratch. Truto handles the ElizaOS auth and API layer so you can ship a native agent builder in weeks.
Power proprietary chat UIs with multi-agent brains
SaaS platforms with their own chat interfaces (helpdesks, CRMs, community tools) can pipe user messages into ElizaOS and stream back agent responses. Your users get multi-agent reasoning and persistent memory without leaving your UI.
Deploy coordinated agent swarms for customer workflows
Offer your customers virtual Worlds and Rooms where specialist agents (billing, tech, onboarding) collaborate on tickets or tasks. Ideal for helpdesk, ops, and community-management SaaS that want tiered AI automation as a native feature.
Add voice-first AI to outbound and support flows
CRMs, sales engagement platforms, and support tools can add AI voice interactions using ElizaOS's native STT and TTS. Sessions stay alive only during active calls, keeping compute costs predictable.
Bill and audit AI usage per customer
Expose agent run history, system logs, and memory streams inside your admin dashboards so your customers can audit agent decisions and you can meter usage for pricing. Truto normalizes the ElizaOS log and run endpoints behind a single connection.
What You Can Build
Ship these features with Truto + ElizaOS
Concrete product features your team can ship faster by leveraging Truto’s ElizaOS integration instead of building from scratch.
In-app agent builder with character config
Turn a user-facing form (brand voice, knowledge, style) into a live ElizaOS agent via create_a_eliza_os_agent and manage its lifecycle with start/stop controls.
Multi-agent room orchestration
Create Worlds and Rooms per customer workspace or ticket, assign specialist agents, and route messages between them for tiered automation.
External message ingestion pipeline
Pipe messages from your native chat UI into ElizaOS via the external ingestion endpoint and stream agent responses back into your product.
Ephemeral AI sessions for time-bound flows
Spin up stateful sessions for onboarding, live support, or sales calls with heartbeat-based expiry so idle contexts release compute automatically.
Voice-in / voice-out AI conversations
Transcribe inbound audio, run it through an agent session, and return generated speech — all inside ElizaOS without stitching third-party TTS/STT providers.
Agent memory and run audit log
Surface agent memories, room memories, and run history inside your dashboard so operators can inspect why an agent responded a certain way and meter execution usage.
SuperAI
ElizaOS AI agent tools
Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.
list_all_eliza_os_agents
List all ElizaOS agents. Returns each agent's id and name. No required parameters.
create_a_eliza_os_agent
Create a new agent in ElizaOS from a character path or inline JSON. Returns: id, name, bio, settings, system, style, lore, messageExamples, topics, plugins. Provide either characterPath or characterJson.
get_single_eliza_os_agent_by_id
Get details of a single ElizaOS agent by id. Returns the agent's id and name. Required: id.
update_a_eliza_os_agent_by_id
Update an existing ElizaOS agent by id. Returns: id, name. Required: id.
delete_a_eliza_os_agent_by_id
Delete an ElizaOS agent by id. Returns: success, message. Required: id.
eliza_os_agents_start
Start an elizaos agent. Returns the started agent object under data including id, name, and status. Required: agent_id.
eliza_os_agents_stop
Stop an elizaos agent. Returns a success flag and a data.message confirmation. Required: agent_id.
list_all_eliza_os_worlds
List all worlds in elizaos. Returns: id, name, agentId, sourceType, sourceId, metadata.
create_a_eliza_os_world
Create a world for an elizaos agent. Returns the world object. Required: agent_id, name, sourceType, sourceId.
update_a_eliza_os_world_by_id
Update an elizaos world. Returns the world object. Required: agent_id, id.
eliza_os_audio_generate_speech
Generate speech from text for an elizaos agent. Returns the generated audio as an audio/mpeg file. Required: agent_id, text.
eliza_os_audio_synthesize_speech
Synthesize speech from text for an elizaos agent. Returns the generated audio/mpeg file. Required: agent_id, text.
eliza_os_audio_convert_conversation_to_speech
Convert a conversation to speech for an elizaos agent. Returns the generated audio/mpeg file. Required: agent_id, messages.
eliza_os_audio_transcribe
Transcribe an audio file for an elizaos agent. Returns: text. Required: agent_id, file.
create_a_eliza_os_job
Create a one-off messaging job in elizaos. Returns: jobId, status, createdAt, expiresAt. Required: userId, content. content max 50KB; timeoutMs 1000–300000 (default 120000).
get_single_eliza_os_job_by_id
Get an elizaos messaging job by id. Returns: jobId, status, createdAt, startedAt, completedAt, result. Required: id.
eliza_os_jobs_health
Check the health of the elizaos jobs processing system. Returns: status, queueSize, processing, avgProcessingTime, failureRate.
eliza_os_logs_get_system_post
Get system logs from elizaos via POST. Returns a list of log entries including level, time, msg, agentId, and agentName.
eliza_os_logs_clear_system
Clear all system logs in elizaos. Returns: status, message.
eliza_os_logs_delete_entry
Delete a specific log entry for an elizaos agent. Returns an empty 204 response on success. Required: agent_id, log_id.
eliza_os_media_upload_for_agent
Upload media for an agent in elizaos. Returns the uploaded media object including id, url, mimeType, and size. Required: agent_id, file.
eliza_os_media_upload_to_channel
Upload media to a messaging channel in elizaos. Returns the uploaded media object including id, url, channelId, agentId, mimeType, and size. Required: channel_id, file.
eliza_os_memory_create_room
Create a room for an elizaos agent. Returns: id, name, agentId, createdAt, source, type, worldId, serverId, metadata. Required: agent_id, name.
update_a_eliza_os_memory_by_id
Update an elizaos memory. Returns: id, message. Required: agent_id, id.
eliza_os_memory_delete_all_by_agent
Delete all memories for an elizaos agent. Returns: success, data. Required: agent_id.
eliza_os_memory_delete_all_by_room
Delete all elizaos memories associated with a room. Returns an empty 204 response on success. Required: agent_id, room_id.
create_a_eliza_os_messaging_server
Create a new messaging server in elizaos. Returns the created server object with id, name, description, metadata, and createdAt. Required: name.
eliza_os_messaging_servers_add_agent
Add an agent to a messaging server in elizaos. Returns: success. Required: message_server_id, agentId.
eliza_os_messaging_servers_remove_agent
Remove an agent from a messaging server in elizaos. Returns: success. Required: message_server_id, agent_id.
create_a_eliza_os_messaging_channel
Create a new messaging channel in elizaos. Returns the created channel with id, name, serverId, description, and metadata. Required: name, serverId.
eliza_os_messaging_channels_get_details
Get details for a single elizaos messaging channel. Returns: id, name, serverId, description, metadata. Required: channel_id.
update_a_eliza_os_messaging_channel_by_id
Update an elizaos messaging channel. Returns the updated channel with id, name, serverId, description, and metadata. Required: id.
delete_a_eliza_os_messaging_channel_by_id
Delete an elizaos messaging channel by id. Returns an empty 204 response on success. Required: id.
eliza_os_messaging_channels_add_agent
Add an agent to an elizaos messaging channel. Returns: channelId, agentId, message. Required: channel_id, agentId.
eliza_os_messaging_channels_send_message
Send a message to an elizaos messaging channel. Returns: id, text, userId, agentId, roomId, createdAt, metadata. Required: channel_id, author_id, content, message_server_id.
eliza_os_messaging_channels_delete_message
Delete a single message from an elizaos messaging channel. Returns an empty 204 response on success. Required: channel_id, message_id.
eliza_os_messaging_channels_clear_messages
Delete all messages from an elizaos messaging channel. Returns an empty 204 response on success. Required: channel_id.
eliza_os_messaging_channels_delete_central_messages_by_user
Delete all messages for a user from a legacy elizaos central channel. Deprecated; use the standard channels endpoint instead. Returns: success, deleted. Required: channel_id, userId.
eliza_os_messaging_channels_get_or_create_dm
Get or create a DM channel between two elizaos users. Returns the channel object including id, name, serverId, description, and metadata. Required: userId1, userId2.
eliza_os_messaging_channels_create_central
Create a legacy elizaos central channel. Deprecated; use POST /api/messaging/channels instead. Returns the channel object including id, name, serverId, description, and metadata. Required: name, serverId.
eliza_os_messaging_messages_submit
Submit a message to the central messaging system in elizaos. Returns the stored message with id, text, userId, agentId, roomId, createdAt, and metadata. Required: channel_id, server_id, author_id, content, source_type, raw_message.
eliza_os_messaging_messages_ingest_external
Ingest a message from an external platform into elizaos. Returns: success, id, text, userId, agentId, roomId, createdAt, metadata. Required: agentId, roomId, userId, text, sourceId, sourceType.
create_a_eliza_os_session
Create a new messaging session in elizaos. Returns: sessionId, agentId, userId, createdAt, metadata, expiresAt, timeoutConfig. Required: agentId, userId.
get_single_eliza_os_session_by_id
Get an elizaos messaging session by id. Returns: sessionId, createdAt, expiresAt, error, code, details. Required: id.
list_all_eliza_os_sessions
List active messaging sessions in elizaos. Returns: sessionId, agentId, userId, createdAt, lastActivity, metadata, expiresAt, timeoutConfig, renewalCount, timeRemaining, isNearExpiration.
eliza_os_sessions_renew
Renew an elizaos messaging session before it expires. Returns the updated session with sessionId, expiresAt, renewalCount, timeRemaining, isNearExpiration, lastActivity, metadata. Required: session_id.
delete_a_eliza_os_session_by_id
End an elizaos messaging session by id. Returns: success, message. Required: id.
eliza_os_sessions_heartbeat
Send a heartbeat for an elizaos session to keep it alive. Returns the updated session with sessionId, agentId, expiresAt, timeoutConfig, and isNearExpiration. Required: session_id.
eliza_os_sessions_send_message
Send a message to an elizaos session. Returns the created message with id, content, authorId, sessionStatus, and isNearExpiration. Required: session_id, content.
eliza_os_sessions_health
Check the health of the elizaos Sessions API. Returns: status, activeSessions, timestamp, expiringSoon, invalidSessions, uptime.
eliza_os_sessions_bulk_update
Update the timeout configuration for an elizaos session. Returns the updated session with sessionId, expiresAt, timeoutConfig, and timeRemaining. Required: session_id.
create_a_eliza_os_room
Create a room in elizaos. Returns the created room with id, name, source, worldId, and entities. Required: agent_id.
list_all_eliza_os_rooms
List rooms for an elizaos agent. Returns rooms including id, name, source, worldId, and entities. Required: agent_id.
get_single_eliza_os_room_by_id
Get a single room in elizaos by id. Returns: id, name, source, worldId, entities. Required: agent_id, id.
update_a_eliza_os_room_by_id
Update a room in elizaos. Returns the updated room including id, name, source, worldId, and entities. Required: agent_id, id.
delete_a_eliza_os_room_by_id
Delete a room in elizaos by id. Returns an empty 204 response on success. Required: agent_id, id.
get_single_eliza_os_run_by_id
Get a single elizaos agent run by id. Returns the full run object including runId, agentId, status, events, and tokensUsed. Required: agent_id and id.
list_all_eliza_os_runs
List execution runs for a specific elizaos agent. Returns run summaries including runId, status, startedAt, durationMs, and counts. Required: agent_id.
eliza_os_system_hello
Get a basic health-check response from the elizaos server. Returns: message.
eliza_os_system_health
Get the elizaos server health status. Returns: status, version, timestamp, dependencies.
eliza_os_system_ping
Ping the elizaos server to confirm responsiveness. Returns: pong, timestamp.
eliza_os_system_get_config
Get the public elizaos system configuration. Returns: version, environment, features, limits.
eliza_os_system_get_status
Get the current elizaos system status. Returns: status, agentCount, timestamp.
eliza_os_system_get_version
Get the ElizaOS version information. Returns: version, commit, buildTime.
eliza_os_system_get_debug_servers
Get ElizaOS server debug information. Returns a servers array with nested id, name, status, and agents.
eliza_os_system_get_servers
Get ElizaOS server information. Returns a servers array with nested id, name, status, and agents.
eliza_os_system_get_local_env
Get the local environment variables from ElizaOS. Returns: success, data.
eliza_os_system_update_local_env
Update the local environment variables in ElizaOS. Returns: success, message. Required: content.
eliza_os_system_stop
Stop the elizaos server. Returns: message.
eliza_os_websocket_connect
Connect to the elizaos Socket.IO real-time websocket. Returns an empty 101 Switching Protocols response on success.
list_all_eliza_os_agent_panels
List panels registered for an ElizaOS agent. Returns: name, path, id. Required: agent_id.
list_all_eliza_os_agent_memories
List elizaos memories for an agent. Returns: id, entityId, agentId, roomId, createdAt, content. Required: agent_id.
list_all_eliza_os_room_memories
List memories for a room in elizaos. Returns: id, entityId, agentId, roomId, createdAt, content. Required: agent_id, room_id.
list_all_eliza_os_agent_logs
List elizaos agent logs for a specific agent. Returns: level, time, msg, agentId, agentName. Required: agent_id.
list_all_eliza_os_system_logs
List system logs from an elizaos server. Returns log entries with level, time, msg, agentId, and agentName. Filters: since, level, agentName, agentId.
list_all_eliza_os_channel_participants
List participants of an ElizaOS messaging channel. Returns an array of participant UUIDs. Required: channel_id.
list_all_eliza_os_channel_messages
List messages in an elizaos channel. Returns: id, text, userId, agentId, roomId, createdAt, metadata. Required: channel_id.
list_all_eliza_os_server_agents
List agents attached to a message server in elizaos. Returns: id, name. Required: message_server_id.
list_all_eliza_os_server_channels
List channels on an elizaos message server. Returns: id, name, serverId, description, metadata. Required: message_server_id.
list_all_eliza_os_central_server_channels
List channels for a central messaging server in elizaos. Returns: id, name, serverId, description, metadata. Required: server_id. Deprecated in favor of GET /api/messaging/message-servers/{serverId}/channels.
list_all_eliza_os_central_servers
List ElizaOS central messaging servers. Returns: id, name, description, metadata, createdAt. Deprecated: use the message-servers endpoint instead.
list_all_eliza_os_session_messages
List messages for an ElizaOS messaging session. Returns: id, content, authorId, isAgent, createdAt, metadata. Required: session_id. Max 100 per page; messages are returned newest first.
Why Truto
Why use Truto’s MCP server for ElizaOS
Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 600+ integrations.
Auto-generated, always up to date
Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.
Fine-grained access control
Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.
Multi-tenant by design
Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.
Works with every MCP client
Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.
Built-in auth, rate limits, and error handling
Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.
Expiring and auditable servers
Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.
How It Works
From zero to integrated
Go live with ElizaOS in under an hour. No boilerplate, no maintenance burden.
Link your customer’s ElizaOS account
Use Truto’s frontend SDK to connect your customer’s ElizaOS account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.
We handle authentication
Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.
Call our API, we call ElizaOS
Truto’s Proxy API is a 1-to-1 mapping of the ElizaOS API. You call us, we call ElizaOS, and pass the response back in the same cycle.
Unified response format
Every response follows a single format across all integrations. We translate ElizaOS’s pagination into unified cursor-based pagination. Data is always in the result attribute.
FAQs
Common questions about ElizaOS on Truto
Authentication, rate limits, data freshness, and everything else you need to know before you integrate.
How does authentication to ElizaOS work through Truto?
Your end users connect their ElizaOS instance through Truto's connection flow. Truto stores and refreshes credentials, so your application calls a single Truto endpoint per tool (like create_a_eliza_os_agent or eliza_os_messaging_messages_ingest_external) without handling ElizaOS auth directly.
Can we create and manage agents programmatically for each of our customers?
Yes. The integration exposes full agent lifecycle tools — create, get, list, update, delete, start, and stop — so you can generate per-tenant agents from user inputs and control their compute state on demand.
Can we feed messages from our own chat UI into ElizaOS instead of using Discord or Telegram?
Yes. Use eliza_os_messaging_messages_ingest_external to pipe messages from your proprietary interface into ElizaOS, and read agent replies back via channel or session message endpoints. You don't need to run a third-party messaging backend.
Does the integration support multi-agent coordination (Worlds and Rooms)?
Yes. You can create Worlds, create and update Rooms, add agents to messaging servers and channels, and list room memories to expose agent-to-agent coordination and shared context inside your product.
How do we handle long-running AI tasks without holding a connection open?
Use the Jobs tools — create_a_eliza_os_job and get_single_eliza_os_job_by_id — to dispatch asynchronous background work and poll for results, instead of keeping a WebSocket alive for heavy processing.
Can we access logs and run history for billing or audit purposes?
Yes. The integration exposes system logs, agent logs, and run history endpoints (list_all_eliza_os_runs, list_all_eliza_os_agent_logs, eliza_os_logs_get_system_post) so you can meter usage per customer and build audit trails inside your dashboard.
ElizaOS
Get ElizaOS integrated into your app
Our team understands what it takes to make a ElizaOS integration successful. A short, crisp 30 minute call with folks who understand the problem.