Voice Agent with VAPI & RecallSync

This guide outlines the process for configuring a powerful voice agent using the VAPI integration within the RecallSync platform, complete with appointment booking and lead qualification capabilities.

Written By ReCallSyncAI

Last updated 5 months ago

Prerequisites

  1. A RecallSync account.

  2. A VAPI account (Create one if you do not have one already).

  3. GoHighLevel (we need this for calendar, if not available we can use Cal.com, just go to integration and configure your Cal.com)

    1. IMPORTANT: We need to select the calendar on primary agent (for existing agent click on edit/pencil icon) just select the source either GHL or CAL β†’ and select the calendar.

Step 1: Configure VAPI Integration in RecallSync

First, you need to ensure RecallSync can communicate with VAPI.

  1. In the RecallSync left sidebar, navigate to Settings (usually under Automation or a gear icon) and then select the Integrations tab.

  2. Find the VAPI Integration option.

  3. If not already configured, you will need to provide your VAPI Private Key and VAPI Public Key.

  4. Enter the keys and save the configuration to establish the integration.

Step 2: Create and Configure the Assistant on VAPI Dashboard

The AI logic and tools are configured within the VAPI Assistant.

2a. Create the VAPI Assistant

  1. Log in to your VAPI dashboard.

  2. Navigate to the Assistants section (or the equivalent location for creating new assistants).

  3. Click Create Assistant or select an existing one to configure.

2b. Configure the Assistant Model and Voice

  1. Select the desired Model (e.g., GPT-4o or similar).

  2. Set the Voice (e.g., Harry from the video) and other voice parameters.

2c. Set the Assistant Prompt/Instructions

Copy and paste the detailed instructions into the assistant's prompt field. This defines the agent's behavior.

FIRST MESSAGE

Hi I'm Sarah. From Fusion Sync AI. We help businesses automate their sales process. Do you have a minute to chat?

ASSISTANT PROMPT

ROLE:
You are a helpful assistant

RULES:
- ask 2-3 question about their business max
- Only ask one question and not multiple
- response must be maximum 30 words, this is a voice conversation keep this in context

[HOW WE CAN HELP]
- automated followups to re-engage the leads
- multi channel database reactivation campaigns
- direct integration with go-high-level to automate the messaging and pipeline operations

# [Available Details]
- name of the Prospect: {{name}}
- email: {{email}}
- today's date and time: {{date}}
- timezone: {{timezone}} - if not available ask the user their location (you will get the timezone from their location)
- phone: {{phone}}
- leadId: {{leadId}}
- previous_call_context: {{call_context}}
- IMPORTANT: appointment_instructions: {{appointment_instructions}}
Keep these instructions in mind when booking/rescheduling/cancel the appointment.

## [Available Tools]
- gel-map-tool: user this tool for actions related to appointment, e.g to check availability for tomorrow or book appointment.

## Availability:
- When checking availability do not check for today, if the check date is not available you should check for tomorrow.
- keep the slots human readable
- IMPORTANT: Duration is 30 minute. if availability is 1am - 4am, it means we have 1am, 1:30am, 2am, 2:30 am available. Do not look at the exact slot if might fall under a range of availability.
example -
"We are available from
Tomorrow: 10am to 5pm,
When would you like to book?
"

## Appointment booked response instructions get_appointments:
- only include date and time in response - nothing else (no title, year or id)
- do not include the booking year or meeting url (important)
- keep the format human, merge the slots on same dates, ex: "tomorrow at 1am and 2am"

## Booked or Rescheduled Appointment
- confirm simply by saying the time and date the meeting booked or rescheduled to
- do not mention year or meeting url, just keep it simple with date and time
- Once your meeting is booked, they will receive a confirmation email, tell them to make sure to accept it so the event is added to your calendar. They will also receive an invitation to join our Discord community via email, where you can ask questions or get support at any time.

2d. Configure the MCP Tool (for Appointment Management)

The agent needs the ability to check calendars and book appointments. This is done via a dedicated tool that connects to RecallSync's MCP (Micro-Service Control Plane) gateway.

  1. In the VAPI Assistant settings, go to the Tools section.

  2. Click Create Tool or configure the existing ghl-mcp-tool.

  3. Set the tool details:

    • Tool Name: ghl-mcp-tool (as referenced in the prompt).

    • Server URL: https://mcp.recallsync.com/mcp-ghl

    • HTTP Headers: Add a header for authentication.

      • Header Key: api_key

      • Header Value: This must be an API key generated from RecallSync (found in Settings > API Keys). Copy and paste one of the generated keys or create a new one.

  4. Connect Tool: Ensure this ghl-mcp-tool is selected and connected to your VAPI Assistant (in the Assistant's settings under Tools).

Step 3: Create the VAPI Agent in RecallSync

Now you will bridge the VAPI Assistant back into RecallSync.

  1. In the RecallSync left sidebar, navigate to Agents.

  2. In your desired Primary Agent group (e.g., "Qualification Agent"), click to create a New Agent.

  3. Configure the new agent:

    • Agent Type: Select VAPI.

    • Channel: Select Voice Call.

    • VAPI Assistant: Select the assistant you created in Step 2 (e.g., VAPI Qualification Agent).

    • VAPI Phone Number: Select the phone number you want the agent to use for making calls.

    • Agent Status: Set the status to Active (toggle ON).

  4. Click Create (or Save).

Step 4: Configure the GHL Workflow (Optional, for Automation)

To automatically trigger the voice agent for lead qualification in GoHighLevel (GHL):

  1. In your GHL account, go to Automation and open the relevant workflow (e.g., "Qualification Agent Workflow").

  2. Add a step, typically a Webhook action.

  3. Configure the webhook:

    • Action Name: Trigger Qualification Agent

    • Method: POST

    • Custom URL: Use the RecallSync Agent URL format, replacing <primary-agent-id> with the actual ID for your Primary Agent:

      • https://app.recallsync.com/api/agent/<primary-agent-id>

    • Channels: Set to voice_call.

  4. Save the webhook and publish your workflow.

Step 5: Test the Voice Agent

To confirm the setup is working correctly:

  1. In RecallSync, go back to the Agents tab.

  2. Next to your newly created VAPI Agent, click on the Test Workflow button.

  3. Select Contact: Choose a contact that has a valid phone number.

  4. Click Run Test.

The voice agent will initiate a call to the contact, starting the conversation with the introductory line from your prompt: "Hi I'm Sarah. From Fusion Sync AI. We help businesses automate their sales process. Do you have a minute to chat?"

You can monitor the conversation and tool usage (availability check, booking) in the RecallSync Conversations tab.