Smithery Logo
MCPsSkillsDocsPricing
Login
Smithery Logo

Accelerating the Agent Economy

Resources

DocumentationPrivacy PolicySystem Status

Company

PricingAboutBlog

Connect

© 2026 Smithery. All rights reserved.

    signalwire

    signalwire

    signalwire/signalwire
    Coding
    4

    About

    SKILL.md

    Install

    Install via Skills CLI

    or add to your agent
    • Claude Code
      Claude Code
    • Codex
      Codex
    • OpenClaw
      OpenClaw
    • Cursor
      Cursor
    • Amp
      Amp
    • GitHub Copilot
      GitHub Copilot
    • Gemini CLI
      Gemini CLI
    • Kilo Code
      Kilo Code
    • Junie
      Junie
    • Replit
      Replit
    • Windsurf
      Windsurf
    • Cline
      Cline
    • Continue
      Continue
    • OpenCode
      OpenCode
    • OpenHands
      OpenHands
    • Roo Code
      Roo Code
    • Augment
      Augment
    • Goose
      Goose
    • Trae
      Trae
    • Zencoder
      Zencoder
    • Antigravity
      Antigravity
    ├─
    ├─
    └─

    About

    Use when building telephony, messaging, or video applications; implementing voice AI agents; working with SWML call flows; debugging webhook callbacks or call state issues; setting up real-time...

    SKILL.md

    SignalWire

    ⚠️ AVOID Deprecated APIs

    SignalWire maintains compatibility APIs (LAML/CXML) that should NOT be used for new development:

    • LAML endpoints (/laml/) → Use REST API (/api/calling/, /api/video/)
    • CXML (XML markup) → Use SWML (YAML/JSON)

    This skill documents ONLY modern APIs: REST with JSON, SWML, Relay SDK, AI Agents SDK.

    SignalWire Technologies Quick Reference

    Technology Use When Format/Protocol
    REST APIs Trigger actions from backend, query state HTTP + JSON
    SWML Define call flows, IVR, AI interactions YAML/JSON documents
    Relay SDK Real-time WebSocket control JavaScript/Python
    AI Agents SDK Build voice AI agents Python decorators
    Call Fabric Route between subscribers/resources WebSocket framework
    SWAIG AI agent calls server-side functions HTTP POST to your endpoint

    Practical Knowledge from Production

    This skill combines technical API documentation with practical implementation guidance from real-world SignalWire deployments. Each workflow file includes:

    • Best Practices - Production-tested techniques and patterns
    • Common Patterns - Real-world implementation examples
    • Anti-Patterns - What NOT to do, mistakes to avoid
    • Production Tips - Deployment, monitoring, and testing insights
    • Real-World Examples - Complete working patterns from live applications

    These insights come from analysis of 89 SignalWire training videos, LiveWire sessions, and production deployments.

    Workflows by Use Case

    Getting Started:

    • Authentication & Setup | Number Management

    Voice Calls:

    • Outbound Calling | Inbound Handling | Call Control

    AI Voice Agents: Start with Voice AI overview

    • SDK: Basics | Prompting | Functions | Deployment
    • Best Practices: Patterns | Error Handling | Security | Testing | Debug Webhooks

    Other:

    • Messaging | Video | Fabric & Relay | Webhooks & Events

    Quick Start Patterns

    Authentication: HTTP Basic Auth with Project ID (username) + API Token (password)

    Space URL: All API requests go to https://{space-name}.signalwire.com

    SWML Variables: %{call.from}, %{call.to}, %{params.custom_field}, %{args.user_input}

    Webhooks: HTTP POST with JSON (call_id, call_state, from, to, direction)

    Errors: REST returns HTTP status + JSON with error/message. SWML logs to Dashboard.

    Key Concepts

    Call States: queued → created → ringing → answered → ended

    SWML Sections: main (required entry point) | execute (call + return) | transfer (goto)

    Resources: Subscribers, AI Agents, SWML Scripts, Video Rooms, SIP Gateways, Relay Apps (created via Dashboard or REST API)

    Critical Pattern: Loop Protection

    SWML gather/prompt nodes can infinite loop. Always add counters:

    - set:
        loop_counter: "{{loop_counter | default(0) | int + 1}}"
    - condition:
        if: "{{loop_counter}} > 3"
        then: hangup  # Prevent caller stuck in loop
    

    For complete patterns, see Inbound Call Handling.

    AI Agents SDK Reference

    IMPORTANT: For AI agent tasks, start with Voice AI - it covers 90% of use cases with examples and best practices.

    Only load reference docs for: Complete API parameters, advanced features (Contexts/Steps, Prefabs), platform-specific deployment (Lambda/GCF/Azure), or debugging production issues.

    See Voice AI workflow "When to Pull Additional Documentation" section for detailed guidance on when to use each reference document.

    Finding the Right Workflow

    New to SignalWire? → Authentication & Setup

    Building AI voice agent? → Voice AI

    Making/receiving calls? → Outbound Calling or Inbound Handling

    Debugging webhooks/callbacks? → Webhooks & Events

    Need real-time control? → Fabric & Relay

    Additional Resources

    • Main Documentation: https://developer.signalwire.com/
    • GitHub Examples: https://github.com/signalwire
    • AI Agents SDK: https://github.com/signalwire/signalwire-agents
    • Dashboard: https://{your-space-name}.signalwire.com
    Repository
    signalwire/signalwire-claude
    Files