telegram-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@telegram-mcpcheck for new Telegram messages"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
telegram-mcp
Bidirectional Telegram ⇆ agent bridge. No LLM in our stack.
Your agent (Claude Desktop, Cursor, a custom script) is the brain. Our platform is the pipe: we take messages you send on Telegram, store them, and hand them to your agent when it polls. When your agent has something to say back, it pushes through us to your Telegram.
Bring your own agent. Any MCP client works.
No inference in the middle. We don't call an LLM. No vendor lock-in.
Bidirectional.
get_new_messagespulls inbound,send_telegram_messagepushes outbound.Platform slash-commands.
/help,/clear,/recent,/window,/usageall work even if your agent is offline.
Hosted at telegram.regiq.in or self-host with the Docker Compose below.
Use it (hosted)
Visit https://telegram.regiq.in, sign in with Google.
DM @BotFather →
/newbot. Paste the token in your dashboard.On the dashboard: Generate MCP API key, copy it.
Add to Claude Desktop's
claude_desktop_config.json(or Cursor / any MCP client):{ "mcpServers": { "telegram": { "url": "https://telegram.regiq.in/api/mcp", "headers": { "Authorization": "Bearer YOUR_KEY_HERE" } } } }Send
/startto your bot on Telegram.
Now your agent can call get_new_messages to see what you sent it, and send_telegram_message to reply.
Related MCP server: telegram-mcp
Tools
Tool | Direction | Notes |
| user → agent | Returns inbound messages since the last pull. Read-once. |
| agent → user | Delivers text to the user's Telegram bot. |
| read | Last N stored messages, both directions. No cursor advance. |
| action | Wipes stored history for the user. |
Slash commands (platform-handled)
Handled by the platform directly — your agent isn't involved. So /help works even when nothing is polling.
Command | Effect |
| Registers this Telegram chat with your account. |
| Lists commands. |
| Shows the last N stored messages. |
| Wipes history. |
| Sets the history window (default 20). |
| Stored message count. |
Self-host
You'll need:
Docker + Compose
A Google OAuth client — Cloud Console. Scopes:
openid,email,profile. Redirect:<PUBLIC_BASE_URL>/api/auth/callback/googleA public HTTPS domain for Telegram webhooks (Cloudflare Tunnel or
ngrok http 3012locally)
No LLM key required. Your agent brings its own model.
git clone https://github.com/globalion/telegram-mcp
cd telegram-mcp
cp .env.example .env
# fill NEXTAUTH_SECRET, GOOGLE_*, PUBLIC_BASE_URL
docker compose up -d
# open http://localhost:3012Architecture
Telegram app Your MCP agent
▲ │ ▲ │
│ │ text poll │ │ push
│ ▼ │ ▼
┌──────────────────────────────────────────────────┐
│ Our platform (Hetzner) │
│ - /api/telegram/webhook/<per-user-secret> │
│ · slash-commands answered here │
│ · plain text stored, no reply │
│ - /api/mcp Bearer-auth JSON-RPC │
│ · get_new_messages, send_telegram_message │
│ · list_recent_messages, clear_history │
│ - Postgres: User, ApiKey, TelegramLink, Message │
└──────────────────────────────────────────────────┘Per-user webhook URL segment is a random secret so a leaked bot token can't be pointed at someone else's account. Google sign-in is identity + ban anchor only — per-message identity comes from the MCP API key + chatId.
License
MIT. See LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Telegram bridge for your MCP-compatible agent. Bidirectional, no LLM in our stack.
Multi-tenant Telegram gateway for AI agents — HTTP+stdio, 8 tools, MTProto User API
Human-input bridge for AI agents with voice-first answer links, MCP tools, and HTTP APIs.
Unofficial Telegram MCP server — read, search, reply and react in your own Telegram account.
Related MCP Servers
- FlicenseAqualityAmaintenanceBridges AI assistants to a Telegram bot to enable two-way messaging, interactive confirmations, and live status updates. It supports automatic voice transcription via local Whisper models and provides secure, single-user communication for MCP-compatible hosts.46-
- FlicenseNot gradedqualityDmaintenanceMCP server that enables AI agents to send messages, photos, polls, and receive replies via Telegram with persistence and rate limiting.25 npm-
- FlicenseNot gradedqualityCmaintenanceBridges MCP clients to Telegram for sending notifications and waiting for user replies.-
- AlicenseNot gradedqualityBmaintenanceMCP server that exposes a Telegram bot over stdio transport, enabling LLM agents to discover each other, announce capabilities, and communicate via messages in shared group chats. It provides tools like whoami, announce, list_agents, ping_agent, send_message, list_chats, get_recent_messages, and wait_for_reply.MIT