MCP server for Telegram Bot API integration, providing tools to manage chats, send messages, handle members, and interact with Telegram bots
28 tools with consistent naming (verb_noun pattern) and basic descriptions. All tools have input schemas with typed parameters and descriptions. However, descriptions are minimal (10-50 chars, well below the 194-char baseline), lack context on WHEN to use each tool, and omit guidance on side effects. No output schemas documented. Error handling absent. Missing idempotency guidance for write operations. Parameter descriptions are terse and lack constraints (e.g., no enum for parse_mode values, no range for limit/offset). No mention of required permissions or audit trails. Tools like ban_chat_member and delete_message are destructive but lack confirmation patterns or dry-run support.
Ban a user in a group/supergroup/channel
Copy a message (without forward header) from one chat to another
Delete a message
Delete the list of commands for the bot
Edit a previously sent message
Forward a message from one chat to another
Get up-to-date information about a chat
Descriptions are critically short (10-50 chars vs 194-char baseline). Lack context on WHEN to use each tool, prerequisites, and side effects. LLMs cannot reliably select the right tool without richer guidance.
No output schemas documented. LLMs cannot plan downstream tool calls or extract required fields (e.g., message_id from send_message for later edit_message_text). Breaks tool composition.
Destructive operations (delete_message, ban_chat_member, restrict_chat_member) lack confirmation patterns, dry-run support, or explicit error guidance. Agents can cause irreversible harm without safeguards.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | 2026-07-28+ | v2 |
Get a list of administrators in a chat
Get information about a member of a chat
Get the number of members in a chat
Get basic information about the bot
Get the current list of commands for the bot
Get incoming updates (messages, callbacks, etc.) via long polling
Pin a message in a chat
Promote or demote a user in a supergroup/channel
Restrict a user in a supergroup (set permissions)
Send an audio file by URL or file_id
Send a document by URL or file_id
Send a location
Send a text message to a chat
Send a photo by URL or file_id
Send a poll
Send a sticker
Send a video by URL or file_id
Set the list of commands for the bot
Unban a previously banned user
Unpin all pinned messages in a chat
Unpin a message in a chat
Parameter descriptions lack constraints. parse_mode accepts 'Markdown, MarkdownV2, or HTML' but no enum defined. limit/offset lack ranges. until_date format unclear (Unix timestamp vs ISO 8601). LLMs will hallucinate invalid values.
No error handling guidance. Tools return raw API errors without recovery hints. LLMs cannot self-correct on invalid chat_id, missing permissions, or rate limits. No actionable error messages.