MCP Integration Bug: Tool Function Names Not Properly Exposed
The Issue
Vapi's MCP integration creates a non-existent wrapper function instead of exposing actual MCP server tools, causing "Unknown tool" errors in production calls.
Expected vs Actual Behavior
MCP Server defines:
Should expose:
get_appointment_timeslots and create_appointment Vapi exposes:
book_appointments (doesn't exist in MCP server)Production Failure
AI attempted
book_appointments 3 times, all failed:Customer couldn't book appointment due to this bug.
Root Cause
Vapi incorrectly parses MCP
tools/list JSON-RPC responses. Instead of exposing individual tools per the MCP specification, it creates a wrapper that doesn't exist.Vapi's tool config shows the mismatch:
Comparison
Claude Desktop (works correctly):
front-desk-appointment:get_appointment_timeslotsfront-desk-appointment:create_appointment
This bug defeats the entire point of MCP. The protocol exists to expose groups of related tools through a single server, but Vapi's implementation forces developers to create individual tools one-by-one instead of leveraging MCP's server-based tool discovery. This makes MCP integration pointless on Vapi.