Telegram MCP-Server
Ein MCP-Server, der KI-Assistenten (wie Claude) die Interaktion mit Ihrem Telegram-Konto über die Benutzer-Client-API (nicht die Bot-API) ermöglicht. Erstellt mit @mtproto/core
und dem FastMCP -Framework.
Merkmale
Werkzeuge
listChannels
- Listet basierend auf dem Cache des Servers die verfügbaren Telegram-Kanäle/Chats auf, auf die das Konto zugreifen kann.
- Parameter:
limit
(Zahl, optional): Maximale Anzahl der zurückzugebenden Kanäle (Standard: 50).
- Ausgabe: Eine Liste von Kanälen/Chats mit ihrer ID, ihrem Titel, ihrem Typ und ihrem Zugriffs-Hash (falls zutreffend).
searchChannels
- Durchsucht die zwischengespeicherten Kanäle/Chats nach Schlüsselwörtern in ihren Namen.
- Parameter:
keywords
(Zeichenfolge): Schlüsselwörter, nach denen in Kanalnamen gesucht werden soll.limit
(Zahl, optional): Maximale Anzahl der zurückzugebenden Ergebnisse (Standard: 100).
- Ausgabe: Eine Liste passender Kanäle/Chats.
getChannelMessages
- Ruft aktuelle Nachrichten aus einem bestimmten Kanal/Chat anhand seiner ID ab.
- Parameter:
channelId
(Zahl): Die numerische ID des Kanals/Chats (erhalten auslistChannels
odersearchChannels
).limit
(Zahl, optional): Maximale Anzahl der zurückzugebenden Nachrichten (Standard: 100).filterPattern
(Zeichenfolge, optional): Ein JavaScript-kompatibler regulärer Ausdruck zum Filtern von Nachrichten nach ihrem Textinhalt.
- Ausgabe: Eine Liste von Nachrichten mit ID, Datum, Text und Absender-ID.
Voraussetzungen
- Node.js: Version 18 oder höher empfohlen.
- Telegram-Konto:
- Sie benötigen ein aktives Telegram-Konto.
- Die Zwei-Schritt-Verifizierung (2FA) muss für Ihr Konto aktiviert sein (Einstellungen → Datenschutz und Sicherheit → Zwei-Schritt-Verifizierung).
- Telegram-API-Anmeldeinformationen:
- Erhalten Sie eine
api_id
undapi_hash
, indem Sie unter https://core.telegram.org/api/obtaining_api_id eine neue Anwendung erstellen.
- Erhalten Sie eine
Installation
- Klonen Sie dieses Repository:
- Installieren Sie Abhängigkeiten:
Konfiguration
Es müssen zwei separate Konfigurationen eingerichtet werden:
- MCP-Serverkonfiguration:Konfigurieren Sie den Telegram MCP-Server mithilfe von Umgebungsvariablen (in einer
.env
Datei oder direkt in Ihrer Umgebung):Ersetzen Sie die Platzhalterwerte durch Ihre tatsächlichen Anmeldeinformationen. - MCP-Client-Konfiguration:Konfigurieren Sie Client-Software (Claude Desktop, Cursor usw.) für die Verbindung mit dem MCP-Server, indem Sie ihre Konfigurationsdateien ändern:Für Claude Desktop befindet sich die Konfigurationsdatei unter:
- Unter macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Unter Windows:
%APPDATA%/Claude/claude_desktop_config.json
Wichtig: Starten Sie Ihren MCP-Client neu, um die Änderungen zu übernehmen.
- Unter macOS:
Ausführen des Servers
- Erstanmeldung (Wichtiger erster Schritt): Wenn Sie den Server zum ersten Mal starten (oder wenn Ihre Sitzung abläuft/ungültig ist), muss er sich bei Telegram authentifizieren. Führen Sie den Server direkt von Ihrem Terminal aus aus:
- Der Server verwendet die Anmeldeinformationen aus Ihrer
.env
Datei. - Sie werden im Terminal aufgefordert, den an Ihr Telegram-Konto gesendeten Anmeldecode und gegebenenfalls Ihr 2FA-Passwort einzugeben.
- Nach erfolgreicher Anmeldung wird eine Sitzungsdatei (
./data/session.json
) erstellt. Diese Datei ermöglicht dem Server künftig die automatische Anmeldung ohne Eingabe von Codes/Passwörtern. - Der Server versucht außerdem, einen Cache Ihrer Chats (
./data/dialog_cache.json
) zu erstellen oder zu laden. Dies kann beim ersten Start, insbesondere bei vielen Chats, einige Zeit dauern. Nachfolgende Starts sind schneller, wenn der Cache vorhanden ist.
- Der Server verwendet die Anmeldeinformationen aus Ihrer
- Normalbetrieb: Sie müssen den Server manuell starten, indem Sie
npm start
im Projektverzeichnis ausführen.Sobald der Server läuft, stellt Ihr MCP-Client (z. B. Claude Desktop) über die in seiner Konfiguration angegebene URL (standardmäßighttp://localhost:8080/sse
) eine Verbindung zu ihm her.
Fehlerbehebung
- Anmeldeaufforderungen: Wenn der Server beim Start durch den MCP-Client weiterhin Anmeldecodes/Passwörter anfordert, stellen Sie sicher, dass die Datei
data/session.json
vorhanden und gültig ist. Möglicherweise müssen Sienpm start
einmal manuell ausführen, um die Sitzung zu aktualisieren. Überprüfen Sie außerdem, ob die Dateiberechtigungen dem Benutzer, der den MCP-Client ausführt, das Lesen/Schreiben desdata
erlauben. - Cache-Probleme: Wenn Kanäle veraltet oder fehlend erscheinen, können Sie
./data/dialog_cache.json
löschen und den Server neu starten (npm start
manuell ausführen), um eine vollständige Aktualisierung zu erzwingen. Dies kann einige Zeit dauern. - Modul nicht gefunden: Führen Sie
npm install
unbedingt im Projektverzeichnis aus. Wenn der MCP-Client den Server startet, stellen Sie sicher, dass das Arbeitsverzeichnis korrekt eingestellt ist, oder verwenden Sie absolute Pfade. - Andere Probleme: Wenn Sie auf andere Probleme stoßen, können Sie gerne ein Problem in diesem Server-Repo öffnen.
Telegram-Client-Bibliothek
Dieses Repository enthält auch die zugrunde liegende Bibliothek telegram-client.js
die vom MCP-Server verwendet wird. Details zur direkten Verwendung der Bibliothek (z. B. für benutzerdefinierte Skripte) finden Sie in LIBRARY.md .
Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der Datei LICENSE .
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Ein Model Context Protocol-Server, der KI-Assistenten die Interaktion mit Telegram ermöglicht, indem er ihnen erlaubt, Kanäle zu suchen, verfügbare Kanäle aufzulisten, Nachrichten abzurufen und Nachrichten nach Regex-Mustern zu filtern.
- Merkmale
- Voraussetzungen
- Installation
- Konfiguration
- Ausführen des Servers
- Fehlerbehebung
- Telegram-Client-Bibliothek
- Lizenz
Related Resources
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server implementation that enables AI assistants to interact with Slack workspaces, allowing them to browse channels, send messages, reply to threads, add reactions, and retrieve user information.Last updated -18JavaScriptApache 2.0
- AsecurityFlicenseAqualityA Model Context Protocol server that enables AI assistants to interact with Bluesky/ATProtocol, providing authentication, timeline access, post creation, and social features like likes and follows.Last updated -1810TypeScript
- AsecurityAlicenseAqualityA Discord Model Context Protocol server that enables AI assistants to interact with Discord, providing functionality for sending messages, managing channels, handling forum posts, and working with reactions.Last updated -1522TypeScriptMIT License
- AsecurityAlicenseAqualityA server implementing Model Context Protocol that enables AI assistants to interact with Slack API through a standardized interface, providing tools for messaging, channel management, user information retrieval, and more.Last updated -942JavaScriptApache 2.0