Telegram send audio
tg_send_audioSend audio files through Telegram bots to share voice messages, podcasts, or recordings with specified chats using URLs and optional captions.
Instructions
Send audio via telegram bot
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| audio | Yes | Audio URL | |
| chat_id | No | Telegram chat id, Default to get from environment variables | |
| caption | No | Audio caption, 0-1024 characters after entities parsing | |
| parse_mode | No | Mode for parsing entities in the caption. [text/MarkdownV2] | |
| reply_to_message_id | No | Identifier of the message that will be replied to |
Implementation Reference
- mcp_notify/tgbot.py:106-122 (handler)The asynchronous handler function that implements the logic to send an audio file via the Telegram Bot API.
async def tg_send_audio( audio: str = Field(description="Audio URL"), chat_id: str = Field("", description="Telegram chat id, Default to get from environment variables"), caption: str = Field("", description="Audio caption, 0-1024 characters after entities parsing"), parse_mode: str = Field("", description=f"Mode for parsing entities in the caption. [text/MarkdownV2]"), reply_to_message_id: int = Field(0, description="Identifier of the message that will be replied to"), ): if parse_mode == TELEGRAM_MARKDOWN_V2: caption = telegramify_markdown.markdownify(caption) res = await bot.send_audio( chat_id=chat_id or TELEGRAM_DEFAULT_CHAT, audio=audio, caption=caption or None, parse_mode=parse_mode if parse_mode in [TELEGRAM_MARKDOWN_V2] else None, reply_to_message_id=reply_to_message_id or None, ) return res.to_json() - mcp_notify/tgbot.py:102-105 (registration)The @mcp.tool decorator that registers the tg_send_audio tool with the FastMCP instance.
@mcp.tool( title="Telegram send audio", description="Send audio via telegram bot", ) - mcp_notify/__init__.py:20-20 (registration)Invocation of tgbot.add_tools(mcp) which triggers the registration of Telegram tools, including tg_send_audio.
tgbot.add_tools(mcp) - mcp_notify/tgbot.py:107-111 (schema)Pydantic Field definitions providing input schema, descriptions, and defaults for the tg_send_audio tool parameters.
audio: str = Field(description="Audio URL"), chat_id: str = Field("", description="Telegram chat id, Default to get from environment variables"), caption: str = Field("", description="Audio caption, 0-1024 characters after entities parsing"), parse_mode: str = Field("", description=f"Mode for parsing entities in the caption. [text/MarkdownV2]"), reply_to_message_id: int = Field(0, description="Identifier of the message that will be replied to"), - mcp_notify/tgbot.py:24-28 (helper)Creation of the shared Telegram Bot instance used by tg_send_audio and other Telegram tools.
bot = Bot( TELEGRAM_BOT_TOKEN, base_url=f"{TELEGRAM_BASE_URL}/bot", base_file_url=f"{TELEGRAM_BASE_URL}/file/bot", ) if TELEGRAM_BOT_TOKEN else None