Vapi MCP server
Vapi in any MCP client, through Memtro: Vapi does not publish this server. Memtro's Vapi connector reads Vapi through its API with the credentials you connect, and one endpoint hands those tools, every other system you connect and Memtro's memory tools to Claude Code, Cursor, Claude Desktop or anything else that speaks Streamable HTTP, as you.
What the model can do
Vapi voice AI agents: calls with type, status, assistant, timing, duration, how they ended, Vapi's summary and success evaluation, and cost; assistants; outbound calling campaigns with progress; the org's phone numbers and which assistant answers each. When you ask, can place or schedule an outbound AI phone call, start an outbound SMS conversation, launch, reschedule or cancel a campaign, rename or delete a call, edit an assistant's greeting, voicemail and end-of-call lines or maximum length, and delete an assistant or campaign.
Reads
vapi_list_callsVapi calls, newest first as Vapi returns them: type, status, assistant, number id, campaign, start, end, duration, how it ended…vapi_get_callOne Vapi call: type, status, assistant, timing, how it ended, Vapi's full summary and success evaluation, cost with its breakdown (transport…vapi_list_assistantsVapi assistants: id, name, model, voice, first message, maximum call length and when created and changed.vapi_list_campaignsVapi outbound calling campaigns, newest first: name, status, assistant, number id, start, concurrency…vapi_list_phone_numbersThe org's Vapi phone numbers by id and label: provider, status and which assistant, squad or workflow answers inbound calls.
Acts, when you ask
These change something in Vapi. The model is told to use them only when you ask for exactly that, and each one is granted by name: per team on a shared connection, by the owner on a personal one.
vapi_create_callPlaces an outbound phone call from one of the org's numbers to to_number; the Vapi assistant rings that person and talks to them…vapi_send_smsStarts an outbound SMS conversation from one of the org's Twilio numbers to to_number.vapi_create_campaignLaunches an outbound calling campaign: the assistant calls every number listed (up to 50) from one of the org's numbers…vapi_update_campaignRenames a Vapi campaign, or, before it has started, changes its assistant, calling number or schedule.vapi_cancel_campaignCancels a Vapi campaign: its scheduled calls are deleted and calls already in progress are allowed to finish.vapi_delete_campaignPermanently deletes a Vapi campaign.vapi_rename_callSets the label of a Vapi call (for the team's own reference; nobody is notified).vapi_delete_callPermanently deletes a Vapi call's stored data.vapi_update_assistantEdits a Vapi assistant's name, the first thing it says, its voicemail message, its end-of-call message or its maximum call length.vapi_delete_assistantPermanently deletes a Vapi assistant.
Connect it
First connect Vapi on Dashboard → Connections, then add Memtro to your client once. The Vapi tools appear alongside the tools of everything else you have connected; nothing is configured per connector.
Claude Code
The Memtro plugin registers the server and a skill for when to use it; the tools are then available in every session.
claude plugin marketplace add memtro-org/claude-memtro
claude plugin install memtro@memtro --config api_key=sk-memtro-...Cursor
Add the server to .cursor/mcp.json in the project, or to the global file under ~/.cursor/.
{
"mcpServers": {
"memtro": {
"url": "https://platform.memtro.com/api/mcp",
"headers": {
"Authorization": "Bearer sk-memtro-..."
}
}
}
}Claude Desktop
Create a personal API key on Dashboard → Profile → API keys. In Claude Desktop add an MCP server of type HTTP with URL https://platform.memtro.com/api/mcp and the header Authorization: Bearer sk-memtro-…
OpenCode
A remote server in opencode.json.
{
"mcp": {
"memtro": {
"type": "remote",
"url": "https://platform.memtro.com/api/mcp",
"headers": {
"Authorization": "Bearer sk-memtro-..."
}
}
}
}Pi
One command: pi mcp add memtro --url https://platform.memtro.com/api/mcp --bearer-token-env-var MEMTRO_API_KEY. Tools arrive as mcp__memtro__*. The pi-memtro extension registers it for you, alongside Memtro as the model.
Any other client
Add an MCP server of type HTTP (Streamable HTTP, stateless) at https://platform.memtro.com/api/mcp with the header Authorization: Bearer sk-memtro-.... Codex, Zed, Windsurf, Cline and the SDKs all take a remote server this way.
Who may use it
The key identifies the person, and the server offers that person the tools they may use everywhere else in Memtro. A shared Vapi connection is used by the teams an administrator granted it to, tool by tool, on the Permissions page; a personal connection is used by its owner alone, and its tools that act stay off until the owner allows them. See Teams and permissions and Connectors.
Ask it like this
- › How did yesterday's calls end, and what did they cost?
- › Which calls did Vapi evaluate as unsuccessful this week?
- › How far has the renewals campaign got?
- › Which assistant answers the support number?
- › Cancel the renewals campaign.
Questions
- Is this an official Vapi MCP server?
- No. It is Memtro's MCP server with Memtro's Vapi connector behind it: the connector reads Vapi through its API with the credentials you connect on Dashboard → Connections, and Vapi publishes nothing here. The same endpoint carries every other system you connect and Memtro's memory tools.
- What does it cost?
- Nothing on top of Memtro. One price per organisation by its number of users, from $50 a month for up to 10 users after a 7-day free trial, with every connector, the MCP server, jobs and memory included. You bring your own model keys.
- Can it change anything in Vapi?
- Only when you ask, and only what it has been granted: place or schedule an outbound AI phone call to a number (rings the person; billed per minute); start an outbound SMS conversation with a number (texts the person; billed); launch an outbound calling campaign to a list of up to 50 numbers (rings each person; billed); rename, reschedule or retarget a campaign that has not started; cancel a campaign (scheduled calls are deleted, live calls finish); delete a campaign; rename a call; delete a call and its data (permanent); edit an assistant's name, first message, voicemail or end-of-call message, or maximum call length; delete an assistant (permanent). Every other tool reads, searches or lists. An administrator grants each acting tool by name per team, and a personal connection acts only after its owner allows it.
- Which clients work?
- Any MCP client that speaks Streamable HTTP: Claude Code, Cursor, Claude Desktop, OpenCode, Codex, Zed, Windsurf, Cline and the Anthropic and OpenAI SDKs. There is no local process to run; the server is remote and authenticated with your key.