Model Context Protocol server for Telegram integration with Claude Code. Provides tools for managing Telegram bots, sending messages, managing channels, and AI-powered webhook responses.
TSGram MCP has 21 tools with complete JSON schemas and descriptions, but quality is inconsistent. Naming follows verb_noun convention well (create_bot, send_message, get_chat_info). However, descriptions are often generic (e.g., 'Send a text message to a chat or channel' for send_message lacks context on when to use it vs alternatives). Parameter descriptions are present but minimal, most lack format guidance, constraints, or dependency hints. No output schemas are documented, forcing LLMs to infer response structure. Error handling is absent from tool definitions. Security concerns: bot tokens exposed as required parameters (pattern:secret-injection violation). Workspace tools (edit_file, execute_command) are high-risk with no confirmation or dry-run patterns. Composition is reasonable, tools are single-purpose, but chaining IDs are not guaranteed in responses.
Create a new Telegram bot instance
Delete webhook for a bot
Edit a file in the workspace (auto-syncs to local)
Execute a command in the workspace directory
Get information about a specific bot
Get list of chat administrators
Get recent messages from a chat or channel
Bot tokens exposed as required parameters (create_bot, all send_* tools require bot_id which is a token). Violates pattern:secret-injection, credentials must use server-side injection, not tool parameters. Tokens will appear in agent logs and traces.
No output schemas documented for any tool. LLMs cannot infer response structure, forcing them to guess what fields are returned. This violates pattern:tool and pattern:response-shaper. Agents cannot reliably chain tool calls or extract required IDs.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 53 | 2026-07-28+ | v2 |
Get information about a chat or channel
List all configured bot instances
List files in the workspace
Pin a message in a chat or channel
Read a file from the workspace
Send a text message to a chat or channel
Send a photo to a chat or channel
Send a video to a chat or channel
Change chat or channel description
Change chat or channel title
Set webhook URL for a bot
Sync files from local directory to Docker workspace
Sync files from Docker workspace to local directory
Unpin a message in a chat or channel
Destructive/irreversible tools lack confirmation or dry-run patterns. execute_command (IRREVERSIBLE risk), edit_file, delete_webhook, and workspace sync operations can cause data loss without agent confirmation. Violates pattern:confirmation-request.
Parameter descriptions lack format guidance and constraints. E.g., parse_mode enum is declared but description does not explain when to use HTML vs Markdown. chat_id accepts string|number but description does not clarify which format to use when. Violates pattern:constrained-input.
No error handling guidance in tool definitions. Tools do not document what errors are retryable, what user-fixable errors look like, or how to recover. Violates pattern:recovery-guide and pattern:error-classification.