Skip to main content
Glama

🤖 kurigram-mcp

Отлаживайте Telegram-ботов с помощью ИИ — локальный MCP-сервер, который управляет вашей пользовательской сессией Telegram через MTProto.

PyPI Version Python Versions License

English · 简体中文


✨ Возможности

🔌 Стандартный MCP

Транспорт Streamable HTTP, протокол 2026-07-28, обратная совместимость с клиентами 2025-11-25 (Claude Code, Codex, DSH)

🧪 Отладка ботов

Отправка /start, измерение задержки ответа, ожидание событий, очистка потоков обновлений

🛠️ Глубокая отладка

raw_invoke любой функции MTProto со встроенным обнаружением API

🔒 Белый список чатов

Контроль для каждого клиента через заголовок запроса, по умолчанию закрыт (fail-closed)

Без состояния

Перезапуск сервера не разрывает подключённых клиентов

🚀 Без конфигурации

uv tool install, интерактивный мастер настройки, вход одной командой

Related MCP server: io.github.daedalus/mcp-telegram-bot

🚀 Быстрый старт

# 1. Install (provides `kurigram-mcp` and the `km` alias)
uv tool install kurigram-mcp

# 2. One-time setup: API_ID / API_HASH / whitelist / proxy / port
#    AUTH_TOKEN is auto-generated if left blank (Bearer auth on by default)
km setup

# 3. Log in (skip if you chose to during setup): phone → code → 2FA
km auth

# 4. Start the server
km run     # default: http://127.0.0.1:8765/mcp

Получите API_ID / API_HASH на my.telegram.org/apps. Вход должны выполнить вы — учётные данные никогда не покидают вашу машину.

🧰 Инструменты (22)

Группа

Инструменты

🧾 Сессия

whoami, mcp_get_server_info

📤 Отправка

send_message, send_photo, send_document, edit_message, delete_message, send_chat_action, start_bot, click_inline_button, send_reaction

📥 Чтение

get_chat, get_chat_history, get_messages, get_dialogs, search_messages, download_media

⏱️ События

wait_for_update, drain_updates

🔬 Глубокое

raw_invoke, list_raw_methods, get_raw_method_info

Ошибки следуют стабильному формату [CODE] message: NOT_WHITELISTED · FLOOD_WAIT {seconds} · SESSION_INVALID · RPC · NETWORK · INTERNAL.

🔌 Настройка клиента

# Claude Code
claude mcp add --transport http kurigram-mcp http://127.0.0.1:8765/mcp \
  --header "Authorization: Bearer <AUTH_TOKEN>" \
  --header "X-Kurigram-Allowed-Chats: 6540476263"   # optional per-client whitelist
# Codex (~/.codex/config.toml)
[mcp_servers.kurigram-mcp]
url = "http://127.0.0.1:8765/mcp"
http_headers = { "Authorization" = "Bearer <AUTH_TOKEN>", "X-Kurigram-Allowed-Chats" = "6540476263" }
# DSH — cordis.yml plugin row (@deepseek-ai/dsh-mcp-client)
- id: mcp-kurigram
  name: '@deepseek-ai/dsh-mcp-client'
  config:
    serverName: kurigram
    transport: streamable-http
    url: http://127.0.0.1:8765/mcp
    headers:
      Authorization: !!js '`Bearer ${process.env.KURIGRAM_TOKEN}`'
      X-Kurigram-Allowed-Chats: '6540476263'

🔐 Белый список чатов

  1. Заголовок запроса X-Kurigram-Allowed-Chats — объявление для каждого клиента (через запятую: числовые id чатов, @username, me).

  2. Конфиг allowed_chat_ids — запасной вариант, когда заголовок отсутствует.

Закрыт по умолчанию: чаты вне белого списка отклоняются с [NOT_WHITELISTED]; get_dialogs возвращает только чаты из белого списка.

⚙️ Конфигурация

Вся конфигурация хранится в одном файле: ~/.kurigram-mcp/config.yaml.

api_id: 123456
api_hash: your_hash
allowed_chat_ids: "123456789,me"   # fallback whitelist
host: 127.0.0.1
port: 8765
auth_token: auto_generated_or_yours # Bearer auth
proxy: ""                           # optional, e.g. socks5://127.0.0.1:1080

📁 Данные и файлы

~/.kurigram-mcp/
├── config.yaml         # setup-generated config (chmod 600)
├── u_{API_ID}.session  # Telegram session (bound to API_ID, persists)
└── downloads/          # download_media output

🧑💻 Разработка

uv sync
uv run pytest
uv run ruff check src tests scripts

# Configure like a regular user (shared ~/.kurigram-mcp):
uv run kurigram-mcp setup
# Or isolate a dev environment (never touches your real config):
# KURIGRAM_MCP_HOME=$PWD/.dev-home uv run kurigram-mcp setup
# KURIGRAM_MCP_HOME=$PWD/.dev-home uv run kurigram-mcp run

📄 Лицензия

MIT

A
license - permissive license
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    D
    maintenance
    MCP server that connects AI assistants to your real Telegram account via User API (MTProto). Features default-deny ACL with per-chat permissions, message search, file sending, forwarding, media downloads, and rate limiting.
    2
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    MCP server that exposes a Telegram bot, enabling sending messages and retrieving updates through natural language.
    3
    1
    MIT
  • A
    license
    -
    quality
    B
    maintenance
    An MCP server that connects to Telegram as your real user account and exposes read-only tools to read and search messages, list chats and folders, inspect group info, and download media.
    9
    MIT
  • A
    license
    -
    quality
    A
    maintenance
    A safe-by-default MCP server for real Telegram accounts powered by TDLib, enabling AI agents to read and act on your account with read-only mode and human approval for destructive actions.
    1
    Apache 2.0

View all related MCP servers

Related MCP Connectors

  • Telegram bridge for your MCP-compatible agent. Bidirectional, no LLM in our stack.

  • Multi-tenant Telegram gateway for AI agents — HTTP+stdio, 8 tools, MTProto User API

  • MCP server for Gainium — manage trading bots, deals, and balances via AI assistants

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/z-mio/kurigram-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server