Feishu/Lark OpenAPI MCP

Official
by larksuite

Integrations

  • Provides a Node.js-based MCP server that encapsulates Feishu/Lark Open Platform API interfaces, allowing AI assistants to directly call these interfaces for various automation scenarios.

Feishu/Lark OpenAPI MCP

Englisch |中文

Abruf der Entwicklerdokumentation MCP | Offizielles Dokument

⚠️ Hinweis zur Beta-Version : Dieses Tool befindet sich derzeit in der Beta-Phase. Funktionen und APIs können sich ändern. Bleiben Sie daher über die neuesten Versionen auf dem Laufenden.

Dies ist das offizielle OpenAPI MCP-Tool (Model Context Protocol) von Feishu/Lark. Es ermöglicht Benutzern eine schnelle Verbindung zur Feishu/Lark-Plattform und ermöglicht eine effiziente Zusammenarbeit zwischen KI-Agenten und Feishu/Lark. Das Tool kapselt die API-Schnittstellen der Feishu/Lark Open Platform als MCP-Tools. KI-Assistenten können diese Schnittstellen direkt aufrufen und verschiedene Automatisierungsszenarien wie Dokumentenverarbeitung, Konversationsmanagement, Kalenderplanung und mehr implementieren.

Merkmale

  • Komplettes Feishu/Lark API-Toolkit: Kapselt fast alle Feishu/Lark API-Schnittstellen, einschließlich Nachrichtenverwaltung, Gruppenverwaltung, Dokumentvorgänge, Kalenderereignisse, Bitable und andere zentrale Funktionsbereiche.
  • Unterstützung für doppelte Authentifizierung:
    • Unterstützt App Access Token-Authentifizierung
    • Unterstützt die Benutzerzugriffstoken-Authentifizierung
  • Flexible Kommunikationsprotokolle:
    • Unterstützt den Standard-Eingabe-/Ausgabe-Stream-Modus (stdio), geeignet für die Integration mit KI-Tools wie Trae/Cursor/Claude
    • Unterstützt den Server-Sent Events (SSE)-Modus und bietet HTTP-basierte Schnittstellen
  • Unterstützt mehrere Konfigurationsmethoden und passt sich an unterschiedliche Nutzungsszenarien an

Werkzeugliste

Eine vollständige Liste aller unterstützten Feishu/Lark-Tools finden Sie in tools.md , wo die Tools nach Projekt und Version mit Beschreibungen kategorisiert sind.

Vorbereitung

Erstellen einer Feishu/Lark-Anwendung

Bevor Sie das Lark-MCP-Tool verwenden, müssen Sie eine Feishu/Lark-Anwendung erstellen:

  1. Besuchen Sie die Feishu Open Platform oder Lark Open Platform und melden Sie sich an
  2. Klicken Sie auf „Konsole“ und erstellen Sie eine neue Anwendung
  3. Erhalten Sie die App-ID und das App-Geheimnis, die für die API-Authentifizierung verwendet werden
  4. Fügen Sie die erforderlichen Berechtigungen für Ihre Anwendung basierend auf Ihrem Nutzungsszenario hinzu
  5. Wenn Sie als Benutzer APIs aufrufen müssen, richten Sie OAuth 2.0-Umleitungs-URLs ein und erhalten Sie Benutzerzugriffstoken

Ausführliche Richtlinien zur Anwendungserstellung und -konfiguration finden Sie in der Feishu Open Platform-Dokumentation – Erstellen einer Anwendung oder in der Lark Open Platform-Dokumentation .

Installieren von Node.js

Bevor Sie das Tool Lark-MCP verwenden, müssen Sie die Node.js-Umgebung installieren.

Installieren von Node.js unter macOS
  1. Verwendung von Homebrew (empfohlen) :
    brew install node
  2. Verwenden des offiziellen Installationsprogramms :
    • Besuchen Sie die Node.js-Website
    • Laden Sie die LTS-Version herunter und installieren Sie sie
    • Überprüfen Sie nach der Installation im Terminal:
      node -v npm -v
Installieren von Node.js unter Windows
  1. Verwenden des offiziellen Installationsprogramms :
    • Besuchen Sie die Node.js-Website
    • Laden Sie das Windows-Installationsprogramm (MSI-Datei) herunter und führen Sie es aus.
    • Folgen Sie dem Installationsassistenten, um die Installation abzuschließen
    • Überprüfen Sie nach der Installation in der Eingabeaufforderung:
      node -v npm -v
  2. Verwenden von nvm-windows :
    • nvm-windows herunterladen
    • Installieren Sie nvm-windows
    • Verwenden Sie nvm, um Node.js zu installieren:
      nvm install latest nvm use <version_number>

Installation

Installieren Sie das Tool Lark-MCP global:

npm install -g @larksuiteoapi/lark-mcp

Benutzerhandbuch

Verwendung mit Trae/Cursor/Claude

Um die Feishu/Lark-Funktionalität in KI-Tools wie Trae,Cursor oder Claude zu integrieren, fügen Sie Ihrer Konfigurationsdatei Folgendes hinzu:

{ "mcpServers": { "lark-mcp": { "command": "npx", "args": [ "-y", "@larksuiteoapi/lark-mcp", "mcp", "-a", "<your_app_id>", "-s", "<your_app_secret>" ] } } }

Um mit der Benutzeridentität auf APIs zuzugreifen, können Sie ein Benutzerzugriffstoken hinzufügen:

{ "mcpServers": { "lark-mcp": { "command": "npx", "args": [ "-y", "@larksuiteoapi/lark-mcp", "mcp", "-a", "<your_app_id>", "-s", "<your_app_secret>", "-u", "<your_user_token>" ] } } }

Benutzerdefinierte API-Konfiguration

Standardmäßig aktiviert der MCP-Dienst allgemeine APIs. Um andere Tools oder nur bestimmte APIs oder Voreinstellungen zu aktivieren, können Sie diese mit dem Parameter -t (durch Kommas getrennt) angeben:

lark-mcp mcp -a <your_app_id> -s <your_app_secret> -t im.v1.message.create,im.v1.message.list,im.v1.chat.create,preset.calendar.default
Voreingestellte Werkzeugsammlungen im Detail

In der folgenden Tabelle sind die einzelnen API-Tools und ihre Einbindung in die verschiedenen Vorgabesammlungen detailliert aufgeführt. So können Sie die passende Vorgabe für Ihre Anforderungen auswählen:

WerkzeugnameFunktionsbeschreibungpreset.default (Standard)Vorgabe.im.defaultVorgabe.Basis.StandardVorgabe.Basis.Batchvoreingestellt.doc.defaultvoreingestellt.task.defaultVorgabe.Kalender.Standard
im.v1.chat.createErstellen eines Gruppenchats
im.v1.chat.listGruppenchatliste abrufen
im.v1.chatMembers.getGruppenmitglieder abrufen
im.v1.chatMembers.createGruppenmitglieder hinzufügen
im.v1.message.createNachrichten senden
im.v1.message.listNachrichtenliste abrufen
bitable.v1.app.createBasis erstellen
bitable.v1.appTable.createBasisdatentabelle erstellen
bitable.v1.appTable.listHolen Sie sich die Basisdatentabellenliste
bitable.v1.appTableField.listHolen Sie sich die Feldliste der Basisdatentabelle
bitable.v1.appTableRecord.searchSuchen Sie nach Datensätzen in der Basisdatentabelle
bitable.v1.appTableRecord.createErstellen von Basisdatentabellendatensätzen
bitable.v1.appTableRecord.batchCreateErstellen Sie im Stapelbetrieb Datensätze aus der Basisdatentabelle
bitable.v1.appTableRecord.updateAktualisieren der Datensätze der Basisdatentabelle
bitable.v1.appTableRecord.batchUpdateStapelaktualisierung der Datensätze der Basisdatentabelle
docx.v1.document.rawContentDokumentinhalte abrufen
docx.builtin.importDokumente importieren
docx.builtin.searchDokumente suchen
drive.v1.permissionMember.createBerechtigungen für Mitarbeiter hinzufügen
wiki.v2.space.getNodeWiki-Knoten abrufen
wiki.v1.node.searchWiki-Knoten durchsuchen
contact.v3.user.batchGetIdBatch-Abruf von Benutzer-IDs
task.v2.task.createAufgabe erstellen
task.v2.task.patchAufgabe ändern
task.v2.task.addMembersAufgabenmitglieder hinzufügen
task.v2.task.addRemindersAufgabenerinnerungen hinzufügen
calendar.v4.calendarEvent.createKalenderereignis erstellen
calendar.v4.calendarEvent.patchKalenderereignis ändern
calendar.v4.calendarEvent.getKalenderereignis abrufen
calendar.v4.freebusy.listFrei/Gebucht-Status abfragen
calendar.v4.calendar.primaryPrimärkalender abrufen

Hinweis : In der Tabelle zeigt „✓“ an, dass das Werkzeug in dieser Voreinstellung enthalten ist. Mit -t preset.xxx werden nur die Werkzeuge aktiviert, die in der entsprechenden Spalte mit „✓“ gekennzeichnet sind.

Erweiterte Konfiguration

Befehlszeilenparameter

Das lark-mcp mcp bietet verschiedene Befehlszeilenparameter für eine flexible MCP-Dienstkonfiguration:

ParameterKurzBeschreibungBeispiel
--app-id-aApp-ID der Feishu/Lark-Anwendung-a cli_xxxx
--app-secret-sApp-Geheimnis der Feishu/Lark-Anwendung-s xxxx
--domain-dFeishu/Lark API-Domäne, Standard ist https://open.feishu.cn-d https://open.larksuite.com
--tools-tListe der zu aktivierenden API-Tools, durch Kommas getrennt-t im.v1.message.create,im.v1.chat.create
--tool-name-case-cWerkzeugnamenformat, Optionen sind Schlange, Kamel, Punkt oder Kebab, Standard ist Schlange-c camel
--language-lSprache der Tools, Optionen sind zh oder en, Standard ist en-l zh
--user-access-token-uBenutzerzugriffstoken zum Aufrufen von APIs als Benutzer-u u-xxxx
--token-modeAPI-Token-Typ, Optionen sind „auto“, „tenant_access_token“ oder „user_access_token“, Standard ist „auto“--token-mode user_access_token
--mode-mTransportmodus, Optionen sind stdio oder sse, Standard ist stdio-m sse
--hostListening-Host im SSE-Modus, Standard ist localhost--host 0.0.0.0
--port-pAbhörport im SSE-Modus, Standard ist 3000-p 3000
--configKonfigurationsdateipfad, unterstützt JSON-Format--config ./config.json
--version-VVersionsnummer anzeigen-V
--help-hHilfeinformationen anzeigen-h
Beispiele für die Parameterverwendung
  1. Grundlegende Verwendung (unter Verwendung der Anwendungsidentität):
    lark-mcp mcp -a cli_xxxx -s yyyyy
  2. Verwenden der Benutzeridentität :
    lark-mcp mcp -a cli_xxxx -s yyyyy -u u-zzzz

    Hinweis : Benutzerzugriffstoken können über den Autorisierungsprozess der Feishu Open Platform oder der Lark Open Platform oder über die API-Debugging-Konsole abgerufen werden. Nach Verwendung eines Benutzerzugriffstokens werden API-Aufrufe mit der Identität dieses Benutzers ausgeführt.

  3. Festlegen eines bestimmten Token-Modus :
    lark-mcp mcp -a cli_xxxx -s yyyyy --token-mode user_access_token

    Hinweis : Mit dieser Option können Sie explizit angeben, welcher Token-Typ beim Aufruf von APIs verwendet werden soll. Der auto Modus (Standard) wird vom LLM beim Aufruf der API festgelegt.

  4. Angeben von Lark- oder KA-Domänen :
    # Lark international version lark-mcp mcp -a <your_app_id> -s <your_app_secret> -d https://open.larksuite.com # Custom domain (KA domain) lark-mcp mcp -a <your_app_id> -s <your_app_secret> -d https://open.your-ka-domain.com
  5. Aktivieren nur bestimmter API-Tools oder anderer API-Tools :
    lark-mcp mcp -a cli_xxxx -s yyyyy -t im.v1.chat.create,im.v1.message.create

    Hinweis : Der Parameter -t unterstützt die folgenden voreingestellten Werkzeugsammlungen:

    • preset.default – Standard-Werkzeugsatz mit allen voreingestellten Werkzeugen
    • preset.im.default – Tools für Instant Messaging, wie Gruppenverwaltung, Nachrichtenversand usw.
    • preset.bitable.default – Bitable-bezogene Tools, wie Tabellenerstellung, Datensatzverwaltung usw.
    • preset.bitable.batch – Bitable-Batchoperationstools, einschließlich Batch-Erstellungs- und Aktualisierungsfunktionen für Datensätze
    • preset.doc.default – Dokumentbezogene Tools, wie z. B. Lesen von Dokumentinhalten, Berechtigungsverwaltung usw.
    • preset.task.default – Tools zur Aufgabenverwaltung, wie Aufgabenerstellung, Mitgliederverwaltung usw.
    • preset.calendar.default – Tools zur Verwaltung von Kalenderereignissen, z. B. Erstellen von Kalenderereignissen, Abfragen des Frei/Gebucht-Status usw.
  6. Verwenden des SSE-Modus mit bestimmtem Port und Host :
    lark-mcp mcp -a cli_xxxx -s yyyyy -m sse --host 0.0.0.0 -p 3000
  7. Einstellen der Werkzeugsprache auf Chinesisch :
    lark-mcp mcp -a cli_xxxx -s yyyyy -l zh

    Hinweis : Wenn Sie die Sprache auf Chinesisch ( -l zh ) einstellen, werden möglicherweise mehr Token verbraucht. Sollten bei der Integration großer Sprachmodelle Probleme mit der Token-Begrenzung auftreten, sollten Sie die englische Standardeinstellung ( -l en ) verwenden.

  8. Festlegen des Toolnamenformats auf Camel Case :
    lark-mcp mcp -a cli_xxxx -s yyyyy -c camel

    Hinweis : Durch Festlegen des Werkzeugnamenformats können Sie die Anzeige von Werkzeugnamen im MCP ändern. Beispiel: im.v1.message.create in verschiedenen Formaten:

    • Snake-Format (Standard): im_v1_message_create
    • Kamelformat: imV1MessageCreate
    • Kebab-Format: im-v1-message-create
    • Punktformat: im.v1.message.create
  9. Verwenden von Umgebungsvariablen anstelle von Befehlszeilenparametern :
    # Set environment variables export APP_ID=cli_xxxx export APP_SECRET=yyyyy # Start the service (no need to specify -a and -s parameters) lark-mcp mcp
  10. Konfigurationsdatei verwenden :

Neben Befehlszeilenparametern können Sie zum Festlegen von Parametern auch eine Konfigurationsdatei im JSON-Format verwenden:

lark-mcp mcp --config ./config.json

Beispiel einer Konfigurationsdatei (config.json):

{ "appId": "cli_xxxx", "appSecret": "xxxx", "domain": "https://open.feishu.cn", "tools": ["im.v1.message.create","im.v1.chat.create"], "toolNameCase": "snake", "language": "zh", "userAccessToken": "", "tokenMode": "auto", "mode": "stdio", "host": "localhost", "port": "3000" }

Hinweis : Befehlszeilenparameter haben eine höhere Priorität als die Konfigurationsdatei. Wenn Sie sowohl Befehlszeilenparameter als auch eine Konfigurationsdatei verwenden, überschreiben die Befehlszeilenparameter die entsprechenden Einstellungen in der Konfigurationsdatei.

  1. Transportarten :

lark-mcp unterstützt zwei Transportmodi:

  1. stdio-Modus (Standard/Empfohlen) : Geeignet für die Integration mit KI-Tools wie Trae/Cursor oder Claude, die über standardmäßige Eingabe-/Ausgabestreams kommunizieren.
lark-mcp mcp -a <your_app_id> -s <your_app_secret> -m stdio
  1. SSE-Modus : Bietet eine HTTP-Schnittstelle basierend auf vom Server gesendeten Ereignissen, geeignet für Szenarien, in denen eine lokale Ausführung nicht möglich ist.
# Default listens only on localhost lark-mcp mcp -a <your_app_id> -s <your_app_secret> -m sse -p 3000 # Listen on all network interfaces (allowing remote access) lark-mcp mcp -a <your_app_id> -s <your_app_secret> -m sse --host 0.0.0.0 -p 3000

Nach dem Start ist der SSE-Endpunkt unter http://<host>:<port>/sse erreichbar.

Häufig gestellte Fragen

  • Problem : Keine Verbindung zur Feishu/Lark API möglich. Lösung : Überprüfen Sie Ihre Netzwerkverbindung und stellen Sie sicher, dass Ihre APP_ID und Ihr APP_SECRET korrekt sind. Stellen Sie sicher, dass Sie auf die Feishu/Lark Open Platform API zugreifen können. Möglicherweise müssen Sie einen Proxy konfigurieren.
  • Problem : Fehler bei der Verwendung des Benutzerzugriffstokens. Lösung : Prüfen Sie, ob das Token abgelaufen ist. Das Benutzerzugriffstoken hat in der Regel eine Gültigkeitsdauer von zwei Stunden und muss regelmäßig aktualisiert werden. Sie können einen automatischen Token-Aktualisierungsmechanismus implementieren.
  • Problem : Nach dem Start des MCP-Dienstes können bestimmte APIs nicht aufgerufen werden, da Fehlermeldungen wegen unzureichender Berechtigungen auftreten. Lösung : Prüfen Sie, ob Ihre Anwendung über die entsprechenden API-Berechtigungen verfügt. Einige APIs erfordern zusätzliche Berechtigungen auf höherer Ebene, die in der Entwicklerkonsole oder der Lark-Entwicklerkonsole konfiguriert werden können. Stellen Sie sicher, dass die Berechtigungen genehmigt wurden.
  • Problem : API-Aufrufe für den Upload/Download von Bildern oder Dateien schlagen fehl. Lösung : Die aktuelle Version unterstützt die Upload-/Download-Funktion für Dateien und Bilder nicht. Diese APIs werden in zukünftigen Versionen unterstützt.
  • Problem : Die Befehlszeile zeigt in der Windows-Umgebung unleserliche Zeichen an. Lösung : Ändern Sie die Befehlszeilenkodierung in UTF-8, indem Sie in der Eingabeaufforderung chcp 65001 ausführen. Bei Verwendung von PowerShell müssen Sie möglicherweise die Terminalschriftart oder die PowerShell-Konfiguration ändern.
  • Problem : Berechtigungsfehler während der Installation. Lösung : Verwenden Sie unter macOS/Linux sudo npm install -g @larksuiteoapi/lark-mcp für die Installation oder ändern Sie die Berechtigungen des globalen npm-Installationspfads. Windows-Benutzer können versuchen, die Eingabeaufforderung als Administrator auszuführen.
  • Problem : Token-Limit nach dem Starten des MCP-Dienstes überschritten. Lösung : Versuchen Sie, mit -t die Anzahl der aktivierten APIs zu reduzieren, oder verwenden Sie ein Modell, das größere Token unterstützt (z. B. claude3.7).
  • Problem : Im SSE-Modus kann keine Verbindung hergestellt oder Nachrichten empfangen werden. Lösung : Überprüfen Sie, ob der Port bereits verwendet wird, und versuchen Sie, zu einem anderen Port zu wechseln. Stellen Sie sicher, dass der Client korrekt mit dem SSE-Endpunkt verbunden ist und den Ereignisdatenstrom verarbeitet.

Rückmeldung

Wir freuen uns über Ihre Rückmeldungen, um dieses Tool zu verbessern. Wenn Sie Fragen oder Anregungen haben, stellen Sie diese bitte im GitHub-Repository.

-
security - not tested
A
license - permissive license
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Ein Toolkit, das es KI-Assistenten ermöglicht, Feishu/Lark-API-Schnittstellen für Automatisierungsszenarien wie Dokumentenverarbeitung, Konversationsverwaltung und Kalenderplanung direkt aufzurufen.

  1. Merkmale
    1. Werkzeugliste
      1. Vorbereitung
        1. Erstellen einer Feishu/Lark-Anwendung
        2. Installieren von Node.js
      2. Installation
        1. Benutzerhandbuch
          1. Verwendung mit Trae/Cursor/Claude
          2. Benutzerdefinierte API-Konfiguration
          3. Erweiterte Konfiguration
        2. Häufig gestellte Fragen
          1. Weiterführende Links
            1. Rückmeldung

              Related MCP Servers

              • -
                security
                F
                license
                -
                quality
                Enables AI assistants to interact with Metabase databases and dashboards, allowing users to list and execute queries, access data visualizations, and interact with database resources through natural language.
                Last updated -
                9
                JavaScript
                • Apple
              • -
                security
                F
                license
                -
                quality
                Enables AI assistants to interact with Metabase, providing access to dashboards, questions, databases, and tools for executing queries and viewing data through natural language.
                Last updated -
                JavaScript
                • Apple
              • -
                security
                A
                license
                -
                quality
                Enables AI assistants to manage Google Calendar through natural language interactions with features like creating, updating, and deleting events, searching calendars, and supporting natural language date/time inputs.
                Last updated -
                71
                JavaScript
                MIT License
              • -
                security
                A
                license
                -
                quality
                An MCP-based service that enables AI models to seamlessly interact with Feishu (Lark) platform, supporting document reading and chatbot messaging capabilities.
                Last updated -
                396
                3
                TypeScript
                MIT License
                • Linux
                • Apple

              View all related MCP servers

              ID: n0svtdiilx