Cargando…

Esto está tardando más de lo esperado.

Volver

Muestra tus documentos en otro proyecto

Crea un token de API, pídele al toolkit un documento por proyecto y ruta, y muestra el HTML que devuelve en una página de tu propia aplicación.

Para qué sirve

Los documentos de tus proyectos viven en el toolkit. Otra aplicación tuya — un panel de administración, una intranet, una página de documentación — puede pedirle al toolkit uno de ellos y mostrarlo en su propia página. Quien abre esa página lee el documento sin tener cuenta en el toolkit.

La otra aplicación pide con un token de API, una clase de token distinta de la que usan tus asistentes. Un token de API solo funciona aquí, para listar y leer tus documentos; los tokens de tus asistentes no funcionan aquí, y un token de API no funciona para tus asistentes. Nada de esto puede crear, cambiar ni borrar un documento: esta entrada solo lee.

1. Crea un token de API

  1. Abre MCP en el menú.
  2. En Tokens de API para tus documentos, escribe un nombre — la aplicación que lo va a usar, por ejemplo WebLabor Admin.
  3. Presiona Generar token de API y cópialo. Se muestra una sola vez.

La lista de tokens, en Tus tokens de acceso, lo marca como API, así lo distingues de los tokens MCP que usan tus asistentes.

Un token de API lee todos tus proyectos, no solo uno. Si se filtra, quedan expuestos todos tus documentos. Guárdalo en el servidor de la otra aplicación, nunca en una página que descarga el navegador, y revócalo desde la lista de tokens en cuanto sospeches que se salió: la copia filtrada deja de funcionar en su siguiente llamada.

Un token de API recién generado en Tokens de API para tus documentos, con su valor tapado en esta imagen

2. Pide un documento

Manda el token en el encabezado Authorization y nombra el proyecto — el nombre de la carpeta de su repositorio — y la ruta del documento dentro de él:

curl https://<tu-toolkit>/api/projects/<proyecto>/documents/<ruta> \
  -H "Authorization: Bearer <tu-token-de-api>" \
  -H "Accept: application/json"

Por ejemplo, /api/projects/weblabor-admin/documents/help/getting-started.md. Un nombre de proyecto con espacios u otros caracteres especiales va codificado para URL: web%20labor.

3. Qué regresa

{
  "project": "weblabor-admin",
  "path": "help/getting-started.md",
  "number": null,
  "title": "Getting started",
  "status": null,
  "branch": null,
  "size": 1834,
  "created_at": "2026-10-01T15:20:11+00:00",
  "updated_at": "2026-10-12T09:02:45+00:00",
  "markdown": "# Getting started\n\n...",
  "html": "<h1 class=\"...\">Getting started</h1>..."
}
  • markdown es el documento tal como está guardado.
  • html es el mismo HTML que muestra el visor de Proyectos, ya renderizado.
  • title es el primer encabezado, o el nombre del archivo cuando no hay ninguno.
  • number, status y branch vienen llenos en los planes de analysis/, y en null en todo lo demás.

Lista una carpeta

Para armar un menú o un índice, pide los documentos de una carpeta:

curl "https://<tu-toolkit>/api/projects/<proyecto>/documents?folder=help" \
  -H "Authorization: Bearer <tu-token-de-api>" \
  -H "Accept: application/json"

La respuesta trae project, folder, branch y una lista documents con la ruta, el número, el título, el estado, la rama, el tamaño y las fechas de cada uno — sin su contenido. La carpeta incluye sus subcarpetas. Sin folder recibes todos los documentos del proyecto.

Agrega branch para ver una rama como la ve el visor: sus propios planes más todos los documentos sin rama. Sin branch recibes todos, tengan la rama que tengan.

Las respuestas que puedes esperar

Estado Cuándo Qué hacer
200 El documento, o la lista. Mostrarlo.
401 El token falta, está mal, fue revocado o no es un token de API. Revisa el encabezado, o genera un token de API nuevo.
404 El proyecto no existe, el documento no existe, o el proyecto es de otra persona. Revisa el nombre del proyecto y la ruta.
405 La petición no es de lectura — un POST, PUT, PATCH o DELETE. Pide con GET: aquí nada cambia un documento.

Cada error trae un message que una persona puede leer, siempre en inglés sea cual sea el idioma de tu toolkit, con lo que no se encontró o por qué se rechazó el token. Toda respuesta llega en JSON, mandes o no Accept: application/json. Un proyecto de otro usuario responde exactamente igual que uno que no existe, así que un token nunca revela de quién son los proyectos que hay.

Muéstralo en una página

Pide el documento desde el servidor de tu aplicación, nunca desde el navegador, para que el token no quede en la página. Después imprime el html:

$response = Http::withToken(config('services.toolkit.token'))
    ->acceptJson()
    ->get("https://<tu-toolkit>/api/projects/weblabor-admin/documents/help/getting-started.md");

if ($response->successful()) {
    echo $response->json('html');
}

El HTML trae las clases de Tailwind del visor. Si tu aplicación usa Tailwind, el documento se ve igual que en el toolkit; si no, dale estilo a las etiquetas tú mismo o renderiza markdown con tu propia librería de Markdown.

Los bloques de código llegan en el html con su fondo oscuro pero sin los colores de la sintaxis: el visor los colorea en el navegador con highlight.js cuando carga su página, así que ese color nunca forma parte del html. Para el mismo resultado, carga highlight.js —u otro resaltador— en tu página y aplícalo sobre los bloques pre code; hljs.highlightAll() hace justo eso.

Sigue por aquí