Skip to main content
Glama

Feishu-Dokumenten-Extraktionstool (Feishu Reader)

Dies ist eine Desktop-Anwendung, die auf Python und PyQt6 basiert und Benutzern dabei helfen soll, Feishu-Dokumente (Docx / Wiki) schnell zu extrahieren und zur lokalen Speicherung in das Markdown-Format zu konvertieren.

🌟 Funktionen

  • Grafische Benutzeroberfläche: Bietet eine einfache und benutzerfreundliche PyQt6-Desktop-Oberfläche.

  • Ein-Klick-Extraktion: Unterstützt das Einfügen von Feishu-Dokumenten-/Wissensdatenbank-Links, um diese mit einem Klick abzurufen und als .md-Datei zu generieren.

  • Umfassende Formatunterstützung: Die Analyse unterstützt Text, mehrstufige Überschriften, Codeblöcke, Listen, Zitate, Tabellen, Mermaid-Diagramme und andere gängige Feishu-Dokumentenelemente.

  • Lokalisierung von Bildern: Lädt Bilder innerhalb des Dokuments automatisch in ein lokales assets_<doc_token>/-Verzeichnis herunter und generiert relative Pfadreferenzen in Markdown.

  • Berechtigungen und Authentifizierung:

    • Geben Sie die App ID und das App Secret der Feishu-App direkt in der Oberfläche ein, um mit einem Klick ein Access Token zu erhalten.

    • Unterstützt die manuelle Eingabe von Token und das Speichern der Anmeldedaten lokal durch Aktivieren der Option "Merken".

  • Lokale Speicherung: Generiert automatisch Dateinamen mit Zeitstempeln und speichert diese im vom Benutzer angegebenen Verzeichnis.

🔑 Konfiguration der Feishu-App

Dieses Tool greift über eine selbst erstellte App auf der Feishu Open Platform auf Dokumente zu. Für die erstmalige Nutzung ist die folgende Konfiguration erforderlich.

Schritt 1: Erstellen einer selbst erstellten App

  1. Öffnen Sie die Feishu Open Platform und melden Sie sich mit einem Administratorkonto an.

  2. Gehen Sie zum Entwickler-Backend → Klicken Sie oben rechts auf App erstellen → Wählen Sie Selbst erstellte App.

  3. Geben Sie den App-Namen (z. B. "Dokumenten-Extraktionstool") und eine Beschreibung ein, laden Sie ein Symbol hoch und klicken Sie auf Bestätigen.

  4. Gehen Sie zur Detailseite der App und kopieren Sie unter dem Reiter Anmeldedaten & Basisinformationen:

    • App ID (z. B. cli_xxxxxxxxxxxxxxxx)

    • App Secret (nach dem Klicken auf "Anzeigen" kopieren)

Schritt 2: Erforderliche Berechtigungen aktivieren

Gehen Sie zur Detailseite der App → Berechtigungsverwaltung → Suchen und aktivieren Sie die folgenden Berechtigungen:

Berechtigungskennung

Berechtigungsname

Verwendungszweck

wiki:wiki:readonly

Informationen zum Wissensbereich abrufen

Zugriff auf Dokumente vom Typ /wiki/

docx:document:readonly

Neue Dokumente anzeigen

Lesen des Block-Inhalts von Feishu Docx-Dokumenten

docs:document.media:download

Bilder und Anhänge aus Cloud-Dokumenten herunterladen

Herunterladen von Bildern aus Dokumenten auf den lokalen Speicher

docs:document.content:read

Inhalt von Cloud-Dokumenten anzeigen

Abrufen von Dokumentinhalten innerhalb des Zugriffsbereichs

docx:document:readonly

Neue Dokumente anzeigen

Abrufen von Inhalten neuer Dokumente

Hinweis: Nachdem die Berechtigungen aktiviert wurden, gehen Sie zum Reiter Versionsverwaltung & Veröffentlichung, erstellen und veröffentlichen Sie eine Version, damit die Berechtigungen wirksam werden.

Schritt 3: Dokumente für die App freigeben

Feishu-Dokumente sind standardmäßig nur für autorisierte Personen sichtbar. Sie müssen das Zieldokument (oder die Wissensdatenbank) für den App-Bot freigeben:

  1. Öffnen Sie das Feishu-Zieldokument und klicken Sie oben rechts auf Teilen.

  2. Suchen Sie im Freigabefenster nach Ihrem App-Namen und setzen Sie die Berechtigung auf Kann anzeigen.

  3. Klicken Sie auf Bestätigen, damit die App auf das Dokument zugreifen kann.

Bei Wiki-Dokumenten müssen Sie den App-Bot in der Mitgliederverwaltung der Wissensdatenbank hinzufügen und ihm Anzeigerechte erteilen.


🛠️ Installation und Ausführung

Systemanforderungen

  • Python 3.10 oder höher

Abhängigkeiten installieren

pip install -r requirements.txt

Desktop-Anwendung starten

python main.py

🔌 MCP-Server-Modus

Unterstützt den Betrieb als MCP-Server, um den direkten Aufruf in KI-Tools wie Claude oder Cursor zu ermöglichen.

Umgebungsvariablen konfigurieren

export FEISHU_APP_ID="cli_xxxxxxxxxxxxx"
export FEISHU_APP_SECRET="xxxxxxxxxxxxxxxx"

MCP-Server starten

python mcp_server.py

Konfiguration für Claude / Cursor

Fügen Sie dies in ~/.claude.json oder in die MCP-Konfiguration des Projekts ein:

{
  "mcpServers": {
    "feishu-reader": {
      "command": "python",
      "args": ["mcp_server.py"],
      "env": {
        "FEISHU_APP_ID": "cli_xxxxxxxxxxxxx",
        "FEISHU_APP_SECRET": "xxxxxxxxxxxxxxxx"
      },
      "workingDirectory": "/path/to/feishu-reader-mcp"
    }
  }
}

📖 Benutzerhandbuch

  1. Anmeldedaten eingeben: Geben Sie oben in der Oberfläche die App ID und das App Secret Ihrer selbst erstellten Feishu-App ein (wird nach der ersten Nutzung automatisch gespeichert).

  2. Token abrufen: Klicken Sie auf die Schaltfläche [Aktualisieren] rechts neben der Access-Token-Zeile, um das Token automatisch abzurufen und einzufügen; Sie können ein vorhandenes Token auch manuell einfügen.

  3. Dokumenten-Link einfügen: Fügen Sie den Link zum Feishu-Dokument oder zur Wissensdatenbank-Seite in das Eingabefeld "Dokumenten-URL" ein (unterstützt Links vom Typ /docx/, /doc/, /wiki/).

  4. Extraktion starten: Klicken Sie auf [Extraktion starten] und wählen Sie im Popup-Fenster das Speicherverzeichnis für die Markdown-Datei aus.

  5. Warten auf Abschluss: Der Protokollbereich unten zeigt den Fortschritt in Echtzeit an. Nach Abschluss finden Sie die .md-Datei und das assets_xxx/-Bildverzeichnis im Zielverzeichnis.


📄 Projektstruktur

Datei

Beschreibung

main.py

Haupteinstiegspunkt, enthält die PyQt6-Oberflächendefinition und die Logik für asynchrone Arbeits-Threads

fetcher.py

Feishu OpenAPI-Interaktionsschicht, verantwortlich für das Abrufen des Block-Baums und das Herunterladen von Bildern

parser.py

Markdown-Konvertierungs-Engine, bildet verschiedene Feishu-Blöcke auf Markdown-Syntax ab

mcp_server.py

Einstiegspunkt für den MCP-Server-Modus

requirements.txt

Liste der Python-Abhängigkeiten


💡 Hinweise

  • Dieses Tool ist für das neue Feishu-Dokumentenformat (basierend auf /docx/v1/documents OpenAPI) optimiert; bei älteren Dokumenten kann es zu Formatabweichungen kommen.

  • Für den Bild-Download muss die Berechtigung docs:document.media:download für die App aktiviert sein und das Dokument muss korrekt für den App-Bot freigegeben sein, andernfalls wird der Bild-Download übersprungen und der Grund im Protokoll angegeben.

  • Es gibt Ratenbegrenzungen für API-Aufrufe (5 QPS / 10.000 Aufrufe pro Tag); bitte extrahieren Sie große Dokumente nicht zu häufig.

  • Das Token ist standardmäßig etwa 2 Stunden gültig; nach Ablauf einfach auf [Aktualisieren] klicken, um ein neues zu erhalten.

F
license - not found
-
quality - not tested
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

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/ancienthu/feishu-reader-mcp'

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