Telegram Bridge MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BOT_TOKEN | Yes | The token provided by @BotFather for your Telegram bot. | |
| WHISPER_MODEL | No | The Whisper model to use for local voice transcription. | onnx-community/whisper-base |
| ALLOWED_CHAT_ID | Yes | The chat ID where outbound messages are restricted to. Outbound tool calls to any other chat are rejected. | |
| ALLOWED_USER_ID | Yes | The user ID allowed to interact with the bot. Inbound updates from any other user are silently discarded. | |
| WHISPER_CACHE_DIR | No | Optional directory where Whisper model weights are cached. |
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
} |
| resources | {
"subscribe": true,
"listChanged": true
} |
| experimental | {
"claude/channel": {}
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| helpA | Discovery for this MCP server. No args -> overview. topic: 'index' -> topic menu. topic: 'guide' -> comms guide. topic: '<tool/topic>' -> detailed help. |
| dequeueA | Consume queued updates. Non-content events drain first, then up to one content event (text, media, voice) is appended. Returns: |
| sendA | Send a message as text, audio (TTS), or both. text only → text message with auto-split and Markdown. audio only → TTS voice note (spoken content). Both → voice note with text as caption (keep brief — topic context before playback). At least one of text or audio is required. For structured status, use notify. For file attachments, use send_file. For interactive prompts, use ask, choose, or confirm. Pass type: "" to route to a specific mode. Call with no args to see available types. |
| actionA | Universal action dispatcher. Omit |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| agent-guide | Agent behavior guide for this MCP server. Read this at session start to understand how to communicate with the user and which tools to use. |
| communication-guide | Compact Telegram communication patterns: tool selection, hard rules, commit/push flow, multi-step tasks, and loop behavior. |
| quick-reference | Hard rules + tool selection table for Telegram communication. Minimal injected rules card — full detail in communication-guide. |
| setup-guide | Step-by-step guide to creating a Telegram bot and running pnpm pair to configure this MCP server. |
| formatting-guide | Reference for Markdown/HTML/MarkdownV2 formatting in Telegram messages. Consult this when unsure how to format text. |
TDQS
Scored across 4 tools
Most tools have distinct purposes: action dispatches commands, dequeue consumes updates, help provides documentation, send transmits messages. However, send overloads multiple sending modes (notify, send_file, etc.) which could cause confusion.
Tool names are inconsistent: two verbs (dequeue, send), one noun (action), and one ambiguous (help). No consistent pattern like verb_noun or camelCase.
Four tools is minimal but acceptable for a simple bridge. The scope seems intentionally limited, but more tools might be expected for a full-featured bridge.
Core send and receive operations are covered via send and dequeue. Session management is handled through action. However, missing editing, deleting, or searching messages leaves notable gaps.