AgentsAgentBase

serve

View as MarkdownOpen in Claude

Start a FastAPI web server powered by uvicorn to serve this agent. The server exposes endpoints for SWML document delivery, SWAIG function execution, post-prompt summary handling, and health checks.

This method blocks until the server is shut down (e.g., via SIGINT).

For most cases, use run() instead — it auto-detects the environment and calls serve() in server mode or dispatches to the appropriate serverless handler.

The server automatically includes:

  • SWML document endpoint at the agent’s route
  • SWAIG function endpoints for each registered tool
  • /health and /ready health check endpoints
  • Security headers middleware
  • SSL support when configured via environment variables

Parameters

host
Optional[str]

Host override. Defaults to the value set in the constructor.

port
Optional[int]

Port override. Defaults to the value set in the constructor.

Returns

None — This method blocks and does not return until the server is stopped.

Example

1from signalwire import AgentBase
2
3agent = AgentBase(name="my-agent", host="0.0.0.0", port=3000)
4agent.set_prompt_text("You are a helpful assistant.")
5agent.serve() # Blocks here, serving at http://0.0.0.0:3000/