MCP de OpenAPI de Feishu/Lark
inglés |中文
Recuperación de documentación para desarrolladores (MCP) | Documento oficial
Aviso de la versión beta : Esta herramienta se encuentra actualmente en fase beta. Las funciones y API pueden cambiar, así que manténgase al tanto de las nuevas versiones.
Esta es la herramienta oficial de Feishu/Lark para el Protocolo de Contexto de Modelo (MCP) de OpenAPI, diseñada para ayudar a los usuarios a conectarse rápidamente a la plataforma Feishu/Lark y facilitar la colaboración eficiente entre los agentes de IA y Feishu/Lark. Esta herramienta encapsula las interfaces de la API de Plataforma Abierta de Feishu/Lark como herramientas MCP, lo que permite a los asistentes de IA llamar directamente a estas interfaces e implementar diversos escenarios de automatización, como el procesamiento de documentos, la gestión de conversaciones, la programación de calendarios y más.
Características
- Kit de herramientas API completo de Feishu/Lark: encapsula casi todas las interfaces API de Feishu/Lark, incluidas la gestión de mensajes, la gestión de grupos, las operaciones de documentos, los eventos de calendario, Bitable y otras áreas funcionales centrales.
- Soporte de autenticación dual:
- Admite autenticación mediante token de acceso a la aplicación
- Admite autenticación de token de acceso de usuario
- Protocolos de comunicación flexibles:
- Admite el modo de flujo de entrada/salida estándar (stdio), adecuado para la integración con herramientas de IA como Trae/Cursor/Claude
- Admite el modo de eventos enviados por el servidor (SSE), lo que proporciona interfaces basadas en HTTP
- Admite múltiples métodos de configuración, adaptándose a diferentes escenarios de uso.
Lista de herramientas
Puede encontrar una lista completa de todas las herramientas Feishu/Lark compatibles en tools.md , donde las herramientas están categorizadas por proyecto y versión con descripciones.
Preparación
Creación de una aplicación Feishu/Lark
Antes de utilizar la herramienta lark-mcp, debe crear una aplicación Feishu/Lark:
- Visita la Plataforma Abierta Feishu o la Plataforma Abierta Lark e inicia sesión
- Haga clic en "Consola" y cree una nueva aplicación
- Obtenga el ID de la aplicación y el secreto de la aplicación, que se utilizarán para la autenticación de la API
- Agregue los permisos necesarios para su aplicación según su escenario de uso
- Si necesita llamar a las API como usuario, configure las URL de redireccionamiento de OAuth 2.0 y obtenga tokens de acceso de usuario
Para obtener pautas detalladas sobre la creación y configuración de aplicaciones, consulte la Documentación de la plataforma abierta Feishu: Creación de una aplicación o la Documentación de la plataforma abierta Lark .
Instalación de Node.js
Antes de utilizar la herramienta lark-mcp, debe instalar el entorno Node.js.
Instalación de Node.js en macOS
- Usando Homebrew (Recomendado) :
- Usando el instalador oficial :
- Visita el sitio web de Node.js
- Descargue e instale la versión LTS
- Luego de la instalación, verificar en la terminal:
Instalación de Node.js en Windows
- Usando el instalador oficial :
- Visita el sitio web de Node.js
- Descargue y ejecute el instalador de Windows (archivo .msi)
- Siga el asistente de instalación para completar la instalación.
- Después de la instalación, verifique en el símbolo del sistema:
- Usando nvm-windows :
- Descargar nvm-windows
- Instalar nvm-windows
- Utilice nvm para instalar Node.js:
Instalación
Instalar la herramienta lark-mcp globalmente:
Guía de uso
Uso con Trae/Cursor/Claude
Para integrar la funcionalidad de Feishu/Lark en herramientas de IA como Trae, Cursor o Claude, agregue lo siguiente a su archivo de configuración:
Para acceder a las API con identidad de usuario, puede agregar un token de acceso de usuario:
Configuración de API personalizada
De forma predeterminada, el servicio MCP habilita las API comunes. Para habilitar otras herramientas o solo API o ajustes preestablecidos específicos, puede especificarlos mediante el parámetro -t
(separados por comas):
Colecciones de herramientas preestablecidas en detalle
La siguiente tabla detalla cada herramienta API y su inclusión en diferentes colecciones de ajustes preestablecidos, lo que le ayudará a elegir el ajuste preestablecido adecuado para sus necesidades:
Nombre de la herramienta | Descripción de la función | preset.default (Predeterminado) | preset.im.default | preset.base.default | lote base preestablecido | preset.doc.default | tarea predefinida.predeterminada | calendario preestablecido.predeterminado |
---|---|---|---|---|---|---|---|---|
im.v1.chat.crear | Crear un chat grupal | ✓ | ✓ | |||||
im.v1.chat.list | Obtener la lista de chat grupal | ✓ | ✓ | |||||
im.v1.chatMembers.get | Conseguir miembros del grupo | ✓ | ✓ | |||||
im.v1.mensaje.crear | Enviar mensajes | ✓ | ✓ | |||||
im.v1.mensaje.lista | Obtener lista de mensajes | ✓ | ✓ | |||||
bitable.v1.app.create | Crear base | ✓ | ✓ | ✓ | ||||
bitable.v1.appTable.crear | Crear una tabla de datos base | ✓ | ✓ | ✓ | ||||
bitable.v1.appTable.list | Obtener la lista de tablas de datos base | ✓ | ✓ | ✓ | ||||
bitable.v1.appTableField.list | Obtener la lista de campos de la tabla de datos base | ✓ | ✓ | ✓ | ||||
bitable.v1.appTableRecord.búsqueda | Buscar registros de la tabla de datos base | ✓ | ✓ | ✓ | ||||
bitable.v1.appTableRecord.crear | Crear registros de la tabla de datos base | ✓ | ✓ | |||||
bitable.v1.appTableRecord.batchCreate | Creación por lotes de registros de tablas de datos base | ✓ | ||||||
bitable.v1.appTableRecord.actualización | Actualizar los registros de la tabla de datos base | ✓ | ✓ | |||||
bitable.v1.appTableRecord.batchUpdate | Actualización por lotes de registros de la tabla de datos base | ✓ | ||||||
docx.v1.documento.rawContent | Obtener el contenido del documento | ✓ | ✓ | |||||
docx.builtin.import | Importar documentos | ✓ | ✓ | |||||
docx.búsqueda integrada | Buscar documentos | ✓ | ✓ | |||||
unidad.v1.permisoMember.crear | Agregar permisos de colaborador | ✓ | ✓ | |||||
wiki.v2.space.getNode | Obtener el nodo Wiki | ✓ | ✓ | |||||
wiki.v1.node.search | Buscar nodos Wiki | ✓ | ✓ | |||||
contacto.v3.usuario.batchGetId | Obtener ID de usuario por lotes | ✓ | ||||||
tarea.v2.tarea.crear | Crear tarea | ✓ | ||||||
tarea.v2.tarea.parche | Modificar tarea | ✓ | ||||||
tarea.v2.tarea.addMembers | Agregar miembros de la tarea | ✓ | ||||||
tarea.v2.tarea.añadirRecordatorios | Agregar recordatorios de tareas | ✓ | ||||||
calendario.v4.eventodecalendario.crear | Crear evento de calendario | ✓ | ||||||
calendario.v4.eventodecalendario.parche | Modificar evento del calendario | ✓ | ||||||
calendario.v4.eventodecalendario.obtener | Obtener evento del calendario | ✓ | ||||||
calendario.v4.freebusy.list | Consultar estado de libre/ocupado | ✓ | ||||||
calendario.v4.calendario.primario | Obtener el calendario principal | ✓ |
Nota : En la tabla, "✓" indica que la herramienta está incluida en ese preajuste. Usar
-t preset.xxx
solo habilitará las herramientas marcadas con "✓" en la columna correspondiente.
Configuración avanzada
Parámetros de la línea de comandos
La herramienta lark-mcp mcp
proporciona varios parámetros de línea de comandos para una configuración flexible del servicio MCP:
Parámetro | Corto | Descripción | Ejemplo |
---|---|---|---|
--app-id | -a | ID de la aplicación Feishu/Lark | -a cli_xxxx |
--app-secret | -s | Aplicación Feishu/Lark App Secret | -s xxxx |
--domain | -d | Dominio API de Feishu/Lark, el valor predeterminado es https://open.feishu.cn | -d https://open.larksuite.com |
--tools | -t | Lista de herramientas API para habilitar, separadas por comas | -t im.v1.message.create,im.v1.chat.create |
--tool-name-case | -c | Formato del nombre de la herramienta, las opciones son serpiente, camello, punto o kebab, el valor predeterminado es serpiente | -c camel |
--language | -l | Idioma de las herramientas, las opciones son zh o en, el valor predeterminado es en | -l zh |
--user-access-token | -u | Token de acceso de usuario para llamar a las API como usuario | -u u-xxxx |
--token-mode | Tipo de token de API, las opciones son auto, tenant_access_token o user_access_token, el valor predeterminado es auto | --token-mode user_access_token | |
--mode | -m | Modo de transporte, las opciones son stdio o sse, el valor predeterminado es stdio | -m sse |
--host | Host de escucha en modo SSE, el valor predeterminado es localhost | --host 0.0.0.0 | |
--port | -p | Puerto de escucha en modo SSE, el valor predeterminado es 3000 | -p 3000 |
--config | Ruta del archivo de configuración, admite formato JSON | --config ./config.json | |
--version | -V | Mostrar el número de versión | -V |
--help | -h | Mostrar información de ayuda | -h |
Ejemplos de uso de parámetros
- Uso básico (usando la identidad de la aplicación):
- Usando la identidad del usuario :
Nota : Los tokens de acceso de usuario se pueden obtener mediante el proceso de autorización de Feishu Open Platform o Lark Open Platform , o bien, puede usar la consola de depuración de la API para obtenerlos. Tras usar un token de acceso de usuario, las llamadas a la API se realizarán con la identidad de ese usuario.
- Configuración del modo de token específico :
Nota : Esta opción permite especificar explícitamente el tipo de token que se usará al llamar a las API. El modo
auto
(predeterminado) lo determinará el LLM al llamar a la API. - Especificación de dominios Lark o KA :
- Habilitar solo herramientas API específicas u otras herramientas API :
Nota : El parámetro
-t
admite las siguientes colecciones de herramientas preestablecidas:preset.default
: conjunto de herramientas predeterminado que contiene todas las herramientas preestablecidaspreset.im.default
- Herramientas relacionadas con la mensajería instantánea, como gestión de grupos, envío de mensajes, etc.preset.bitable.default
: herramientas relacionadas con Bitable, como creación de tablas, gestión de registros, etc.preset.bitable.batch
: herramientas de operación por lotes de Bitable, que incluyen funciones de creación y actualización de registros por lotespreset.doc.default
: herramientas relacionadas con los documentos, como lectura de contenido, gestión de permisos, etc.preset.task.default
: herramientas relacionadas con la gestión de tareas, como creación de tareas, gestión de miembros, etc.preset.calendar.default
: herramientas de gestión de eventos de calendario, como creación de eventos de calendario, consulta de estado libre/ocupado, etc.
- Uso del modo SSE con un puerto y host específicos :
- Configuración del idioma de las herramientas en chino :
Nota : Configurar el idioma en chino (
-l zh
) puede consumir más tokens. Si tiene problemas con el límite de tokens al integrar con modelos de idiomas grandes, considere usar la configuración predeterminada en inglés (-l en
). - Establecer el formato del nombre de la herramienta en CamelCase :
Nota : Al configurar el formato del nombre de la herramienta, puede cambiar cómo aparecen los nombres en el MCP. Por ejemplo,
im.v1.message.create
en diferentes formatos:- formato de serpiente (predeterminado):
im_v1_message_create
- formato camello:
imV1MessageCreate
- formato kebab:
im-v1-message-create
- formato de punto:
im.v1.message.create
- formato de serpiente (predeterminado):
- Uso de variables de entorno en lugar de parámetros de línea de comandos :
- Usando el archivo de configuración :
Además de los parámetros de la línea de comandos, también puedes usar un archivo de configuración en formato JSON para establecer parámetros:
Ejemplo de archivo de configuración (config.json):
Nota : Los parámetros de la línea de comandos tienen mayor prioridad que el archivo de configuración. Al usar tanto los parámetros de la línea de comandos como el archivo de configuración, estos últimos anularán la configuración correspondiente en el archivo de configuración.
- Modos de transporte :
lark-mcp admite dos modos de transporte:
- Modo stdio (predeterminado/recomendado) : adecuado para la integración con herramientas de IA como Trae/Cursor o Claude, comunicándose a través de flujos de entrada/salida estándar.
- Modo SSE : proporciona una interfaz HTTP basada en eventos enviados por el servidor, adecuada para escenarios donde la ejecución local no es posible.
Después del inicio, el punto final SSE será accesible en http://<host>:<port>/sse
.
Preguntas frecuentes
- Problema : No se puede conectar a la API de Feishu/Lark. Solución : Verifique su conexión de red y asegúrese de que los valores APP_ID y APP_SECRET sean correctos. Verifique que pueda acceder a la API de plataforma abierta de Feishu/Lark; es posible que necesite configurar un proxy.
- Problema : Error al usar user_access_token. Solución : Verifique si el token ha caducado. user_access_token suele tener una validez de 2 horas y debe actualizarse periódicamente. Puede implementar un mecanismo de actualización automática de tokens.
- Problema : No se pueden llamar ciertas API tras iniciar el servicio MCP, con errores de permisos insuficientes. Solución : Compruebe si su aplicación ha obtenido los permisos de API correspondientes. Algunas API requieren permisos adicionales de alto nivel, que se pueden configurar en la Consola del desarrollador o en la Consola del desarrollador de Lark . Asegúrese de que los permisos estén aprobados.
- Problema : Fallan las llamadas a la API relacionadas con la carga/descarga de imágenes o archivos. Solución : La versión actual no admite la función de carga/descarga de archivos e imágenes. Estas API serán compatibles en futuras versiones.
- Problema : La línea de comandos muestra caracteres ilegibles en Windows. Solución : Cambie la codificación de la línea de comandos a UTF-8 ejecutando
chcp 65001
en el símbolo del sistema. Si usa PowerShell, es posible que deba cambiar la fuente del terminal o la configuración de PowerShell. - Problema : Errores de permisos durante la instalación. Solución : En macOS/Linux, use
sudo npm install -g @larksuiteoapi/lark-mcp
para la instalación o modifique los permisos de la ruta de instalación global de npm. Los usuarios de Windows pueden intentar ejecutar el símbolo del sistema como administrador. - Problema : se excedió el límite de tokens después de iniciar el servicio MCP Solución : intente usar
-t
para reducir la cantidad de API habilitadas o use un modelo que admita tokens más grandes (como claude3.7). - Problema : No se puede conectar ni recibir mensajes en modo SSE. Solución : Compruebe si el puerto ya está en uso e intente cambiar a otro. Asegúrese de que el cliente esté conectado correctamente al endpoint SSE y esté gestionando el flujo de eventos.
Enlaces relacionados
- Plataforma abierta Feishu
- Plataforma Abierta Internacional Lark
- Documentación de la API de plataforma abierta de Feishu
- Documentación de la API de la plataforma abierta Lark
- Sitio web de Node.js
- Documentación de npm
Comentario
Agradecemos cualquier problema que nos ayude a mejorar esta herramienta. Si tienes alguna pregunta o sugerencia, compártela en el repositorio de GitHub.
This server cannot be installed
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.
Un kit de herramientas que permite a los asistentes de IA llamar directamente a las interfaces API de Feishu/Lark para escenarios de automatización como procesamiento de documentos, gestión de conversaciones y programación de calendario.
Related MCP Servers
- -securityFlicense-qualityEnables 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 -25JavaScript
- -securityFlicense-qualityEnables 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
- -securityAlicense-qualityAn MCP-based service that enables AI models to seamlessly interact with Feishu (Lark) platform, supporting document reading and chatbot messaging capabilities.Last updated -3963TypeScriptMIT License
- -securityFlicense-qualityA Model Context Protocol server that enables AI models to perform function calls through Feishu/Lark messaging platform, using your personal account (no bot configuration needed) to create a full-featured AI assistant.Last updated -91Python