Skip to content

Conversation

@dmitry-simple-it
Copy link
Contributor

Summary

Add three new MCP tools for Telegram message reactions:

  • send_reaction - Send emoji reaction to a message (👍❤️🔥 etc.)
  • remove_reaction - Remove your reaction from a message
  • get_message_reactions - Get list of reactions with user info

Implementation

  • Uses Telegram's SendReactionRequest and GetMessageReactionsListRequest APIs
  • Supports standard emoji reactions and custom emoji (Premium)
  • Includes proper ToolAnnotations with title following PR feat: Add title annotations to all 78 tools for improved LLM display #40 pattern
  • Uses existing @validate_id decorator for chat_id validation
  • Follows project error handling patterns with log_and_format_error

Test Plan

  • send_reaction - tested on private chats and groups
  • remove_reaction - tested reaction removal
  • get_message_reactions - returns JSON with user_id, emoji, date
  • Existing tools unaffected (verified get_chats, list_contacts, get_messages)
  • Black formatting and flake8 pass

Add three new MCP tools for handling Telegram message reactions:
- send_reaction: Send emoji reaction to a message
- remove_reaction: Remove your reaction from a message
- get_message_reactions: Get list of reactions on a message

All tools include proper ToolAnnotations and follow existing code patterns.
@chigwell chigwell merged commit 24a07d1 into chigwell:main Dec 23, 2025
3 checks passed
l1v0n1 added a commit that referenced this pull request Dec 25, 2025
Add documentation for three new message reaction tools from PR #41:

- send_reaction(chat_id, message_id, emoji, big=False): Add a reaction to a message
- remove_reaction(chat_id, message_id): Remove a reaction from a message
- get_message_reactions(chat_id, message_id, limit=50): Get all reactions on a message

These tools are now part of the Messaging section in the features list.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants