Skip to main content
Glama

🤖 kurigram-mcp

Debugge Telegram-Bots mit KI – ein lokaler MCP-Server, der deine Telegram-Benutzersitzung über MTProto steuert.

PyPI Version Python Versions License

English · 简体中文


✨ Funktionen

🔌 Standard-MCP

Streamable-HTTP-Transport, Protokoll 2026-07-28, abwärtskompatibel mit Clients ab 2025-11-25 (Claude Code, Codex, DSH)

🧪 Bot-Debugging

/start senden, Antwortlatenz messen, auf Ereignisse warten, Update-Streams leeren

🛠️ Erweitertes Debugging

Beliebige MTProto-Funktionen per raw_invoke aufrufen, mit integrierter API-Erkennung

🔒 Chat-Whitelist

Pro-Client-Steuerung über Request-Header, standardmäßig fail-closed

Zustandslos

Serverneustarts unterbrechen verbundene Clients nicht

🚀 Nullkonfiguration

uv tool install, interaktiver Einrichtungsassistent, Login mit einem Befehl

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

🚀 Schnellstart

# 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

Hole API_ID / API_HASH von my.telegram.org/apps. Der Login muss von dir durchgeführt werden — die Anmeldedaten verlassen niemals deinen Computer.

🧰 Tools (22)

Gruppe

Tools

🧾 Sitzung

whoami, mcp_get_server_info

📤 Senden

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

📥 Lesen

get_chat, get_chat_history, get_messages, get_dialogs, search_messages, download_media

⏱️ Ereignisse

wait_for_update, drain_updates

🔬 Erweitert

raw_invoke, list_raw_methods, get_raw_method_info

Fehler folgen einem stabilen [CODE] message-Format: NOT_WHITELISTED · FLOOD_WAIT {seconds} · SESSION_INVALID · RPC · NETWORK · INTERNAL.

🔌 Client-Einrichtung

# 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'

🔐 Chat-Whitelist

  1. Request-Header X-Kurigram-Allowed-Chats — Pro-Client-Deklaration (durch Komma getrennt: numerische Chat-IDs, @username, me).

  2. Konfiguration allowed_chat_ids — Fallback, wenn der Header fehlt.

Fail-closed: Chats außerhalb der Whitelist werden mit [NOT_WHITELISTED] abgelehnt; get_dialogs gibt nur freigegebene Chats zurück.

⚙️ Konfiguration

Die gesamte Konfiguration befindet sich in einer Datei: ~/.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

📁 Daten & Dateien

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

🧑💻 Entwicklung

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

📄 Lizenz

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