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
- -securityFlicense-qualityA versatile Model Context Protocol server that enables AI assistants to manage calendars, track tasks, handle emails, search the web, and control smart home devices.Last updated -14Python
- AsecurityAlicenseAqualityA Model Context Protocol server that allows AI assistants to interact with the VRChat API, enabling retrieval of user information, friends lists, and other VRChat data through a standardized interface.Last updated -7441TypeScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI assistants to interact with iTerm2 terminals, allowing creation and management of terminal sessions, command execution, and reading terminal output.Last updated -56827JavaScriptISC License
- -securityFlicense-qualityA Model Context Protocol server implementation that enables AI assistants to interact with RetellAI's voice services for managing calls, agents, phone numbers, and voice options.Last updated -70913TypeScript