Skip to main content
Deploy a unified server that combines the agents API, A2A and A2U providers in a single endpoint.

CLI

Expected Output:
The server only advertises providers it actually mounts. agents-api and a2a run the workflow in --file, so they are mounted only when that file exists:
recipe and mcp are not part of the unified server. Run them with their own commands: praisonai serve recipe and praisonai mcp serve.

Agent

Define the agents the unified server runs in agents.yaml:
Response:
POST /agents accepts query (or message). A body that is not a JSON object returns 400; an agent failure returns 500.

Security

praisonai serve unified mounts agent-driving routes (POST /agents, POST /a2a), so binding it to a non-localhost interface without authentication is refused.
Binding to any host other than 127.0.0.1 / localhost / ::1 requires an API key. The server exits immediately (SystemExit) if neither --api-key nor PRAISONAI_SERVE_API_KEY is set.
Clients send the key in Authorization: Bearer … or X-API-Key: …. Only /health, / and /.well-known/agent.json are public.

Unified Endpoints

Agent Card

Response (with --file):
Without --file, the url key is omitted because /a2a is not mounted.

Discovery Document

Response (with --file):
Without --file, providers contains only a2u.

Client Usage

Use the unified endpoints CLI to interact with any provider:

CLI Options

Environment Variables

Provider Types

Troubleshooting