Skip to main content
Glama

make_bot_speak

Enable a bot to speak specified text during meetings using text-to-speech. Customize voice language and name to enhance communication clarity and adaptability.

Instructions

Make a bot speak text during a meeting using text-to-speech

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bot_idYesID of the bot that should speak
textYesText for the bot to speak
voice_language_codeNoVoice language code (optional, defaults to 'en-US')en-US
voice_nameNoVoice name (optional, defaults to 'en-US-Casual-K')en-US-Casual-K

Implementation Reference

  • The main handler function that executes the make_bot_speak tool logic. Validates bot_id and text parameters, optionally uses voice_language_code and voice_name, sends POST request to API /api/v1/bots/{bot_id}/speech with TTS settings, returns formatted success message.
    private async makeBotSpeak(args: Record<string, unknown>) { const bot_id = args.bot_id as string; const text = args.text as string; const voice_language_code = (args.voice_language_code as string) || "en-US"; const voice_name = (args.voice_name as string) || "en-US-Casual-K"; if (!bot_id || typeof bot_id !== 'string') { throw new Error("Missing or invalid required parameter: bot_id"); } if (!text || typeof text !== 'string') { throw new Error("Missing or invalid required parameter: text"); } const speechData = { text, text_to_speech_settings: { google: { voice_language_code, voice_name } } }; await this.makeApiRequest(`/api/v1/bots/${bot_id}/speech`, "POST", speechData); return { content: [ { type: "text", text: `✅ Bot ${bot_id} will speak: "${text}"\n\n🔊 Voice: ${voice_name} (${voice_language_code})\n💡 The bot should now be speaking in the meeting!`, }, ], }; }
  • Input schema for make_bot_speak tool defining parameters: bot_id (required string), text (required string), voice_language_code (optional string default 'en-US'), voice_name (optional string default 'en-US-Casual-K').
    inputSchema: { type: "object", properties: { bot_id: { type: "string", description: "ID of the bot that should speak", }, text: { type: "string", description: "Text for the bot to speak", }, voice_language_code: { type: "string", description: "Voice language code (optional, defaults to 'en-US')", default: "en-US", }, voice_name: { type: "string", description: "Voice name (optional, defaults to 'en-US-Casual-K')", default: "en-US-Casual-K", }, }, required: ["bot_id", "text"], },
  • src/index.ts:266-293 (registration)
    Tool registration entry in the ListTools response array, including name 'make_bot_speak', description, and inputSchema.
    { name: "make_bot_speak", description: "Make a bot speak text during a meeting using text-to-speech", inputSchema: { type: "object", properties: { bot_id: { type: "string", description: "ID of the bot that should speak", }, text: { type: "string", description: "Text for the bot to speak", }, voice_language_code: { type: "string", description: "Voice language code (optional, defaults to 'en-US')", default: "en-US", }, voice_name: { type: "string", description: "Voice name (optional, defaults to 'en-US-Casual-K')", default: "en-US-Casual-K", }, }, required: ["bot_id", "text"], }, },
  • src/index.ts:410-411 (registration)
    Dispatch case in CallToolRequest handler switch statement that routes 'make_bot_speak' calls to the makeBotSpeak method.
    case "make_bot_speak": return await this.makeBotSpeak(args);

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/rexposadas/attendee-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server