telegram-claude-mcp
by chilldude
README.md
# Telegram MCP Bridge
An MCP server that lets Claude Code send messages and ask questions via Telegram.
When Claude Code needs your input during a coding task, it sends a Telegram message (with optional inline buttons) and waits for your reply.
```
Claude Code → MCP tool call → this server → Telegram Bot API → your phone
← tool result ← server ← you tap a button / type a reply
```
## Tools
| Tool | Description |
|------|-------------|
| `ask_user` | Send a question with optional buttons, wait for response (10-min timeout) |
| `notify_user` | Fire-and-forget notification |
## Setup
### 1. Create a Telegram Bot
1. Open Telegram, message [@BotFather](https://t.me/BotFather)
2. Send `/newbot`, follow prompts — save the **bot token**
3. Message your new bot (send anything), then visit:
```
https://api.telegram.org/bot<YOUR_TOKEN>/getUpdates
```
4. Find your **chat ID** in the response JSON (`result[0].message.chat.id`)
### 2. Clone & Install
```bash
git clone https://github.com/yourusername/telegram-claude-mcp.git
cd telegram-claude-mcp
npm install
```
### 3. Configure Claude Code
Add to `~/.claude/mcp.json` (create the file if it doesn't exist):
```json
{
"mcpServers": {
"telegram": {
"command": "node",
"args": ["/absolute/path/to/telegram-claude-mcp/telegram-bridge.js"],
"env": {
"TELEGRAM_BOT_TOKEN": "your-bot-token",
"TELEGRAM_CHAT_ID": "your-chat-id"
}
}
}
}
```
### 4. Restart Claude Code
The MCP server starts automatically when Claude Code launches. You should see `telegram` in your MCP server list.
## Usage
Claude Code will automatically have access to `ask_user` and `notify_user` tools. You can prompt it to use them:
> "If you need to ask me something, use the ask_user Telegram tool"
Or Claude may use them when configured in your project's `CLAUDE.md`.
## License
MIT
TDQS
A4.2/5.0
Scored across 2 tools
Disambiguation5/5
The two tools are clearly separated by whether they wait for a reply: ask_user requires an answer, notify_user is fire-and-forget. There is no overlap in their intended use.
Naming Consistency5/5
Both tools follow the same verb_object pattern (ask_user, notify_user), making their behavior predictable and consistent.
Tool Count3/5
With only two tools, the set feels minimal. While it covers the basic interaction modes, two tools is at the lower boundary of what is considered a well-scoped set.
Completeness4/5
The server covers the two fundamental Telegram interaction patterns (interactive question and one-way notification). Some advanced messaging features like media or message editing are absent, but for the stated purpose the core functions are present.
Maintenance
ActivityInactive
ResponsivenessNo issues