Vapi MCP Server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| VAPI_TOKEN | Yes | Your Vapi API key from the Vapi dashboard |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ask_vapi_docsA | Ask about current Vapi documentation through the Fern docs MCP. Returns relevant documentation passages and source URLs; use them to answer the question. |
| list_assistantsB | Lists all Vapi assistants |
| create_assistantC | Creates a new Vapi assistant |
| get_assistantB | Gets a Vapi assistant by ID |
| update_assistantC | Updates an existing Vapi assistant |
| list_callsC | Lists all Vapi calls |
| create_callC | Creates a outbound call |
| get_callC | Gets details of a specific call |
| list_phone_numbersB | Lists all Vapi phone numbers |
| get_phone_numberB | Gets details of a specific phone number |
| list_toolsB | Lists all Vapi tools |
| get_toolC | Gets details of a specific tool |
| create_toolC | Creates a new Vapi tool |
| update_toolC | Updates an existing Vapi tool |
| get_api_schemaA | Looks up a schema in the Vapi API reference (the OpenAPI spec the Vapi SDKs are generated from). Pass |
| search_skillsA | Find Vapi agent skills in the public VapiAI/skills repository by name, description or content. Omit query to browse. Use load_skill to read a result. |
| load_skillA | Read a public Vapi skill or one of its supporting files. Start with SKILL.md, then load relevant files from the returned file list as needed. Returns instructions for this task; does not install skills or execute scripts. |
| list_simulation_personalitiesA | Lists simulation personalities: the simulated callers (testers) used in Vapi simulations |
| create_simulation_personalityC | Creates a simulation personality: the simulated caller that talks to the assistant under test |
| list_simulation_scenariosC | Lists simulation scenarios: the scripts testers follow and the checks that decide pass or fail |
| create_simulation_scenarioC | Creates a simulation scenario: instructions for the tester plus evaluations that decide whether the assistant passed |
| list_simulationsB | Lists simulations. Each simulation pairs one scenario with one personality. |
| create_simulationB | Creates a simulation that pairs a scenario with a personality. Run it with run_simulations. |
| list_simulation_suitesC | Lists simulation suites: named groups of simulations |
| create_simulation_suiteB | Creates a simulation suite that groups simulations so they can be run together |
| run_simulationsA | Starts a simulation run of simulations and/or suites against an assistant or squad. Returns the run with its ID and a dashboard URL to share with the user. Check progress with get_simulation_run. |
| list_simulation_runsC | Lists simulation runs, newest first |
| get_simulation_runA | Gets a simulation run with its status, item counts, and the first 100 item summaries. itemsTruncated indicates omitted items; itemsMetadata preserves API pagination metadata. Use get_simulation_run_item for an item’s transcript and call details. |
| get_simulation_run_itemB | Gets one simulation run item in full, including results, call snapshots, transcript, and improvement suggestions |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 29 tools
Most tools target a distinct resource+action pair, and the simulation cluster (personality vs scenario vs simulation vs suite vs run) is disambiguated by explicit descriptions. The closest overlaps are list_simulations vs list_simulation_runs and the four read/query helpers (ask_vapi_docs, get_api_schema, search_skills, load_skill), which are related but still separable.
Nearly everything follows a snake_case verb_noun pattern (list_assistants, create_call, get_simulation_run_item), which is predictable. Minor deviations exist in the docs/skills group where 'ask_vapi_docs' and 'load_skill' depart slightly from the get_/list_/create_ convention.
29 tools is heavy and well past the comfortable range, dominated by 12 near-repetitive simulation tools (list/create/get for personalities, scenarios, simulations, suites, runs). While they map to real product areas, the surface feels bloated rather than deliberately scoped.
Core flows (create assistant/call/tool, run simulations and inspect results) are covered, but lifecycle coverage is patchy: no delete operations anywhere, phone numbers are read-only (list/get only, no create/update/delete), and simulations have list/create but no get_simulation or update/delete.