Saltar al contenido principal

Documentation Index

Fetch the complete documentation index at: https://docs.faces.app/llms.txt

Use this file to discover all available pages before exploring further.

El server MCP (Model Context Protocol) de Faces permite que asistentes de IA como Claude construyan presentaciones interactivas y explorables diapositiva por diapositiva. Tu asistente escribe el código de cada diapositiva directamente, sin usar créditos.

¿Qué es MCP?

MCP es un protocolo abierto que permite a los asistentes de IA conectarse a herramientas externas. Cuando conectas Claude al server MCP de Faces, Claude puede:
  • Crear un proyecto en blanco para iniciar una nueva presentación (en tu equipo personal o en cualquier equipo al que pertenezcas)
  • Listar los equipos a los que perteneces para que el asistente elija el correcto
  • Listar y explorar tus proyectos existentes (incluyendo proyectos compartidos en equipo)
  • Leer y editar diapositivas individuales: inspecciona los archivos fuente de una diapositiva y escribe otros nuevos. Funciona para cualquier proyecto del que seas propietario, miembro de equipo (en proyectos compartidos del equipo) o editor invitado
No hay una herramienta del lado del server para “generar una presentación completa” expuesta a través de MCP. El asistente mismo es el autor de cada diapositiva. Para construir una nueva presentación, crea un proyecto en blanco y luego llena las diapositivas una por una.

Herramientas disponibles

Equipos

HerramientaDescripción
list_teamsLista los equipos a los que perteneces. Devuelve id, slug, name, role e isPersonal. Usa el id del equipo al llamar a create_project.

Proyectos

HerramientaDescripción
create_projectCrea un nuevo proyecto en blanco. Devuelve el projectSlug y la editorUrl. Acepta un teamId opcional, omítelo para usar tu equipo personal, o pasa un id de list_teams para crear el proyecto bajo un equipo específico.
list_projectsLista los proyectos a los que tienes acceso (propios, compartidos en equipo o compartidos contigo) con paginación (cursor, limit, published).
get_projectObtiene los detalles y las URLs de un proyecto a partir de un slug.
rename_projectRenombra un proyecto. El slug y las URLs se mantienen iguales.
duplicate_projectCrea una copia completa de un proyecto, incluyendo todas las diapositivas. Devuelve un nuevo projectSlug y una nueva editorUrl.

Publicación y dominios

HerramientaDescripción
publish_projectPublica la última versión de un proyecto, haciéndolo accesible públicamente. Devuelve la publishedUrl.
unpublish_projectSaca de línea un proyecto publicado. El proyecto y sus diapositivas se conservan.
get_project_urlObtiene la URL en vivo actual de un proyecto (subdominio o dominio personalizado más ruta) y los subdominios y dominios disponibles para cambiar.
update_project_urlCambia la ruta de un proyecto, intercambia subdominios o apúntalo a un dominio personalizado. Requiere un plan de pago.
create_custom_subdomainCrea un subdominio personalizado en el que se puede alojar un proyecto, luego conéctalo con update_project_url.
create_custom_domainConecta un dominio personalizado y devuelve los registros DNS para configurar. Conéctalo con update_project_url una vez que el DNS esté configurado.

Diapositivas

HerramientaDescripción
list_slidesLista todas las diapositivas de un proyecto. Devuelve los IDs y nombres de las diapositivas.
get_slideLee los archivos fuente de una diapositiva (face.tsx, face.content.json, face.controls.json).
create_slideCrea una nueva diapositiva vacía. Devuelve el nuevo slideId. Pasa editing: true para mostrar el gradiente de carga inmediatamente.
update_slideActualiza los archivos fuente de una diapositiva. Valida y compila antes de guardar; devuelve errores si el código no compila.
start_slide_editingMuestra el gradiente de carga en el editor antes de hacer ediciones.
finish_slide_editingLimpia el gradiente de carga después de editar (llámalo siempre, incluso si falla).
get_slide_guideObtiene la referencia completa de autoría de diapositivas (formatos de archivo, tipos de bloque, controles, tipografía, ejemplos). Llámalo antes de escribir código de diapositivas por primera vez.

Construir una nueva presentación

  1. get_slide_guide: lee la referencia de autoría (solo la primera vez)
  2. (Opcional) list_teams: si el usuario podría querer el proyecto en un equipo específico, lístalos y pregunta. Si no, omite este paso y se usará el equipo personal.
  3. create_project({ name, teamId? }): devuelve projectSlug y editorUrl
  4. Por cada diapositiva:
    1. create_slide({ projectSlug, name, editing: true }): devuelve slideId
    2. update_slide({ projectSlug, slideId, files }): escribe face.tsx, face.content.json, face.controls.json
    3. finish_slide_editing({ projectSlug, slideId }): limpia el gradiente de carga
  5. Comparte la editorUrl con el usuario.

Editar una diapositiva existente

  1. get_slide_guide: si aún no la has leído
  2. start_slide_editing(slideId)
  3. get_slide(slideId): lee los archivos actuales
  4. update_slide(slideId, files)
  5. finish_slide_editing(slideId)

Autenticación

El server MCP usa OAuth para la autenticación. Cuando te conectes por primera vez, se te pedirá iniciar sesión en tu cuenta de Faces a través del navegador. No necesitas gestionar API keys, el flujo OAuth se encarga de todo automáticamente. Como MCP se autentica por cuenta (no por equipo), los nuevos proyectos se crean por defecto en tu equipo personal a menos que el asistente pase un teamId explícito desde list_teams. Esto es diferente a la REST API y al CLI, que se autentican con API keys asociadas a un equipo y siempre crean proyectos bajo el equipo de la key. (Para el CLI, el equipo se elige con faces login --team <slug-or-id>; para las API keys REST, en Settings > Developers del panel.)

Control de acceso

Las herramientas MCP respetan el mismo modelo de permisos que el resto de Faces:
  • Propietario del proyecto: acceso completo de lectura/escritura.
  • Proyectos compartidos en equipo: cualquier miembro del equipo propietario puede leer y editar.
  • Colaboradores invitados: pueden leer; solo los colaboradores con permiso de edición pueden actualizar diapositivas.
Si el usuario autenticado no tiene acceso a un proyecto, las herramientas MCP devuelven “Project not found or you don’t have access”.