> Fetch clean Markdown by appending `.md` to any page URL under https://signalwire.com/docs or requesting it with the HTTP header `Accept: text/markdown`. The root index at https://signalwire.com/docs/llms.txt lists the available documentation indexes. # Build AI Agents ## Docs - [Adding Skills](https://signalwire.com/docs/server-sdks/guides/adding-skills.md): Add skills to your agents with add_skill() and pass configuration parameters to customize behavior. - [AgentBase](https://signalwire.com/docs/server-sdks/guides/agent-base.md): Learn how to build voice AI agents using AgentBase, from basic configuration to advanced prompt engineering and voice customization. - [AI Parameters](https://signalwire.com/docs/server-sdks/guides/ai-parameters.md): Tune conversation behavior with parameters for speech detection, timeouts, barge control, and AI model settings. - [Architecture](https://signalwire.com/docs/server-sdks/guides/architecture.md): Understand the fundamental architecture, protocols, and patterns that power the SignalWire Server SDK. - [Built-in Skills](https://signalwire.com/docs/server-sdks/guides/builtin-skills.md): The SDK includes ready-to-use skills for common tasks like datetime, math, web search, and more. - [Call Flow Customization](https://signalwire.com/docs/server-sdks/guides/call-flow.md): Control call flow with verb insertion points for pre-answer, post-answer, and post-AI actions. - [Call Transfer](https://signalwire.com/docs/server-sdks/guides/call-transfer.md): Transfer calls to other destinations using connect() for phone numbers/SIP and swml_transfer() for SWML endpoints, with support for both permanent and temporary transfers. - [Concierge](https://signalwire.com/docs/server-sdks/guides/concierge.md): Provide venue information, answer questions about amenities and services, help with bookings, and give directions using the Concierge prefab agent. - [Contexts and Workflows](https://signalwire.com/docs/server-sdks/guides/contexts-workflows.md): Build multi-step conversation flows with branching logic, context switching, and step validation using the SDK's ContextBuilder. - [Custom Skills](https://signalwire.com/docs/server-sdks/guides/custom.md): Create your own skills by inheriting from SkillBase for reuse across agents and sharing with others. - [DataMap](https://signalwire.com/docs/server-sdks/guides/data-map.md): DataMap provides serverless API integration, letting you define functions that call REST APIs directly from SignalWire's infrastructure without running code on your server. - [FAQBot](https://signalwire.com/docs/server-sdks/guides/faq-bot.md): Answer frequently asked questions from a provided knowledge base using the FAQBot prefab agent, with optional category filtering and related question suggestions. - [Hints](https://signalwire.com/docs/server-sdks/guides/hints.md): Speech hints improve recognition accuracy for domain-specific vocabulary, brand names, technical terms, and other words the STT engine might misinterpret. - [InfoGatherer](https://signalwire.com/docs/server-sdks/guides/info-gatherer.md): Collect answers to a series of questions with confirmation support, dynamic question callbacks, and structured data output using the InfoGatherer prefab agent. - [MCP Gateway](https://signalwire.com/docs/server-sdks/guides/mcp-gateway.md): Bridge Model Context Protocol (MCP) servers with SignalWire AI agents, enabling your agents to use any MCP-compatible tool through a managed gateway service. - [Multi-Agent Servers](https://signalwire.com/docs/server-sdks/guides/multi-agent.md): Run multiple agents on a single server using AgentServer with path-based routing and SIP username mapping. - [Native Functions](https://signalwire.com/docs/server-sdks/guides/native-functions.md): Native functions are built-in SignalWire capabilities that can be enabled without writing code, providing common operations like web search and debugging. - [Parameters](https://signalwire.com/docs/server-sdks/guides/parameters.md): Define function parameters using JSON Schema to specify what arguments your functions accept. - [Prompts & POM](https://signalwire.com/docs/server-sdks/guides/prompts-pom.md): The Prompt Object Model (POM) provides a structured way to build AI prompts using sections, subsections, and bullets rather than raw text. - [Receptionist](https://signalwire.com/docs/server-sdks/guides/receptionist.md): Greet callers, collect their information, and transfer them to the appropriate department using the Receptionist prefab agent. - [Request Lifecycle](https://signalwire.com/docs/server-sdks/guides/lifecycle.md): Trace the complete journey of a call through the SignalWire Server SDK, from incoming call to conversation end. - [Results & Actions](https://signalwire.com/docs/server-sdks/guides/result-actions.md): FunctionResult is the return type for all SWAIG functions, containing response text and optional actions like transfers, SMS, or context changes. - [Search and Knowledge](https://signalwire.com/docs/server-sdks/guides/search-knowledge.md): Add RAG-style knowledge search to your agents using local vector indexes or PostgreSQL with pgvector, built with the sw-search CLI. - [Security](https://signalwire.com/docs/server-sdks/guides/security.md): The SDK provides layered security through HTTP Basic Authentication for all requests and optional per-function token validation for sensitive operations. - [Skill Configuration](https://signalwire.com/docs/server-sdks/guides/skill-config.md): Configure skills with parameters, environment variables, and SWAIG field overrides. - [Skills](https://signalwire.com/docs/server-sdks/guides/understanding-skills.md): Skills are modular, reusable capabilities that add functions, prompts, and integrations to your agents without custom code. - [State Management](https://signalwire.com/docs/server-sdks/guides/state-management.md): Manage data throughout call sessions using global_data for persistent state, metadata for function-scoped data, and post_prompt for call summaries. - [Static vs Dynamic Agents](https://signalwire.com/docs/server-sdks/guides/static-vs-dynamic.md): Choose between static agents with fixed configuration and dynamic agents that customize behavior per-call based on caller data. - [Survey](https://signalwire.com/docs/server-sdks/guides/survey.md): Conduct automated surveys with different question types including rating, multiple choice, yes/no, and open-ended, with validation and response logging. - [SWAIG (SignalWire AI Gateway)](https://signalwire.com/docs/server-sdks/guides/swaig.md): SWAIG connects the AI conversation to your backend logic, letting the AI call functions you define via webhooks. - [SWAIG Functions](https://signalwire.com/docs/server-sdks/guides/defining-functions.md): SWAIG (SignalWire AI Gateway) functions let your AI agent call custom code to look up data, make API calls, and take actions during conversations. - [SWML (SignalWire Markup Language)](https://signalwire.com/docs/server-sdks/guides/swml.md): SWML is the JSON format that tells SignalWire how to handle calls, generated automatically by your agent configuration. - [Voice & Language](https://signalwire.com/docs/server-sdks/guides/voice-language.md): Configure Text-to-Speech voices, languages, and pronunciation to create natural-sounding agents. > **Note:** This page contains both a page directory (above) and the landing page content (below). The page directory is generated for agent use and does not appear on the landing page. > Fetch clean Markdown by appending `.md` to any page URL under https://signalwire.com/docs or requesting it with the HTTP header `Accept: text/markdown`. The root index at https://signalwire.com/docs/llms.txt lists the available documentation indexes. # Build AI Agents > Learn how to build voice AI agents with the SignalWire SDK, from basic configuration to advanced multi-agent architectures. [contexts-and-workflows]: /docs/server-sdks/guides/contexts-workflows [state-management]: /docs/server-sdks/guides/state-management [call-recording]: /docs/platform/voice/record-calls [call-transfer]: /docs/server-sdks/guides/call-transfer [multi-agent-servers]: /docs/server-sdks/guides/multi-agent [search-and-knowledge]: /docs/server-sdks/guides/search-knowledge [mcp-gateway]: /docs/server-sdks/guides/mcp-gateway [infogatherer]: /docs/server-sdks/guides/info-gatherer [faqbot]: /docs/server-sdks/guides/faq-bot [survey]: /docs/server-sdks/guides/survey [receptionist]: /docs/server-sdks/guides/receptionist [concierge]: /docs/server-sdks/guides/concierge Build sophisticated voice AI agents using the SignalWire SDK. This section covers advanced features that transform simple voice agents into production-ready conversational applications capable of handling complex business processes. ## Advanced Topics #### [Contexts and Workflows](/docs/server-sdks/guides/contexts-workflows) Build multi-step conversation flows with branching logic, step validation, and context switching. #### [State Management](/docs/server-sdks/guides/state-management) Manage data throughout call sessions using global\_data, metadata, and post\_prompt. #### [Record calls](/docs/platform/voice/record-calls) Record calls with stereo/mono options, multiple formats, and webhook notifications. #### [Call Transfer](/docs/server-sdks/guides/call-transfer) Transfer calls to phone numbers, SIP endpoints, or other AI agents. #### [Multi-Agent Servers](/docs/server-sdks/guides/multi-agent) Run multiple agents on a single server with path-based and SIP routing. #### [Search and Knowledge](/docs/server-sdks/guides/search-knowledge) Add RAG-style knowledge search using local vector indexes or PostgreSQL with pgvector. #### [MCP Gateway](/docs/server-sdks/guides/mcp-gateway) Bridge Model Context Protocol servers with SignalWire AI agents for tool integration. ## Prefab Agents Pre-built agent archetypes for common use cases. Use them directly or extend them. #### [InfoGatherer](/docs/server-sdks/guides/info-gatherer) Collect answers to a series of questions with confirmation and dynamic question support. #### [FAQBot](/docs/server-sdks/guides/faq-bot) Answer frequently asked questions from a provided knowledge base. #### [Survey](/docs/server-sdks/guides/survey) Conduct automated surveys with rating, multiple choice, yes/no, and open-ended questions. #### [Receptionist](/docs/server-sdks/guides/receptionist) Greet callers, collect information, and transfer to the appropriate department. #### [Concierge](/docs/server-sdks/guides/concierge) Provide venue information, amenity details, and booking assistance.