Telegram Assistant

VerifiedCaution

Automate Telegram workflows: message digests, style analysis, and AI-powered channel posting with style matching.

Sby Skills Guide Bot
ProductivityIntermediate
906/2/2026
Claude Code
#telegram#automation#messaging#digest#style-analysis

Recommended for

Our review

This assistant automates Telegram workflows: summarizing unread messages, analyzing writing style, and drafting/publishing posts.

Strengths

  • Generates a daily digest of unread messages across all chats.
  • Analyzes writing style from channel posts and creates a reusable style guide.
  • Drafts posts matching the user's style before publication.

Limitations

  • Requires setting up the telegram-mcp server in Claude Code.
  • Cannot send messages directly, only save drafts for user review.
  • Style analysis is limited to channel posts, not private messages.
When to use it

Use it to manage Telegram message overload, create consistent channel posts, or analyze your writing style.

When not to use it

Do not use for real-time interactions or handling sensitive information via Telegram.

Security analysis

Caution
Quality score90/100

The skill interacts with Telegram through a powerful MCP tool that has full account access, reading messages and saving drafts. While it does not perform destructive actions and explicitly avoids direct message sending, the potential for misuse (e.g., reading sensitive data or impersonation if credentials leak) puts it in the 'caution' category. The included safety measures reduce risk but do not eliminate it.

Findings
  • The skill grants full Telegram account access via MCP tools; if the session string is compromised, it could lead to account misuse. The skill includes safety guidelines (draft-only, chat ID verification) but still carries inherent risk due to the scope of access.

Examples

Morning Digest
Give me a morning digest of my unread Telegram messages, prioritizing mentions and questions.
Style Extraction
Analyze the writing style from the last 20 posts in my channel 'TechNews' and save a style guide.
Draft Post
Draft a post about the latest AI developments for my channel, matching my writing style from the style guide.

name: telegram-assistant description: | Telegram automation assistant using telegram-mcp. Use when users want to: (1) Get a digest of unread Telegram messages (2) Analyze their writing style from channel posts (3) Draft and publish posts to Telegram channels (4) Search and reply to messages across chats Triggers: "telegram digest", "unread messages", "morning summary", "post to channel", "draft telegram post", "analyze writing style", "extract style from channel", "telegram workflow" license: MIT compatibility: | Requires telegram-mcp server configured in Claude Code. See references/setup.md for installation instructions. metadata: author: Bayram Annakov (onsa.ai) version: "1.0.0" category: productivity telegram-mcp-repo: https://github.com/chigwell/telegram-mcp allowed-tools: mcp__telegram-mcp__* Read Write Edit Glob

Telegram Assistant

Automate Telegram workflows with AI: digests, channel posting, and style-matched drafts.

Quick Start

Need morning digest?     → Use Digest Workflow
Want to post to channel? → Use Style + Post Workflow
Replying to messages?    → Use Reply Workflow

Workflow 1: Digest

Goal: Summarize unread messages across all chats.

Step 1: Get Unread Chats

Use list_chats to find chats with unread messages.
Look for "Unread:" in the output (both count and "marked" flag).

Step 2: Read Recent Messages

For each chat with unread:

  1. Use get_messages or list_messages to fetch recent messages
  2. Focus on messages since last read

Step 3: Summarize

Create a digest with:

  • Priority items: Direct mentions, questions needing response
  • Updates: News, announcements from channels
  • Low priority: General chatter, FYI items

Step 4: Draft Replies (Optional)

For messages needing response:

  1. Draft a reply
  2. Use save_draft to save it for user review
  3. User can review and send manually in Telegram app

Safety: Never send messages directly. Always save as draft first.


Workflow 2: Style Extraction

Goal: Analyze channel posts to capture user's writing style.

Step 1: Fetch Posts

Use list_messages with the channel name/ID.
Fetch last 15-20 posts (skip media-only posts).

Step 2: Analyze Patterns

Extract these characteristics:

  • Language mix: Ratio of Russian to English terms
  • Structure: Use of hooks, tldr, bullets, numbered lists, sections
  • Tone: Formal (вы) vs casual (ты), first-person usage (я/мы)
  • Length: Average post length in words
  • Emoji: Frequency and types used
  • Call-to-action: How posts typically end

Step 3: Generate Style Guide

Create references/style-guide.md with:

# [Channel Name] Style Guide

## Language
- Primary: Russian with English tech terms
- Formality: [formal/casual]
- Person: [я/мы usage]

## Structure
- Hook: [question/statement/story]
- Sections: [yes/no, with headers?]
- Lists: [bullets/numbered]
- tldr: [yes/no]

## Formatting
- Average length: ~[X] words
- Emoji: [frequent/occasional/rare]
- Common emojis: [list]

## Endings
- Call-to-action style: [question/invitation/resource link]

## Example Patterns
[Include 2-3 anonymized structure examples]

Step 4: Save for Future Use

The style guide is now available for the Post workflow.


Workflow 3: Post to Channel

Goal: Draft a post matching user's writing style.

Pre-requisite

Run Style Extraction workflow first if references/style-guide.md doesn't exist.

Step 1: Read Style Guide

Read references/style-guide.md to understand the target style.

Step 2: Understand Topic

Ask user for:

  • Topic/subject matter
  • Key points to cover
  • Target audience (if different from usual)
  • Any specific call-to-action

Step 3: Draft Post

Write the post following the style guide:

  • Match language mix ratio
  • Use the same structural patterns
  • Maintain consistent tone
  • Include appropriate emoji (if style uses them)
  • End with typical call-to-action pattern

Step 4: User Review

Present the draft to user for feedback. Iterate if needed.

Step 5: Save as Draft

Use save_draft(chat_id="ChannelName", message="draft content")

User can then:

  1. Open Telegram app
  2. Go to the channel
  3. See the draft in the input field
  4. Review and send when ready

Safety: Always use save_draft, never send_message for channel posts.


Workflow 4: Search & Reply

Goal: Find specific messages and draft contextual replies.

Step 1: Search

Use search_messages(chat_id, query) to find relevant messages.
Or list recent messages and filter manually.

Step 2: Get Context

Use get_message_context(chat_id, message_id) to see surrounding messages.

Step 3: Draft Reply

Write a contextual reply based on the conversation flow.

Step 4: Save as Draft Reply

Use save_draft(chat_id, message, reply_to_msg_id=message_id)

User reviews and sends from Telegram app.


Safety Guidelines

  1. Draft First: Never use send_message for important communications. Always save_draft.

  2. Verify Chat ID: Double-check you're targeting the right chat before any action.

  3. Rate Limits: Avoid rapid-fire API calls. Space out requests if processing many chats.

  4. Privacy: The AI sees all accessible chats. Be mindful of sensitive conversations.

  5. Session Security: The session string provides full account access. Treat it like a password.

    • On macOS: Store in Keychain (see setup.md) rather than .env files
    • Never commit credentials to git

Troubleshooting

"Could not find the input entity"

  • Use channel username (without @) or numeric ID
  • For supergroups, try prepending -100 to the ID

"Chat not found"

  • Ensure the account has access to the chat
  • Try using the exact chat title from list_chats

Draft not appearing

  • Open the specific chat in Telegram app
  • Drafts are saved per-chat

Resources

Related skills