Files
tiennm99 25ba154fe8 build: move from pnpm to npm
Replace pnpm-lock.yaml with package-lock.json. pnpm-workspace.yaml's
allowBuilds becomes package.json#allowScripts, which npm 11 gates the same way,
listing only the packages actually present in the tree.

Add a .gitignore: the repository had none, so nothing kept the installed
dependency tree out of version control.
2026-08-17 13:09:09 +07:00

47 lines
1.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# telegram-mcp
Cloudflare Worker exposing a Telegram bot as a Model Context Protocol server.
## Quick start
```bash
npm install
# Set secrets:
wrangler secret put TELEGRAM_TOKEN
wrangler secret put TELEGRAM_CHAT_ID
wrangler secret put MCP_SECRET # optional auth token
# Deploy
wrangler deploy
```
Local dev: `wrangler dev`
## Tools exposed
| Tool | Description | Key inputs |
|------|-------------|------------|
| `send_message` | Send a message to the configured Telegram chat | `text` (required), `parse_mode` (HTML/Markdown/MarkdownV2) |
| `get_updates` | Fetch recent pending messages received by the bot | `limit` (1–100, default 10) |
| `get_bot_info` | Return metadata about the configured bot | — |
## Claude Desktop config
Add to your `claude_desktop_config.json`:
```json
{
"mcpServers": {
"telegram": {
"command": "npx",
"args": ["mcp-remote", "https://<your-worker>.workers.dev/mcp"],
"headers": { "Authorization": "Bearer <MCP_SECRET>" }
}
}
}
```
## License
Apache-2.0 — see [LICENSE](LICENSE).