Feishu Codex MCP
Feishu Codex MCP v26.08.25
Über eine selbst erstellte Enterprise-Anwendung werden das Feishu-Wiki und autorisierte freigegebene Cloud-Laufwerke an Codex angebunden. Dieser MCP verwendet App ID und App Secret, um eine Anwendungsidentität zu erhalten. Er kann Wikis, Tabellenkalkulationen, mehrdimensionale Tabellen und freigegebene Dateien auflisten, durchsuchen und lesen und innerhalb strenger Grenzen neue Dokumente erstellen oder Dokumente in kleinem Umfang verändern.
Dieses Repository ist eine Quellcode-Version, die öffentlich auf GitHub hochgeladen werden darf. Es enthält keine echte .env, keine Feishu-Inhalte, keine lokalen Sicherungen, keine heruntergeladenen Dateien, keine Abhängigkeitsverzeichnisse und keine Veröffentlichungsarchive.
Funktionen und Sicherheitsgrenzen
Verwendet die Feishu-App-Identität und setzt keine Anmeldung mit einem persönlichen Feishu-Konto im Browser voraus.
App IDundApp Secretbelegen nur, um welche Anwendung es sich handelt; API-Berechtigungen und die Autorisierung der Zielressourcen bestimmen gemeinsam, was aufgerufen und gelesen werden kann.Standardmäßig gilt
FEISHU_WIKI_READ_SCOPE=root: Es werden nur der konfigurierte Wurzelknoten und dessen Unterknoten gelesen.Der Lesebereich kann auf
spacegeändert werden; dann werden alle Knoten des Wiki-Raums gelesen, zu dem der Wurzelknoten gehört. Schreiboperationen bleiben weiterhin auf den konfigurierten Wurzelknoten oder austauschbaren freigegebenen Ordner beschränkt.Vor Änderungen an Dokumenten wird eine lokale Sicherungskopie gespeichert; Wiederherstellungen erzeugen einen neuen Entwurf und überschreiben das aktuelle Dokument nicht direkt.
Es werden keine für Daten zerstörungen Tools wie Löschen, Verschieben, Teilen oder Berechtigungsänderungen angeboten.
Codex verwendet für Schreibwerkzeuge den
writes-Genehmigungsmodus und fragt vor der Ausführung zusätzlich um Bestätigung.
Related MCP server: Feishu MCP Server
Voraussetzungen
Du benötigst:
ein Feishu-Enterprise-Konto, das eigene Enterprise-Anwendungen erstellen, veröffentlichen oder freigebenK kann;
Windows 10/11;
Node.js 24 oder höher;
Codex Desktop, Codex CLI oder die Codex-IDE-Erweiterung;
einen Wiki-Knoten, der der Anwendung autorisiert werden soll; ein freigegebener Cloud-Laufwerk-Ordner ist optional.
Offizielle Zugänge:
Ein Feishu-Enterprise-System–beziehungsweise eine selbst erstellte App erstellen
Öffne die Feishu-Open-Platform-Entwicklungsplattform und wähle „Enterprise selbst erstellte Anwendung“.
Fülle App-Name, Beschreibung und Symbol aus.
Gehe zu „Anmeldedaten und Basisdaten“, kopiere
App IDundApp Secretund speichere sie vorübergehend in einem Passwortverwalter.Sende
App Secretnicht an Chats, Issues, Screenshots oder GitHub. Falls es bereits geleakt wurde, setze es sofort im Feishu-Backend zurück.
Dieses Projekt verwendet die Anwendungsidentität, um tenant_access_token zu erhalten. Es wird daher keine persönliche OAuth-Anmeldung benötigt. Selbst wenn du Enterprise- oder App-Administrator bist, bedeutet das nicht, dass die authentifizierte Anwendung automatisch alle Wikis und Cloud-Laufwerk-Berechtigungen hat; Ressourcen müssen weiterhin separat autorisiert werden.
二、Feishu-Berechtigungen konfigurieren und veröffentlichen
Gehe in der Anwendung zu „Berechtigungsverwaltung“ und beantrage die Berechtigungen, die zu den tatsächlich verwendeten Funktionen passen. Die Namen im Feishu-Backend können variieren; suche daher zusätzlich nach den Berechtigungsschlüsseln.
Fähigkeit | Nur-Lese-Berechtigung | Berechtigung für Schreibwerkzeuge |
Wiki-Verzeichnis |
|
|
Neue Dokumente |
|
|
Tabellenkalkulation |
| Das Projekt liest diese aktuell nur; sie darf schreibgeschützt bleiben |
Mehrdimensionale Tabellen |
| Das Projekt liest diese aktuell nur; sie darf schreibgeschützt bleiben |
Cloud-Laufwerksdateien |
| Bei neuer Dokumenterstellung im freigegebenen Ordner ist die entsprechende Schreib-Berechtigung erforderlich |
Minimales Berechtigungsprinzip: Verwende ausschließlich Lese-Werkzeuge, beantrag keine Schreib-Berechtigungen. Wenn die angezeigten Berechtigungen von der Tabelle abweichen, gilt die in den entsprechenden API-Seiten angegebene aktuell geforderte „Erforderliche Berechtigung“.
Nach dem Hinzufügen der Berechtigungen ist weiter erforderlich:
eine App-Version zu erstellen;
die Veröffentlichung zu beantragen;
die neuen Berechtigungen durch den Enterprise-Administrator freigeben zu lassen;
zu bestätigen, dass der Versionsstatus „Veröffentlicht“ ist.
Wenn nur im Backend die Berechtigungen Markiert, aber keine Veröffentlichung erfolgt, erhält die laufende Anwendungsidentität die neuen Berechtigungen nicht.
3.Wikis und freigegebene Cloud-Laufwerke autorisieren
API-Berechtigungen sind das Zeichen der Kennnung der Anwendung; die Ressourcenautorisierung entscheidet über den Zugriff auf konkrete Dokumente. Beide sind Voraussetzungen.
Wiki autorisieren
Öffne das gewünschte Wiki oder den Ziel-Wurzelknoten.
Füge die neu erstellte Enterprise-App unter den Mitgliedern des Wiki-Namespace, in den Berechtigungseinstellungen oder in den Dokumentmitarbeitern hinzu. Bei unterschiedlichen Feishu-Versionen kann der Eintrag auch heißen „Dokument-App hinzufüfügen“.
Bei reiner Lese-Nutzung gewähre die Ansichtsberechtigung; erst bei
feishu_editoderfeishu_createeine Bearbeitungsberechtigung erteilen.Wenn die App nicht gefunden wird, prüfe zuerst, ob sie veröffentlicht, genehmigt und im Nutzungsbereich enthalten ist.
Freigegebenen Cloud-Laufwerk anordnen autorisieren
Öffne die Freigabe- oder Berechtigungseinstellungen des Zielordners.
Füge diese Enterprise-App hinzu und vergebe je nach Bedarf Lese- oder Beineberechtigungen.
Konfiguriere nur einen eindeutigen Stammordner; nimm nicht das gesamte Enterprise-Cloud-Lauf als Standardgrenze.
Administratoren umgehen die Ressourcenautorisierung nicht. Was aus einer Anwendung endlich sichtbar ist, ist die Schnittmenge aus „veröffentlichten API-Berechtigungen“ und „autorisierten Ressourcen“.
四、Wiki- und Drive-Token erm
Wiki-Token
Kopiere den Link des Ziel-Wiki-Knotens, zum Beispiel:
https://your-tenant.feishu.cn/wiki/WIKI_NODE_TOKEN?from=copylinkDer Teil nach /wiki/ und vor dem Query-Parameter ? ist FEISHU_WIKI_ROOT_TOKEN. Die vollständige URL kann unter FEISHU_WIKI_ROOT_URL eingetragen werden, um einen klickbaren Link zu erzeugen.
Drive-Token
Kopiere den Link des freigegebenen Cloud-Ordners, zum Beispiel:
https://your-tenant.feishu.cn/drive/folder/DRIVE_FOLDER_TOKENDer Teil nach /folder/ und vor dem Query-Parameter ist FEISHU_DRIVE_ROOT_TOKEN. Falls keine Cloud-Funktionen benötigt werden, kann er leer bleiben.
Verwechsle nicht normale Dokument-Tokens, Wiki-Knoten-Tokens und Cloud-Ordner-Tokens miteinander. Wenn die Linkstruktur von genannten Beispielen abweicht, prüfe zuerst in der Browseradressleiste den Ressourcentyp oder gleiche das Token anhand der Feishu-API-Konsole ab.
5. Projekt installieren und .env ausfüllen
Wechsle in PowerShell in das Projektverzeichnis:
npm ci
Copy-Item .env.example .env
notepad .envTrage deine eigenen Werte in .env ein:
FEISHU_APP_ID=<你的 App ID>
FEISHU_APP_SECRET=<你的 App Secret>
FEISHU_WIKI_ROOT_TOKEN=<知识库根节点 Wiki token>
FEISHU_WIKI_ROOT_URL=https://your-tenant.feishu.cn/wiki/<知识库根节点 Wiki token>
FEISHU_WIKI_READ_SCOPE=root
FEISHU_DRIVE_ROOT_TOKEN=<共享文件夹 Drive token;不用云盘时留空>
FEISHU_API_BASE_URL=https://open.feishu.cn/open-apis
FEISHU_BACKUP_DIR=data/backupsDer Lesebereich bietet zwei Möglichkeiten:
root: Standardwert, liest nur den konfigurierten Wurzelknoten und seine Nachkommen, passend für für öffentliche Installation und minimale Autorisierung.space: Liest alle Knoten des Wiki-Namespace dieses Wurzelknotens; gut geeignet, wenn tatsächlich eine bereichsübergreifende Suche nötig ist.
space erweitert nur den Lesebereich, nicht die Schreibgrenze. .env ist über .gitignore ausgeschlossen; nur .env.example darf hochgeladen werden.
Verwendung
Nach Abschluss der Feishu-Konfiguration verbindest du dich einfach der folgenden Reihenfolge:
Führe
npm ciaus, um die Abhängigkeiten in den festen Versionen zu installieren.Kopiere
.env.examplenach.env.Trage deine eigene App ID, dein App Secret und den Wiki-Wurzel-Token ein.
Behalte
FEISHU_WIKI_READ_SCOPE=root, um den Zugriff auf den übrigen Wurzelknoten und seine Nachkommen zu begrenzen; wechsle nur beispace, wenn wirklich weitere Verzeichnis geist gleiches Wiki gelesen werden sollen.Für Lesezugriff auf das freigegebene Cloud-Lauf setze
FEISHU_DRIVE_ROOT_TOKEN; ohne Cloud-Nutzung leere lassen.Doppelklicke
connect-feishu.cmd, warte aufSetup completedund beende und starte Codex einwandfrei neu.Lasse Codex „Feishu-Wiki-Wurzel auflisten“ ausführen, um zu bestätigen dass MCP verbunden ist.
Wenn du Anwendung, Inhalte oder Lesebereich beschränkst, passe
.envan und starte Codex erneut.
Auch wenn der Wurzel-Knoten keine Seiten enthält, gibt feishu_list_wiki den Wurzel-Knoten selbst zurück. Im Modus space erweitern Auflisten, Suchen und Lesen auf den gesamten Wiki-Raum; das Erstellen, Bearbeiten und Wiederherstellen als Entwurf bleibt weiterhin durch FEISHU_WIKI_ROOT_TOKEN begrenzt.
Wenn du mehrdimensionale Tabellen im Wiki liest, kannst du mit feishu_read über table die gewünschte Tabelle auswählen und über max_tables sowie max_records die Rückgabemenge begrenzen. Diese Fähigkeit erfordert allerdings bitable:app:readonly oder eine höhere äquivalente Berechtigung, und die Ziel-Multidimensionstabelle muss der App autorisiert sein.
Führe folgenden Befehl im Projektordner aus, um eine schreibfreie Online-Diagnose ohne Wiki-Schreibzugriff durchzuführen:
powershell -NoProfile -ExecutionPolicy Bypass -File scripts/test-live.ps16. Verbindung von Codex
Automatische Konfiguration (Windows)
Nach Installation der Abhängigkeiten und Ausfüllen von .env doppelklicken:
connect-feishu.cmdDas Skript erhält in ~/.codex/config.toml alle anderen Einstellungen und aktualisiert nur den Abschnitt [mcp_servers.feishu]. Nach dem Erfolg vollständig beenden und Codex neu öffnen.
Manuelle Konfiguration
Die MCP-Konfigurationsdatei von Codex liegt unter ~/.codex/config.toml. Ersetze den Pfad durch den absoluten Pfad deiner Maschine; bei Windows solltest du / verwenden:
[mcp_servers.feishu]
command = "C:/Program Files/nodejs/node.exe"
args = ["C:/path/to/FeishuCodexMCP/src/server.js"]
cwd = "C:/path/to/FeishuCodexMCP"
startup_timeout_sec = 20
tool_timeout_sec = 120
default_tools_approval_mode = "writes"Du musst App ID oder App Secret nicht in config.toml eintragen. Der Server liest die Konfiguration aus .env im Verzeichnis, auf welche das cwd zeigt. Codex Desktop, CLI und die IDE-Erweiterung nutzen auf demselben Rechner diese gemeinsame Konfiguration.
Nach jeder Konfigurationsänderung muss Codex vollständig neu gestartet werden. Anschließend kannst du Codex z. B. um „Wurzel des Feishu-Wiki auflisten“ bitten und die Verbindung prüfen.
7. Verbindung prüfen und Release-paket erstellen
Führe eine schreibgeschützte Diagnose mit realen Feishu-Anmeldedaten aus:
powershell -NoProfile -ExecutionPolicy Bypass -File scripts/test-live.ps1Die und schreibgeschützte Diagnose prüft wird App-Authentifizierung, Wiki-Wurzelknoten, aktuellen Lesebereich, Tabellen, mehrdimensionale Tabellen und die Cloud-freifunktion – ohne Inhalte zu verändern.
Zum Erstellen eines sicheren Veröffentlichungspakets inklusive der Abhängigkeiten austausch:
npm run package:safeDas-Skript prüft die Whitelist der Nachrichtungslisten, scannt sensible Werte und führt einen Offline-Starttest durch. Anschließend wird im Übergeordneten Projektordner 飞书MCP-v26.08.25.zip erzeugt. Dieses Archiv ist ein Veröffentlichungsartefakt und darf nicht in GitHub angezeigt werden.
Übersicht der MCP-Programm/Tools
Tool | Zweck | Typ |
| Listet autorisierte Wurzelknoten, Unterknoten oder angezeigten Wiki-Raum auf | Nur lesen |
| Sucht im zulässigen Bereich nach Titeln und Inhalten | Nur lesen |
| Liest Dokumente, Tabellen, mehrdimensionale Tabellen bzw. Dateien | Nur lesen |
| Ersetzt oder fügt je nach Revision Seek und vererstellt vor dem Schreiben eine Sicherung | Schreib ... – Genehmigung erforderlich |
| Erstellt in erlaubten Wiki-Knoten oder freigegebenen Cloud-Ordnern eine neue Docx | Schreiben – Genehmigung erforderlich |
| Verwaltet autorisierte freigegebene Cloud-Ordner | Nur lesen |
| Zeigt die lokal gespeicherten Vorab-Versionen von Dokumenten | Nur lesen |
| Erstellt einen neuen Wiederherstellungsentwurf aus der Sicherung, verwendet das Original nicht | Schreiben – Genehmigung erforderlich |
Häufige Fragen
Ich habe App-ID und geheim – warum kann ich nichts lesen?
Die Zugangsdaten dienen nur der Anwendungs-Identität. Zusätzlich müssen erfüllen: die Anwendungsberechtigungen sind veröffentlicht und genehmigt, die Auftragsressource wurde der App autorisiert, der Token-Typ gehört zur richtigen Ressource und die Ressource liegt im konfigurierten Lesebereich.
Warum keine Anmeldung im Browser?
Dieses Projekt verwendet eine selbst erstellte Enterprise-Identität und ruft tenant_access_token über App ID und Secret ab. Eine Browser-Anmeldung entspricht meist dem OAuth-Flow eines Benutzers. Das ist ein separater Authentifizierungsweg; für dieses Projekt ist er nicht erforderlich.
Ich bin Administrator – warum muss ich trotzdem Berechtigungen konfigurieren?
„Administrator“ ist die Rolle deines Kontos, während die API-Anfrage für die Enterprise-Anwendung gestellt wird. Feishu getrennt die Kontoverwaltung, API-Berechtigungen und Ressourcen-Berechtigungen an, damit ein erstellender Administrator nicht automatisch Zugriff auf alle Unternehmen Ressourcen hat.
Wurzelknoten ist lesbar, andere Wiki-Seiten sind aber unsichtbar
Prüfe FEISHU_WIKI_READ_SCOPE. root durchläuft nur Nachkommen des Wurzelknotens. Wenn du wirklich andere Ordner desselben Wiki-Bereichs sehen möchtest, ändere den Wert auf space und starte Codex neu. Wenn es dann immer noch unsichtbar bleibt, prüfe die Wiki-Verbindung-Autorisierung der App für diesen Bereich.
Mehrdimensionale Tabellen lassen sich nicht lesen
Vergewissere, dass die App mindestens bitable:app:readonly oder eine gleichwertige höhere Berechtigung besitzt, die Berechtigungsversion veröffentlicht wurde und dass die mehrdimensionalen Tabellen die App als Dokument-App oder als Editor eingetragen hat.
Feishu-Werkzeuge erscheinen nicht in Codex
Prüfe, ob die gespeicherte Pfad unter ~/.codex/config.toml existiert, ob das Projekt mit npm ci installiert wurde und ob .env mit dem cwd übereinstimmt. Starte dann Codex vollständig neu. Alternativ lässt du node src/server.js laufen, um den Startfehler zu sehen; ein normaler stdio-MCP-Server warteet nach dem Start auf Eingaben und öffnet keine Browser-Anmeldeseite.
Sicherheitshinweise und Upload-Prüfung
Weder öffentliches Repository noch veröffentlichtes Paket darf echte .env-Daten, App ID, App Secret, Wiki/Drive-Token, Unternehmens-URLs, heruntergeladene Dateien oder lokalen Sicherungen enthaltenAus damit. Der sichere Paketierer prüft die Whitelist des Archivs und scannt lokale .env-Dateien auf sensible Werte. Gefundene echte Konfigurationen führen zur Ablehnung der Paketer.
FEISHU_WIKI_READ_SCOPE=space erweitert nur den Lesebereich desselben Wiki-Raums. Das Erstellen, Bearbeiten und Wiederherstellen einer Entwurfsvorlage bleibt auf den konfigurierten Wurzelknoten beschränkt; die mehrdimensionale Tabellenfunktion bleibt lesend und würde nicht zum Schreibwerkzeug.
Wenn du einen Verdacht auf ausgetreten Schema-Anmeldedaten hast:
Setze das App Secret sofort auf der Feishu-Open-Anlage zurück.
Entziehen oder reduzieren von App-Berechtigungen und überprüfe die Zielautorisierung in Wiki, Multidimensional-Tabelle und Cloud-Lauf.
Lösche lokale Dateien und Archiv, die die alten Anmeldedaten enthalten.
Falls Werte in den Git-Verlauf gelangten: Sage den-Verlauf, bevor du hochlädst, und arbeite ab sofort nur mit dem neuen Anmeldedaten.
Vor dem Update Punkt-für-Punkt Folgendes geprüft:
Das Repository enthält nur
.env.example– keine.env-Dateien und keine echten Anmeldedateien.App Secret, echte Wiki/Drive-Token, Unternehmensdomain und Feishu-Inhalte (Versionsadresse, Daten) sind nicht in verspurteten Dateien.Kein
node_modules,data,downloads,backups, keine Logs oder Archive.git status --shortzeigt nur erwartete Änderungen – bislang momentan bleibt.Mit
git ls-filesdie vollständige Liste der hochzuladenden gelegten Dateien prüfen.Wenn Daten bereits in Git-Historie existieren, reicht das Entfernen der Joule nicht; bitte Secret erst zurücksetzen und dann bleiben.
Mit den folgenden Befehl für eine grüne Prüfung:
git ls-files
git grep -n -I -E "FEISHU_APP_SECRET=.+|tenant_access_token|your-tenant\.feishu\.cn"Der letzte Befehl könnte auch die Platzhalter in der README-Datei erwischen; prüfe manuell, ob die Werte dort nur Platzhalter sind, nicht echte Werte.
This server cannot be installed
Maintenance
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
- AlicenseNot gradedqualityDmaintenanceEnables AI models to interact with Feishu (Lark) APIs for document management, bot messaging, chat operations, and multi-dimensional table (Bitable) CRUD operations through natural language.371MIT
- AlicenseAqualityDmaintenanceEnables AI assistants to directly read, write, and manage Feishu documents, spreadsheets, and multi-dimensional tables. It supports automated documentation tasks and rich text management, including Mermaid diagrams and image uploads.18372MIT
- AlicenseNot gradedqualityDmaintenanceEnables Claude to read and interact with Feishu (Lark) documents, spreadsheets, and multi-dimensional tables. It provides tools for extracting content and metadata from various Feishu resources through secure OAuth or tenant-level authentication.4113MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI applications to access Feishu (Lark) knowledge base and cloud documents through the MCP protocol.371ISC
Related MCP Connectors
Shared, permission-aware company context for AI agents, with provenance, approvals and audit.
Securely search and manage workspace context files for AI agents and teams.
Connect your team's living knowledge base — docs, data, issues, CRM — to Claude and ChatGPT.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/cimorn/FeishuCodexMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server