👋 Hey Vapi Team,
We’re running into a problem where our AI receptionist is not speaking the tool response after a successful get_pricing call — even though everything appears to be set up correctly.
✅ What’s Working
Tool returns a valid response:
json
Copy
Edit
{
"match_found": "true",
"price_string": "$150.00"
}
request-complete block is defined:
json
Copy
Edit
{
"type": "request-complete",
"content": "The price is [price_string]. Would you like to go ahead and schedule the appointment?",
"conditions": [
{
"param": "match_found",
"value": "true",
"operator": "eq"
}
]
}
Assistant prompt includes:
"Do not speak immediately after tool calls; let the tool response speak instead."
Tool is blocking, not async.
❌ What’s Going Wrong
Despite everything above, the assistant still speaks manually after calling the tool:
“Let me check the pricing for you. 1 moment, please.”
This seems to override or suppress the request-complete message — even though the tool matched successfully.
🧪 Test Info
Tool ID: eefd335d-9ba9-44db-9193-b5010f758543
Call ID: 1a7dfa3f-cac7-4069-9e66-eaf9a36ee725
Tool Call ID: call_DQ7c1KRVOZrUzBMRKoTL6EMQ
Assistant ID: 8de39e0c-9a38-4350-9475-036d9e91f178
Timestamp: 2025-05-14 18:10:29 UTC
Same issue happens across:
Local Flask API
Render-hosted version of the same endpoint
🙏 Request for Help
Is this a known issue with request-complete getting suppressed by post-tool assistant speech?
Should we tweak anything in the tool definition or prompt to guarantee tool response is spoken?
Can you confirm if request-complete was queued but not spoken in this case?
Thanks for helping us debug this last-mile issue! 🔧
Best,
Adrian Torres
817-586-9634