CAT
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Cross AI Tools

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by @mertduzgun

Independent project, not affiliated with Anthropic

aiogram-mcp

py2755/aiogram-mcp
authSTDIOregistry active
Summary

Turns an existing aiogram bot into an MCP server so Claude can drive your Telegram bot directly. You get 30 tools spanning messaging, moderation, inline keyboards, and rich media, plus 7 resources for chat history and bot state, and real-time event streaming so the AI sees new messages without polling. The middleware sits alongside your existing handlers, meaning you add five lines to your bot code and suddenly Claude can send photos, ban users, create button menus, and react to callback queries. Built-in rate limiting prevents Telegram 429s, audit logs track every tool call, and permission levels let you lock the AI to read-only or full admin. Reach for this when you want an AI agent to manage a Telegram community or automate moderation without rewriting your bot from scratch.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →

aiogram-mcp

CI Python 3.10+ License: MIT PyPI version MCP Registry

Connect your Telegram bot to AI agents via the Model Context Protocol.

aiogram-mcp turns any aiogram bot into an MCP server. AI clients like Claude Desktop can then send messages, read chat history, build interactive menus, and react to events in real time — all through your existing bot, without rewriting a single handler.

Why aiogram-mcp?

Most Telegram MCP servers are thin wrappers with 3-5 tools. aiogram-mcp goes further:

  • 30 tools — messaging, rich media, moderation, interactive keyboards, event subscriptions, broadcasting
  • 7 resources — bot info, config, chat lists, message history, event queue, file metadata, audit log
  • 3 prompts — ready-made moderation, announcement, and user report workflows
  • Structured output — every tool returns typed Pydantic models with outputSchema for programmatic parsing
  • Real-time events — the bot pushes Telegram events to AI clients via MCP notifications (no polling)
  • Interactive messages — AI agents create inline keyboard menus, handle button presses, edit messages
  • Rate limiting — built-in token bucket prevents Telegram 429 errors
  • Permission levels — restrict AI agents to read-only, messaging, moderation, or full admin access
  • Audit logging — track every tool invocation with timestamps and arguments
  • Zero rewrite — add 5 lines to your existing bot, keep all your handlers

How It Works

Telegram users                Your aiogram bot              AI agent (Claude Desktop)
      |                             |                              |
      |  send messages, tap buttons |                              |
      | --------------------------> |                              |
      |                             |  MCP server (stdio or SSE)   |
      |                             | <------------------------->  |
      |                             |  tools / resources / events  |
      |                             |                              |
      |  bot replies, shows menus   |   send_message, edit, ban    |
      | <-------------------------- | <--------------------------- |

The bot runs normally for Telegram users. The MCP server runs alongside it, giving AI agents access to the same bot via tools and resources.

Installation

pip install aiogram-mcp

Requires Python 3.10+ and aiogram 3.20+.

Quickstart

1. Add aiogram-mcp to your bot

import asyncio
from aiogram import Bot, Dispatcher
from aiogram_mcp import AiogramMCP, EventManager, MCPMiddleware

bot = Bot(token="YOUR_BOT_TOKEN")
dp = Dispatcher()

# Middleware tracks chats, users, message history, and events
event_manager = EventManager()
middleware = MCPMiddleware(event_manager=event_manager)
dp.message.middleware(middleware)
dp.callback_query.middleware(middleware)  # for interactive buttons

# Register your normal handlers here
# @dp.message(...)
# async def my_handler(message): ...

# Create the MCP server
mcp = AiogramMCP(
    bot=bot,
    dp=dp,
    name="my-bot",
    middleware=middleware,
    event_manager=event_manager,
    allowed_chat_ids=[123456789],  # optional: restrict which chats AI can access
)

async def main():
    await mcp.run_alongside_bot(transport="stdio")

asyncio.run(main())

2. Connect Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "my-telegram-bot": {
      "command": "python",
      "args": ["path/to/your/bot.py"],
      "env": {
        "BOT_TOKEN": "123456:ABC-DEF..."
      }
    }
  }
}

Now Claude can send messages, read history, create button menus, and react to events in your Telegram bot.

Built-in Tools

Messaging (5 tools)

ToolDescription
send_messageSend text with HTML/Markdown formatting
send_photoSend a photo by URL with optional caption
forward_messageForward a message between chats
delete_messageDelete a message
pin_messagePin a message in a chat

Interactive Messages (3 tools)

ToolDescription
send_interactive_messageSend a message with inline keyboard buttons (callback or URL)
edit_messageEdit text and/or keyboard of an existing message
answer_callback_queryRespond to a button press with a toast or alert

Users (3 tools)

ToolDescription
get_bot_infoGet bot metadata (username, capabilities)
get_chat_member_infoGet a user's role and profile in a chat
get_user_profile_photosGet a user's profile photos

Chats (6 tools)

ToolDescription
get_chat_infoGet chat metadata (title, type, description)
get_chat_members_countGet number of members in a chat
ban_userBan a user (permanent or temporary)
unban_userUnban a user
set_chat_titleChange the chat title
set_chat_descriptionChange the chat description

Rich Media (10 tools)

ToolDescription
send_documentSend a file/document by URL with optional caption
send_voiceSend a voice message by URL
send_videoSend a video by URL with optional caption
send_animationSend a GIF/animation by URL
send_audioSend audio/music by URL with performer and title
send_stickerSend a sticker by file_id or URL
send_video_noteSend a round video note by URL
send_contactSend a contact with phone number and name
send_locationSend a geolocation pin
send_pollCreate a poll with multiple options

Events (2 tools)

ToolDescription
subscribe_eventsSubscribe to real-time events with chat/type filters
unsubscribe_eventsRemove a subscription

Broadcast (1 tool, opt-in)

ToolDescription
broadcastSend a message to multiple chats (requires enable_broadcast=True)

MCP Resources

Read-only data that AI agents can access without calling tools:

URIDescription
telegram://bot/infoBot username, ID, and capabilities
telegram://configServer name and allowed chat IDs
telegram://chatsList of active chats with metadata
telegram://chats/{chat_id}/historyLast 50 messages in a chat
telegram://events/queueEvent queue with auto-incrementing IDs
telegram://files/{file_id}File metadata (size, path, unique ID)
telegram://audit/logAudit log of tool invocations (opt-in)

MCP Prompts

Pre-built workflows that give AI agents structured context:

PromptArgumentsWhat it does
moderation_promptchat_id, user_id, reasonFetches user info + message history, suggests warn/mute/ban
announcement_prompttopic, audience?, tone?Drafts a formatted Telegram announcement
user_report_promptchat_id, user_idCompiles a full user activity report

Real-time Event Streaming

AI agents don't need to poll. The bot pushes events automatically:

Telegram message arrives
    → MCPMiddleware captures it
        → EventManager stores it (type: "message", "command", or "callback_query")
            → MCP notification sent to subscribed clients
                → AI agent reads telegram://events/queue

The AI agent calls subscribe_events once, then receives push notifications whenever new events match its filters.

Interactive Messages

AI agents can build full interactive UIs in Telegram — menus, confirmations, multi-step wizards:

The AI agent sends a message with buttons:

┌─────────────────────────┐
│ Confirm deployment?     │
│                         │
│  [✅ Yes]  [❌ No]      │
│  [📖 View docs]        │
└─────────────────────────┘

User taps a button → event appears in the queue → AI agent reacts:

┌─────────────────────────┐
│ ✅ Deployed!            │
│                         │
│  [📋 View logs]        │
└─────────────────────────┘

The bot needs dp.callback_query.middleware(middleware) to capture button presses.

Safety Controls

mcp = AiogramMCP(
    bot=bot,
    dp=dp,
    allowed_chat_ids=[123456789, -1001234567890],  # restrict AI access
    enable_broadcast=True,            # opt-in for broadcast tool
    max_broadcast_recipients=500,     # safety limit
)
  • allowed_chat_ids — AI can only interact with listed chats. Default: all chats.
  • enable_broadcast — broadcast tool is disabled by default as a safety measure.
  • max_broadcast_recipients — caps the number of chats in a single broadcast.

Advanced Configuration

Rate Limiting

mcp = AiogramMCP(
    bot=bot, dp=dp,
    rate_limit=30,  # requests/sec (default), 0 to disable
)

Built-in token bucket rate limiter prevents Telegram 429 errors. All outgoing API calls are automatically paced.

Permission Levels

mcp = AiogramMCP(
    bot=bot, dp=dp,
    permission_level="messaging",  # read + messaging tools only
)
LevelAccess
readBot info, chat info, user profiles
messagingRead + send messages, photos, media, interactive messages
moderationMessaging + delete, pin, ban, unban, chat settings
adminFull access including broadcast and event subscriptions

Audit Log

mcp = AiogramMCP(
    bot=bot, dp=dp,
    enable_audit=True,
    audit_log_size=1000,
)

Every tool invocation is logged. Access via telegram://audit/log resource.

Examples

ExampleTransportFeatures
basic_bot.pystdioFull setup with middleware, events, and callback tracking
incident_alert_bot.pySSEBroadcast-enabled ops bot for incident notifications

Development

git clone https://github.com/Py2755/aiogram-mcp.git
cd aiogram-mcp
pip install -e ".[dev]"

pytest -v          # ~228 tests
ruff check aiogram_mcp tests examples
mypy aiogram_mcp   # strict mode

License

MIT. See LICENSE.

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →

Configuration

BOT_TOKEN*secret

Telegram Bot API token from @BotFather

Categories
Communication & MessagingMedia & Entertainment
Registryactive
Packageaiogram-mcp
TransportSTDIO
AuthRequired
UpdatedMar 14, 2026
View on GitHub

Related Communication & Messaging MCP Servers

View all →
Microsoft 365 Teams

io.github.mindstone/mcp-server-microsoft-teams

Microsoft 365 Teams via Graph: list chats, read/send messages, list teams/channels, presence.
8
Outlook Email

com.mintmcp/outlook-email

A MCP server for Outlook email that lets you search, read, and draft emails and replies.
8
Resend Email MCP

helbertparanhos/resend-email-mcp

Complete Resend email MCP: full API coverage + debug layer (deliverability, DNS, bounces).
Email Mcp

marlinjai/email-mcp

Unified email MCP server for Gmail, Outlook, iCloud, and IMAP with batch operations
13
Email (IMAP/SMTP)

io.github.mindstone/mcp-server-email-imap

Email IMAP/SMTP MCP server: iCloud, Gmail, Yahoo, Outlook, and custom IMAP providers
8
HTML Email Playbook

io.github.osamahassouna/email-playbook-mcp

Teaches AI to write HTML email that renders in Outlook, Gmail, and Apple Mail. 19 rules, 6 comps.