ToolMessageStart custom message for only one tool ...
# support
m
Lets say I have an MCP tool with multiple tools inside. If I only want to configure a custom message to be said only for one tool, what parameter should I pass? the tool name inside the mcp or something else? What is the parameter exactly? https://cdn.discordapp.com/attachments/1459407155865325568/1459407156070842430/image.png?ex=69817cd4&is=69802b54&hm=9112d190a776d03937082a9d7e7c0035d1cd31d061635902e697f7e026be88b1&
j
If you want a custom message to fire only for one tool inside an MCP, use a condition on the tool name. Parameter: tool.name (sometimes exposed as tool_call.name) Operator: equals Value: the exact tool name (e.g. Update Phone Number) This ensures the message triggers only when that specific tool is called, not the whole MCP. Quick check: are you triggering this on pre-call, post-call, or on tool execution? @Mr.Kai
c
Hi Mr.Kai, Thanks for your question — I can see how this can be confusing, especially when working with an MCP tool that contains multiple tools and you only want to customize the message for one of them. I appreciate you calling out the specifics of what you’re trying to achieve. I’m happy to help clarify which parameter should be used and how to target a single tool correctly. For regular tools, you would typically configure custom messages using the tool's function name. However, with MCP tools, the situation is more complex because: 1. The MCP tool itself serves as a configuration mechanism 2. Individual tools are dynamically fetched from the MCP server at runtime 3. Tool definitions come from the MCP server, not your Vapi configuration Potential Approaches Option 1: Tool Function Name If you want to configure a message for a specific tool within your MCP server, you would likely use the function name that the MCP server exposes:
Copy code
{  "toolMessageStart": "I'm now checking your calendar...",  "toolName": "get_calendar_events"  // The actual function name from MCP server}
Option 2: MCP Server Tool ID Alternatively, it might use the tool identifier as defined by your MCP server:
Copy code
{  "toolMessageStart": "Let me search for that information...",  "toolId": "search_tool"  // As defined in your MCP server's tool list}
The Challenge with MCP Tools The key issue is that MCP tools are dynamically loaded, so Vapi fetches the tool definitions from your MCP server when the call starts. This means: • Tool names/IDs come from your MCP server • Vapi may not know about specific tools until runtime • Custom messages might need to be configured differently