feishu-reader
Herramienta de extracción de documentos en la nube de Feishu (Feishu Reader)
Esta es una aplicación de escritorio escrita en Python y PyQt6, diseñada para ayudar a los usuarios a extraer rápidamente documentos de Feishu (Docx / Wiki) y convertirlos al formato Markdown para su almacenamiento local.
🌟 Características
Interfaz gráfica de usuario: Proporciona una interfaz de escritorio PyQt6 sencilla y fácil de usar.
Extracción con un clic: Admite pegar enlaces de documentos/bases de conocimiento de Feishu, capturar y generar archivos en formato
.mdcon un solo clic.Soporte completo de formatos: El análisis admite texto, encabezados multinivel, bloques de código, listas, citas, tablas, diagramas Mermaid y otros elementos comunes de los documentos de Feishu.
Localización de imágenes: Descarga automáticamente las imágenes del documento al directorio local
assets_<doc_token>/y genera referencias de rutas relativas en Markdown.Permisos y autenticación:
Ingrese el App ID y el App Secret de la aplicación Feishu directamente en la interfaz para obtener el Access Token con un clic.
Admite la entrada manual de tokens y la opción de "recordar" para guardar las credenciales localmente.
Almacenamiento local: Genera automáticamente nombres de archivo con marca de tiempo y los guarda en el directorio especificado por el usuario.
🔑 Configuración de la aplicación Feishu
Esta herramienta accede a los documentos a través de una aplicación autoconstruida en la plataforma abierta de Feishu. Para el primer uso, se requiere la siguiente configuración.
Paso 1: Crear una aplicación autoconstruida
Abra la Plataforma abierta de Feishu e inicie sesión con una cuenta de administrador.
Vaya al Panel de desarrollador → haga clic en Crear aplicación en la esquina superior derecha → seleccione Aplicación autoconstruida.
Ingrese el nombre de la aplicación (por ejemplo, "Herramienta de extracción de documentos"), la descripción, cargue un icono y haga clic en Confirmar creación.
Vaya a la página de detalles de la aplicación y, en la pestaña Credenciales e información básica, copie:
App ID (por ejemplo,
cli_xxxxxxxxxxxxxxxx)App Secret (haga clic en "Ver" y luego copie)
Paso 2: Habilitar los permisos necesarios
Vaya a la página de detalles de la aplicación → Gestión de permisos → busque y habilite los siguientes permisos:
Identificador de permiso | Nombre del permiso | Descripción de uso |
| Obtener información del espacio de conocimiento | Acceder a documentos de bases de conocimiento tipo |
| Ver documentos nuevos | Leer el contenido del bloque de documentos en formato Docx de Feishu |
| Descargar imágenes y archivos adjuntos | Descargar imágenes del documento localmente |
| Ver contenido del documento en la nube | Obtener el contenido de los documentos dentro del alcance de acceso |
| Ver documentos nuevos | Obtener el contenido de los documentos nuevos |
Nota: Después de habilitar los permisos, vaya a la pestaña Gestión de versiones y publicación, cree y publique una versión para que los permisos entren en vigor.
Paso 3: Compartir el documento con la aplicación
Por defecto, los documentos de Feishu solo son visibles para las personas con permisos. Debe compartir el documento (o base de conocimiento) de destino con el bot de la aplicación:
Abra el documento de Feishu de destino y haga clic en Compartir en la esquina superior derecha.
En la ventana emergente de compartir, busque el nombre de su aplicación y establezca el permiso en Puede ver.
Haga clic en Confirmar y la aplicación podrá acceder al documento.
Si es un documento de base de conocimiento (Wiki), debe agregar el bot de la aplicación en la Gestión de miembros de la base de conocimiento y otorgarle permisos de visualización.
🛠️ Instalación y ejecución
Requisitos del entorno
Python 3.10 o superior
Instalar dependencias
pip install -r requirements.txtIniciar la aplicación de escritorio
python main.py🔌 Modo servidor MCP
Admite la ejecución como servidor MCP, lo que facilita su llamada directa en herramientas de IA como Claude o Cursor.
Configurar variables de entorno
export FEISHU_APP_ID="cli_xxxxxxxxxxxxx"
export FEISHU_APP_SECRET="xxxxxxxxxxxxxxxx"Iniciar el servidor MCP
python mcp_server.pyConfigurar en Claude / Cursor
Agregue lo siguiente en ~/.claude.json o en la configuración MCP del proyecto:
{
"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"
}
}
}📖 Guía de uso
Ingresar credenciales: Ingrese el App ID y el App Secret de la aplicación autoconstruida de Feishu en la parte superior de la interfaz (se guardarán automáticamente después del primer uso).
Obtener Token: Haga clic en el botón [Actualizar] a la derecha de la línea Access Token para obtener y completar el token automáticamente; también puede pegar un token existente manualmente.
Pegar enlace del documento: Pegue el enlace del documento de Feishu o de la página de la base de conocimiento en el cuadro de entrada "URL del documento" (admite enlaces tipo
/docx/,/doc/,/wiki/).Iniciar extracción: Haga clic en [Iniciar extracción] y seleccione el directorio donde guardar el archivo Markdown en la ventana emergente.
Esperar a que finalice: El área de registro en la parte inferior mostrará el progreso en tiempo real. Una vez finalizado, encontrará el archivo
.mdy el directorio de imágenesassets_xxx/en el directorio de destino.
📄 Estructura del proyecto
Archivo | Descripción |
| Punto de entrada del programa principal, contiene la definición de la interfaz PyQt6 y la lógica del hilo de trabajo asíncrono |
| Capa de interacción con la API abierta de Feishu, responsable de extraer el árbol de bloques y descargar imágenes |
| Motor de conversión a Markdown, asigna varios bloques de Feishu a la sintaxis Markdown |
| Punto de entrada del modo servidor MCP |
| Lista de dependencias de Python |
💡 Notas
Esta herramienta es compatible con el nuevo formato de documento de Feishu (basado en la API abierta
/docx/v1/documents); los documentos antiguos pueden tener desviaciones de formato.La descarga de imágenes requiere que la aplicación tenga habilitado el permiso
docs:document.media:downloady que el documento se haya compartido correctamente con el bot de la aplicación; de lo contrario, la descarga de imágenes se omitirá y se indicará el motivo del error en el registro.La llamada a la interfaz tiene límites de frecuencia (5 QPS / 10,000 veces al día); no extraiga documentos grandes repetidamente con frecuencia.
El token tiene una validez predeterminada de aproximadamente 2 horas; después de que caduque, haga clic en [Actualizar] para obtener uno nuevo.
This server cannot be installed
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