Skip to main content

Visión general de herramientas

Linkly AI expone nueve herramientas a los asistentes de IA a través de MCP (Model Context Protocol). El núcleo es un flujo de trabajo progresivo de acceso a documentos:
A su alrededor hay tres herramientas de descubrimientolist_libraries (listar bibliotecas de conocimiento), explore (visión general de colecciones de documentos) y find_paths (localizar rutas de carpeta por palabra clave para alimentar el path_glob de search) — más list (enumerar un contenedor: los archivos de una carpeta, una biblioteca o sus notas) y la única herramienta de notas: note_save (crear o editar una nota).

search

Buscar documentos y encontrar resultados relevantes

outline

Ver el esquema del documento para comprender su estructura

grep

Encontrar patrones de texto específicos con coincidencia regex

read

Leer el contenido del documento para obtener información detallada

list_libraries

Listar las bibliotecas de conocimiento y sus cantidades de documentos

explore

Visión general de los temas y la estructura de la colección de documentos

find_paths

Localizar rutas de carpeta por palabra clave para alimentar el path_glob de search

list

Listar las entradas de un contenedor: una carpeta, una biblioteca o sus notas

note_save

Crear o editar una nota, la única herramienta de escritura
Salvo note_save, todas son herramientas de solo lectura: leen sus documentos, sin modificar nada. note_save solo puede escribir en el directorio de notas y no existe ninguna herramienta de borrado: las notas solo se eliminan desde la propia aplicación. Busca en los documentos locales indexados y devuelve la lista de resultados más relevantes.

Parámetros

Si el modelo vectorial aún se está descargando, la búsqueda degradará automáticamente a modo de solo palabras clave, sin afectar el uso.
Acerca del filtrado y ordenamiento por fecha:
  • Cuando el usuario indique una ventana temporal explícita (“el mes pasado”, “en 2024”, “los últimos tres meses”), use modified_after / modified_before.
  • Cuando el usuario solo dice “reciente”, “más reciente”, “más antiguo” sin un rango fijo, use time_sort=newest u oldest.
  • Ambos pueden combinarse: “el más antiguo en 2024” es modified_after=2024-01-01 + modified_before=2024-12-31 + time_sort=oldest.
  • Para fechas relativas (“el mes pasado”), lea primero la hora UTC actual desde el campo [meta] now=... al final de cualquier respuesta de herramienta, luego calcule la fecha — vea Metadatos de respuesta más abajo.

Campos de respuesta

Cada resultado de búsqueda incluye la siguiente información:

Ejemplos de uso

Esquema (outline)

Obtiene el esquema estructurado y los metadatos de uno o más documentos, ayudando a comprender rápidamente la estructura del documento y localizar las secciones objetivo.

Parámetros

Cuándo usar el esquema

La función de esquema funciona mejor con PDF con marcadores, Markdown, DOCX, PowerPoint (PPTX) y EPUB. Es especialmente efectiva al leer documentos extensos y libros. El soporte de esquema para texto plano y PDF sin marcadores se añadirá en futuras iteraciones.

Ejemplos de uso

Grep

Localiza líneas específicas dentro de un solo documento mediante un patrón regex. Es ideal para documentos con has_outline=false donde el esquema no está disponible. Utilícelo después de search para ubicar posiciones exactas de nombres, fechas, términos, identificadores o cualquier patrón, y luego use read con offset para ver el contexto completo. Funciona con todos los tipos de documentos (PDF, Markdown, DOCX, PPTX, EPUB, TXT, HTML). Para buscar en múltiples documentos, llame a grep una vez por documento.

Parámetros

Cuándo usar Grep vs Esquema

Ejemplos de uso

Lectura (read)

Lee el contenido del documento con posicionamiento por número de línea y paginación, ideal para leer partes específicas de documentos extensos. El comportamiento de la herramienta Read es consistente con el del SDK de Claude AI, lo que garantiza resultados óptimos en diversos modelos de IA agéntica.

Parámetros

Leer documentos con ilustraciones

En muchos documentos (sobre todo notas en Markdown y documentación técnica) la información clave está en las ilustraciones. read resuelve las referencias a imágenes que aparecen dentro del rango de líneas que está leyendo hacia los documentos de imagen ya indexados, y las adjunta al final del resultado. image_text controla cuánto se adjunta: full tiene límites de presupuesto: 2000 caracteres como máximo por imagen y 20 000 caracteres en total por llamada. Las imágenes que se pasen del presupuesto bajan automáticamente a abstract, con una indicación de cómo leerlas por separado.
Sale mucho más a cuenta usar el abstract predeterminado para decidir qué imagen interesa y luego hacer un read específico sobre su doc_id, que lanzar un full de entrada.

Formato de contenido

La herramienta Read devuelve contenido con números de línea para facilitar la referencia y el posicionamiento:

Estrategia de paginación

Para documentos extensos, se recomienda la lectura por bloques:
Combinar con el esquema es aún más efectivo: localice el rango de líneas de la sección objetivo a través del esquema y luego use read para leer con precisión el contenido de ese intervalo.

Ejemplos de uso

Listar bibliotecas (list_libraries)

Lista todas las bibliotecas de conocimiento configuradas por el usuario, junto con sus descripciones y cantidades de documentos.

Parámetros

No se requieren parámetros.

Casos de uso

  • Cuando el usuario pregunta “¿qué bibliotecas tengo?”
  • Antes de utilizar el parámetro library en search, para verificar el nombre de una biblioteca

Explorar (explore)

Obtiene una visión panorámica de todos los documentos indexados o de una biblioteca específica. Devuelve la distribución de tipos de documentos, la estructura de directorios (con recuentos de archivos y medianas de cantidad de palabras) y las palabras clave principales (con atribución de origen).

Parámetros

Casos de uso

  • El usuario desea saber qué contiene su base de conocimiento o colección de documentos
  • El usuario no tiene un tema de búsqueda específico y desea descubrir temas y direcciones disponibles
  • El asistente de IA necesita comprender la escala y la distribución temática para formular estrategias de búsqueda efectivas
Después de explorar, utilice las palabras clave y los nombres de directorio de la salida como pistas para consultas search posteriores.

Localización de rutas (find_paths)

Realiza una coincidencia aproximada de palabras clave contra el campo ruta de archivo de los documentos indexados, agrega las coincidencias a nivel de carpeta y devuelve los mejores candidatos. Está posicionada como una herramienta auxiliar de search: cuando el usuario nombra un contenedor (“en mis notas de Notion”, “en mi carpeta de papers de Dropbox”) sin conocer su ruta en el disco, llame primero a find_paths para descubrir la ruta real, y luego pásela como path_glob a search. El nombre real de la carpeta en el disco a menudo difiere del nombre coloquial del usuario (por ejemplo, una exportación puede residir en Notion-Export-c58e430f... en lugar de simplemente Notion), por lo que adivinar directamente un path_glob es frágil.

Parámetros

Campos de respuesta (modo JSON)

Comportamiento de agregación

  • Los archivos cuyos patrones solo coinciden con el segmento de nombre de archivo (sin coincidencia en algún segmento de directorio) se descartan silenciosamente — esta es una herramienta para “encontrar carpetas”, no para “encontrar archivos”. Si una consulta no devuelve carpetas candidatas a pesar de que existan archivos coincidentes, recurra a llamar search directamente.
  • Cada coincidencia se agrupa por la posición menos profunda de cualquier patrón en la ruta, truncada en el siguiente /. Así local:///Users/me/Documents/Notion-Export-abc/workspace/page.md coincidente con Notion se agrega bajo .../Documents/Notion-Export-abc, sin importar cuán profundo viva el archivo.

Cuándo usarla

  • El usuario nombra un contenedor con una palabra ambigua o multilingüe (“en mis notas de Notion”, “en mi carpeta de papers de Dropbox”, “en mi respaldo de trabajo”) y no conoce la ruta real
  • Antes de search, para determinar el valor de path_glob

Cuándo no usarla

  • Consultas puramente de contenido / tema (“encuentra mis CV”, “encuentra papers de IA”) — llame search directamente; su búsqueda híbrida ya cubre título, nombre de archivo, contenido y ruta
  • Filtrado solo por tipo de archivo (“todos los PDF”) — llame search con path_glob="*.pdf" directamente
  • Consultas vagas sin intención de contenedor (“encuentra cosas recientes”) — llame search

Ejemplo de uso

Listar (list)

Lista las entradas de un contenedor, sin hacer coincidencia de texto completo: para buscar contenido por palabra clave o por significado, use search. Se admiten tres contenedores: folder (archivos indexados bajo un directorio del disco), library (los archivos de una biblioteca) y notes (las notas locales en forma de tarjeta). Reparto de papeles entre herramientas: explore = visión global → find_paths = encontrar un directorio → list = listar los archivos de un contenedor conocido → outline / read = leer el contenido. El listado es un barrido recursivo plano de todo el subárbol — no se devuelve ningún árbol de directorios; para profundizar, siga las rutas absolutas de las entradas o use find_paths.

Parámetros

Campos de respuesta

Las entradas de folder / library traen: doc_id, title, path absoluta, doc_type, word_count, total_lines, has_outline, modified_at (milisegundos Unix; el mtime del sistema de archivos), keywords, snippet (null salvo que los extractos estén activados) y skip_reason — un skip_reason no nulo significa que el contenido no es legible, así que no le haga read / grep. Use total_lines + has_outline para decidir entre outline y read. En los ámbitos locales total cuenta todo el conjunto filtrado; una biblioteca en la nube puede devolver total: null cuando el recuento completo se desconoce — en cualquier caso, pagine con offset + has_more. Las entradas de notes traen: doc_id (que puede pasarse a read / grep / outline), note_id y la version actual (ambos son las credenciales de bloqueo optimista que necesita note_save para editar), title, ruta absoluta, created_at / modified_at (milisegundos Unix), tags, información de origen y el snippet que se adjunta por defecto. La respuesta incluye además available_tags: las 50 etiquetas más usadas entre todas las notas, listas para aprovecharlas como filtro tags en la siguiente llamada.
Puntero README: solo cuando se lista con un path explícito (scope folder o una library local) y un archivo de tipo README está directamente en ese directorio (no en un subdirectorio), la respuesta trae un puntero readme de nivel superior. Las bibliotecas en la nube nunca lo devuelven. Si está presente y necesita entender para qué sirve la carpeta, lea antes ese documento.
Primero el sistema de archivos (notes): una nota recién escrita aparece de inmediato en la lista, pero con doc_id a null e indexed a false (el número de palabras y de líneas también vienen vacíos) hasta que termine la indexación. Por eso es normal que «una nota recién escrita se liste pero no se encuentre al buscar»: no se ha perdido.title también puede ser null: las notas cuyo nombre de archivo se generó automáticamente no tienen un título aprovechable, así que en ese caso hay que identificarlas por el extracto, las etiquetas y las fechas.

Bibliotecas en la nube

folder solo entiende rutas de disco locales. Para listar una biblioteca en la nube, use scope="library" con library="cloud://<owner>/<slug>" (disponible con --remote) y pase en path un prefijo de directorio relativo — exactamente la forma que devuelve el find_paths de la nube. El prefijo se aplica a la unión de todas las fuentes de la biblioteca; un prefijo inexistente no puede distinguirse de un directorio vacío — en la primera página (offset=0) ambos devuelven total: 0, con una pista si se pasó un path. El listado en la nube difiere del local en algunos puntos: sort="name" no está disponible, skip_reason es siempre null, los extractos se recortan a unos 120 caracteres y, pasada la primera página, total puede ser null — pagine con has_more.

Ejemplos de uso

Guardar notas (note_save)

Crea o edita una nota local en formato Markdown. Es la única herramienta que escribe, y solo puede escribir en el directorio de notas; los metadatos YAML los genera el servidor por completo, así que quien llama no tiene que ocuparse de ellos.

Parámetros

Dos reglas que hay que conocer

Por esta vía solo se acepta la parte de Markdown que la barra de herramientas de la interfaz es capaz de producir: párrafos y saltos de línea, negrita, tachado, listas ordenadas y sin ordenar, y texto plano.Los encabezados, la cursiva, las citas, el código, los enlaces, las tablas, las listas de tareas, las imágenes y el HTML suelto se rechazan con NOTE_INVALID_INPUT. Cuando escribe usted a mano en la aplicación no tiene esta limitación.Los #tag que aparecen en el texto (fuera del código) son las etiquetas de la nota: el texto es la única fuente de verdad, igual que cuando escribe usted en el editor de la aplicación. Para quitar una etiqueta, elimine su #tag; el parámetro tags solo sirve para añadir. Las notas escritas por versiones anteriores, con las etiquetas únicamente en el YAML, se reparan solas: en la primera edición de la IA se completan en el texto los #tag que falten.
El orden correcto para editar es:
  1. list (con scope="notes") para obtener note_id y version
  2. read(doc_id) para leer el texto completo actual
  3. note_save con mode="edit", note_id, base_version (la version recién leída) y el texto completo ya modificado: deje los #tag que quiera conservar y borre los que quiera quitar
Si base_version ha caducado (porque la nota se modificó entretanto), se devuelve NOTE_VERSION_CONFLICT junto con el número de versión real: hay que releer, fusionar y reintentar, nunca sobrescribir a ciegas.Cada respuesta correcta devuelve el content efectivo de la nota (puede que el servidor haya añadido algún #tag) y su nueva version: cualquier edición posterior debe partir del content devuelto, nunca del que usted envió. Las notas que todavía no se han indexado tienen doc_id a null, así que esta es además la manera de editar una nota recién creada. Nunca reescriba una nota entera basándose solo en el extracto.
No hay herramienta de borrado. Las notas solo puede eliminarlas el usuario desde la interfaz de la aplicación.

Metadatos de respuesta

Cada respuesta exitosa de herramienta lleva la hora UTC actual, lo que permite a quien llama calcular fechas relativas (“el mes pasado”, “este año”, “los últimos 30 días”) sin depender de la fecha de corte de entrenamiento del modelo.
  • Salida Markdown: un bloque de pie de página al final de la respuesta, formateado como:
  • Salida JSON: un objeto _meta de nivel superior:
Las respuestas de error (isError: true) no incluyen estos metadatos — el cuerpo del error ya transmite la causa, y agregar una marca de tiempo solo diluiría la señal. Cuando el usuario use una fecha relativa, lea now desde la respuesta de herramienta más reciente, calcule la fecha ISO 8601 correspondiente, y pásela a modified_after / modified_before de search.

Ejemplos de flujo de trabajo

Flujo de trabajo completo: vía CLI

El siguiente ejemplo demuestra cómo realizar una búsqueda completa de documentos mediante CLI:

Flujo de trabajo completo: vía MCP

Cuando el asistente de IA invoca las herramientas a través del protocolo MCP, el formato de solicitud es el siguiente:

Preguntas frecuentes

Linkly AI actualmente es compatible con los siguientes formatos:La transcripción de voz del audio y el vídeo está desactivada por defecto: estos archivos entran igualmente en el índice y se encuentran por su nombre, pero para poder buscar «lo que se dice dentro» hay que activar antes Transcripción de audio y Transcripción de vídeo en Ajustes → Índice. Más detalles en Ajustes de indexación.
Si el documento no tiene un esquema disponible (has_outline: false), puede:
  1. Usar directamente la herramienta read para navegar por el contenido del documento página por página
  2. Leer primero el inicio del documento (200 líneas por defecto) para tener una idea general del contenido antes de decidir si continuar leyendo
Flujo recomendado:
  1. Primero, comprender la estructura del documento a través de outline (si tiene esquema)
  2. Según el rango de líneas del esquema, usar los parámetros offset y limit de read para leer con precisión las secciones objetivo
  3. Leer como máximo 500 líneas por vez, paginando mediante el ajuste de offset
El puerto predeterminado es 60606. Si ese puerto está ocupado, la aplicación intentará automáticamente otros puertos. Puede consultar el puerto en uso en la configuración de Linkly AI Desktop.
Puede intentar:
  • Usar palabras clave más precisas
  • Usar descripciones en lenguaje natural (aprovechando la coincidencia semántica vectorial)
  • Combinar palabras clave y sinónimos, como "authentication auth login sign-in"
  • Usar --type para filtrar tipos de documentos específicos y reducir el alcance de la búsqueda