Saltar al contenido
fastpad

Tu app de notas tiene un segundo usuario, y no es una persona.

Fastpad es un editor de bloques con un endpoint MCP y una CLI, fp. Los agentes buscan, leen y recorren tus notas con un token limitado a las notas que elegiste. Cada escritura que hacen llega como una propuesta junto a tu texto. Aceptar es otra llamada, y un token solo puede hacerla si lo creaste con ese permiso — y entonces cada aceptación queda registrada para que la revises o la deshagas.

POST https://mcp.fastpad.aiRevisión MCP 2026-07-28

Todas las capacidades, desde ambos lados.

No hay un modo agente añadido sobre una app para humanos. El árbol de bloques, los enlaces, las propiedades tipadas y el índice de búsqueda son una sola cosa. El navegador y la superficie de herramientas son dos puertas hacia ella.

Doce herramientas compuestas, no treinta y dos estrechas, en una lista congelada y ordenada de forma determinista que debe caber en 5000 tokens — un coste que se paga en cada conversación, y que CI comprueba en lugar de dar por supuesto.

Lo que haces túLo que llama un agente
Abrir la página de tu cuentafastpad_capabilitiesanyIdentidad, permisos concedidos, tus notas escribibles, límites.
Buscar desde la paleta de comandosfastpad_searchsearch:readIds, títulos, rutas, anclas y un fragmento. Nunca el cuerpo.
Abrir una notafastpad_fetchnotes:readMarkdown con anclas de bloque, o un resumen sin la prosa.
Seguir los retroenlaces hasta entender el conjuntofastpad_contextnotes:readRecuperación, expansión del grafo, deduplicación y reordenación, ajustadas al presupuesto.
Filtrar una vista de colección por propiedadfastpad_querynotes:readFiltros JSON, no un lenguaje de consulta. Nunca el cuerpo.
Abrir el panel de retroenlacesfastpad_graphgraph:readUn salto, cada arista con su evidencia.
Escribirfastpad_proposenotes:proposeLa única escritura. Devuelve un id de turno y una URL de revisión.
Consultar una propuesta que hicistefastpad_turnnotes:readEstado y diff, sobre uno de tus propios turnos.
Abrir el carril de revisiónfastpad_changesnotes:readEl flujo de cambios desde un cursor.
Pasar el cursor por un bloque para ver quién lo escribiófastpad_historynotes:readUna entrada — autor, origen, estado de revisión.
Pulsar Aceptarfastpad_turn { action: "accept" }turns:acceptAplica la propuesta a la nota — solo con un token que creaste con este permiso. Los bloques que ratifica quedan marcados como aceptados por un agente, y la aceptación se lista para que la revises.El permiso nunca forma parte de una concesión por defecto y solo una persona puede otorgarlo. Lo que acepta un token sigue marcado como aceptado por un agente — ningún umbral de recuperación por encima de «any» lo admite — hasta que lo marques como revisado en la página de actividad de agentes, donde también puedes revertirlo. Revertir es solo para una sesión humana. Sin el permiso, fp accept termina con código 8: «denegado por política», y el significado documentado nombra el permiso que faltaba.

La escritura de un agente es una propuesta. Aceptar es una segunda llamada, aparte.

Cuando un agente escribe, sus operaciones se guardan en un contenedor junto a tu bloque, no dentro de él. La propuesta es duradera desde el momento en que se hace y lleva un id de turno y una URL de revisión. Tu documento permanece intacto hasta que alguien acepta — tú, en una sesión de navegador, o el propio agente, pero solo con un token que creaste con el permiso de aceptar. En ambos casos la aceptación dice quién la hizo y cómo, y la de un agente aparece en tu página de actividad de agentes.

Esto no es desconfianza en la calidad del modelo. Una operación aplicada a una nota es duradera y se replica a todos los dispositivos conectados en el instante en que llega — así que si contenido inyectado dirigió al agente, ese texto ya está en tu teléfono antes de que nadie haya visto un diff. Una propuesta es la única forma en la que la revisión ocurre antes de la replicación y no después, y por eso un token no puede ni escribir ni aceptar por defecto: ambas son concesiones que haces a propósito.

Hay exactamente dos excepciones, y ambas son concesiones.

Aplicación automática: un token cuyas escrituras van directas al documento. Esos bloques siguen marcados como escritos por un agente y sin revisar para siempre, así que nunca se convierten en algo que otro agente pueda citarte como un hecho establecido. Aceptar: un token que puede ratificar sus propias propuestas. Esos bloques quedan marcados como aceptados por un agente, que ningún umbral de recuperación por encima de «any» admite, y cada aceptación así se escribe en el registro de auditoría y se lista en la página de actividad de agentes hasta que la marques como revisada o la reviertas. Ninguna de las dos concesiones convierte un token en una persona, y ninguna puede revertir.

La misma escritura, por tres puertas.

Una propuesta, hecha desde una shell, desde un modelo y desde curl. La petición es la misma porque la superficie es la misma: no hay un camino de segunda para la CLI.

bash
fp propose 01JBQ7W3ZK6MXNZ8V2Q4T7 \
  --op 'replace:01JBQ7W3ZK6MXNZ8V2Q4T8' \
  --text "Postgres 18.6, not 19 — pgvector 0.8.6 needs it."

# → turn 01JBQ8A1M4WPVR0C6E9H2K  status open
# → review at https://www.fastpad.ai/turns/01JBQ8A1M4WPVR0C6E9H2K

Tres cosas que un token no puede hacer, por construcción.

No es una política, ni un prompt, ni un modelo decidiendo portarse bien. Cada una se aplica en un sitio que puedes ir a leer.

Escribe en él. No se guarda nada.

Este es el editor real — el mismo que monta la app, no una imagen de él. Pulsa / para el menú de bloques, o escribe tres acentos graves y elige un lenguaje. No hay cuenta, ni nota, ni petición de red, ni servidor al otro lado.

PruébaloNada de esto se guarda

Pulsa / para abrir el menú de bloques. Todo lo que escribas se queda en esta pestaña.

Debajo hay una app de notas que se toma la estructura en serio.

Bloques estructurados con propiedades tipadas, y colecciones y vistas sobre ellos. Enlaces y retroenlaces reales a partir de aristas tipadas, no una búsqueda de texto ejecutada al renderizar. Un esquema, una paleta de comandos, y búsqueda por texto y vectorial tras una única ruta de recuperación que usan por igual la app y tu agente.

Cada bloque tiene un ULID creado al nacer, y sobrevive a la edición: divide un bloque y el id se queda con la primera mitad. Eso es lo que hace que un enlace a mitad de un párrafo, o la cita de un agente, siga significando lo mismo el mes que viene.

Y se abre hacia fuera. Exportación a Markdown, una ruta .md para cada nota, y llms.txt para todo el espacio de trabajo. Tu contenido no queda secuestrado por el formato en que se guarda.

Si usas un vault

La misma nota, leída dos veces.

Una nota Markdown, cuatro wikilinks. Léela como lo hace Obsidian y luego como lo hace Fastpad. No cambia ni un carácter — ni un enlace, ni la cuenta. Lo que cambia es lo que cada enlace puede recordar: qué tipo de conexión es, quién la hizo y con qué evidencia. Elige un enlace y pregúntale.

Cómo leer esta nota

Un enlace es un enlace.

q3-pricing-decision.md4 enlaces · sin cambios

Decisión de precios del T3

· · ·

¿Por qué está conectado esto?

Elige un enlace para preguntarle qué es.En esta lectura solo hay una respuesta.

Las diez relaciones que puede ser una arista:

Si usas un vault, ya sabes usar esto. Obsidian acertó con los wikilinks, los retroenlaces, el grafo y los archivos planos, y no los hemos cambiado. En Obsidian un enlace es un enlace, y esa simplicidad es la razón de que un vault sea rápido de construir y fácil de confiar. Cambiamos una cosa: lo que un enlace puede recordar. El mismo enlace aquí lleva además una relación — una de diez, incluidas supersedes y contradicts, dos cosas para las que un wikilink no tiene palabra — más quién la hizo, si fue afirmada o solo inferida, y la evidencia, guardada cuando se creó la arista en vez de inventada cuando la miras. Las aristas inferidas se dibujan como conjeturas y se desvanecen si no las consolidas, así que un agente puede sugerir una conexión sin tocar tu grafo. Es la misma regla que el resto de esta página: proponer, nunca sobrescribir.

Qué pierdes, en ambas direcciones.

Los bloques estructurados de Notion, los enlaces y la propiedad de los archivos de Obsidian, y una plataforma de agentes que ninguno ofrece — esa es una descripción honesta de la ambición, no de la madurez.

Si no ejecutas agentes contra tus notas, esta página resuelve un problema que no tienes.

Si lo haces, hoy la alternativa es entregarle a un modelo todo tu archivo y confiar. Los códigos de salida existen por la misma razón: una CLI que siempre termina en 0 no se puede usar en un script con set -e sin analizar prosa.

No tenemos logos que enseñarte.

Fastpad se lanzó este año. Cualquier muro de clientes, cifra de uso o testimonio aquí estaría inventado, y en una página sobre si puedes confiar en un límite de escritura, un solo número inventado envenenaría todas las afirmaciones reales a su alrededor.

Así que esto es lo que un producto nuevo puede ofrecer honestamente: una superficie que se describe a sí misma, y documentación que fija lo que hace — incluidas las partes que no favorecen.

Llama a fastpad_capabilities antes de registrarte. Responde sin token.

Crea un token. Apunta algo hacia él.

Tres pasos, y el tercero es una persona pulsando Aceptar — o leyendo lo que un agente aceptó.