From vapi-voice-ai
Builds visual Vapi workflows with nodes for conversation steps, tool execution, conditional branching, and handoffs. Use for deterministic multi-step voice interactions beyond single-prompt assistants.
npx claudepluginhub vapiai/skills --plugin vapi-voice-aiThis skill uses the workspace's default tool permissions.
Build structured conversation workflows with visual node-based flows. Workflows provide deterministic control over conversation steps, branching logic, and tool execution.
Builds Retell AI voice agents using TypeScript SDK with custom LLM prompts, function calling to APIs, voice configs, and call handling settings.
Creates and configures Vapi voice AI assistants with models, voices, transcribers, tools, hooks, and settings for phone bots and conversational AI.
Initiates phone calls for real-time voice input, progress reports, and task discussions when text is insufficient.
Share bugs, ideas, or general feedback.
Build structured conversation workflows with visual node-based flows. Workflows provide deterministic control over conversation steps, branching logic, and tool execution.
Setup: Ensure
VAPI_API_KEYis set. See thesetup-api-keyskill if needed.
| Feature | Assistant | Workflow |
|---|---|---|
| Simple conversations | Best choice | Over-engineered |
| Multi-step processes | Can work with good prompting | Best choice |
| Deterministic flow | Hard to guarantee | Built-in |
| Conditional branching | Prompt-dependent | Visual nodes |
| Complex state management | Difficult | Native support |
Workflows are best built in the Vapi Dashboard visual editor at https://dashboard.vapi.ai — but they can also be configured via API.
curl -X POST https://api.vapi.ai/call \
-H "Authorization: Bearer $VAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"workflowId": "your-workflow-id",
"phoneNumberId": "your-phone-number-id",
"customer": {
"number": "+11234567890"
}
}'
The core building block — the assistant has a conversation within defined boundaries:
Execute a tool (API call, function) and use the result in subsequent nodes.
Branch the flow based on variables or conversation state.
Transfer to another workflow, assistant, or phone number.
[Greeting] → [Collect Date] → [Check Availability (Tool)] → [Confirm Booking] → [Goodbye]
↓ (unavailable)
[Suggest Alternatives] → [Confirm Booking]
[Introduction] → [Ask Budget] → [Ask Timeline] → [Qualify (Condition)]
↓ (qualified)
[Schedule Demo]
↓ (not qualified)
[Send Resources]
[Greeting] → [Identify Issue (Condition)]
↓ (billing) ↓ (technical) ↓ (other)
[Billing Flow] [Tech Support Flow] [General Help]
curl -X PATCH https://api.vapi.ai/phone-number/{id} \
-H "Authorization: Bearer $VAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"workflowId": "your-workflow-id"
}'
curl -X POST https://api.vapi.ai/call \
-H "Authorization: Bearer $VAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"workflowId": "your-workflow-id",
"phoneNumberId": "your-phone-number-id",
"customer": { "number": "+11234567890" }
}'
This skills repository includes a Vapi documentation MCP server (vapi-docs) that gives your AI agent access to the full Vapi knowledge base. Use the searchDocs tool to look up anything beyond what this skill covers — advanced configuration, troubleshooting, SDK details, and more.
Auto-configured: If you cloned or installed these skills, the MCP server is already configured via .mcp.json (Claude Code), .cursor/mcp.json (Cursor), or .vscode/mcp.json (VS Code Copilot).
Manual setup: If your agent doesn't auto-detect the config, run:
claude mcp add vapi-docs -- npx -y mcp-remote https://docs.vapi.ai/_mcp/server
See the README for full setup instructions across all supported agents.