A dynamic, self-refreshing MCP gateway for the complete Telegram Bot API
Strong tool definitions with clear naming, comprehensive schemas, and good descriptions. All 5 tools follow verb_noun convention (telegram_search, telegram_get, telegram_call, telegram_refresh). Input schemas are complete with type definitions and constraints. Descriptions range 80-180 chars, meeting the 10-1024 baseline. However, output schemas are not documented in the visible code, and error handling guidance is minimal. Tool composition is excellent, each tool has a single responsibility and clear chaining potential (search → get → call). Security is well-handled with token injection via config, not parameters.
Validate and execute any current Telegram Bot API method. Destructive methods require confirm=true. Local files and base64 upload descriptors are converted to multipart uploads.
Return the complete current schema for one Telegram Bot API method.
Return the complete current definition of a Telegram Bot API object or union type.
Fetch and atomically install the latest schema from the official Telegram Bot API documentation.
Fuzzy-search every Telegram Bot API method by name, description, category, or parameter name.
Output schemas not documented. Tool descriptions state what is returned (e.g., 'complete current schema') but the response structure is not formally specified. LLMs cannot plan downstream calls without knowing returned fields.
Error handling lacks recovery guidance. No indication of what errors are retryable, user-fixable, or fatal. telegram_call_method accepts destructive operations but error responses are not shown to guide LLM recovery.
telegram_call_method description lacks clarity on destructive operation handling. States 'Destructive methods require confirm=true' but does not explain consequences or guide LLM on when to set confirm. Should state: 'Irreversible operations (deleteMessage, banChatMember) require confirm=true to prevent accidental data loss.'
Inferred effective spec: 2025-06-18+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 64 | 2025-06-18+ | v2 |
telegram_refresh_schema has minimal description (70 chars). Does not explain when to call it, what triggers a refresh, or whether it blocks other operations. Should clarify: 'Fetches latest Telegram Bot API schema from official docs and atomically replaces cached version. Use when new methods are released or schema is stale.'
No pagination or result-limiting guidance in telegram_search_methods. Description does not state whether results are capped or if pagination is supported. Should clarify: 'Returns up to `limit` results (default 10, max 50). Results are sorted by relevance.'