Blog
producto 7 min de lectura

Por qué pusimos MCP en el centro de FinButler

Una nota directa sobre por qué los asistentes usan las mismas reglas y permisos que las personas, y qué cambió cuando dejamos de tratar la IA como una función aparte.

Por Erick Agrazal, Fundador

Una laptop, un teléfono y una impresora de recibos se conectan a un mismo concentrador

El trimestre pasado casi publicamos un ícono de estrellitas.

El cambio estaba listo. Era el patrón conocido: una ventana con una estrella, un botón que decía Sugerir categorías y poco más. Funcionaba más o menos. El modelo elegía una categoría, la persona la aceptaba o rechazaba, la ventana se cerraba y el trabajo seguía. Parecía una pestaña añadida a un producto que en realidad no la necesitaba.

El problema no era el diseño. Esa misma mañana, dos de nosotros habíamos usado Claude para revisar las transacciones de un cliente antes de preparar sus impuestos. Claude podía leer la hoja de cálculo, pero no podía cambiar nada en FinButler. Tocaba abrir el asistente, pegar números, recibir sugerencias, cambiar de pestaña, editar la transacción, guardar, volver y pegar la siguiente fila. La función de IA que estábamos a punto de publicar no se parecía en nada a la forma en que nosotros usábamos la IA para trabajar.

Así que retiramos el cambio.

Esta es la historia de lo que hicimos después, por qué MCP ahora conecta las piezas de FinButler y qué cambió cuando dejamos de tratar a los asistentes como una función aparte.

La regla que ordenó todo

Después de retirar ese cambio, escribimos una regla sencilla:

Una persona y un asistente deben poder hacer la misma tarea en FinButler, con las mismas reglas y sin copiar datos en una ventana de chat.

De esa frase salen tres condiciones:

  1. Los mismos datos y las mismas reglas. Todo lo que un asistente pueda ver debe pasar por los mismos permisos que usa cualquier integrante del equipo. No hay una cuenta especial ni un modo de IA con acceso adicional.
  2. Las mismas tareas. Si un asistente puede categorizar, tú también puedes hacerlo de la misma forma. Si tú puedes invitar a un cliente, el asistente también puede hacerlo, con las mismas aprobaciones.
  3. Sin sacar los datos. No deberías tener que copiar tus números a un chat para usar un asistente. No podemos resolver todos los flujos de trabajo de internet, pero sí podemos evitar que FinButler te lo pida.

No se puede pegar un asistente encima de un producto y esperar que todo encaje. Tuvimos que rehacer partes que ya estaban publicadas. No fue cómodo, pero fue la decisión correcta.

Primero tuvimos que ordenar los espacios de trabajo

FinButler ya tenía espacios de trabajo para equipos, firmas y clientes. Existen porque las finanzas casi siempre involucran a varias personas. El dueño de un negocio pequeño no necesita ver lo mismo que su tenedor de libros, su contador o su banco.

Nuestro error fue tratar el espacio de trabajo como un detalle de la pantalla. Elegías uno arriba y la aplicación filtraba la información. Eso funcionaba mientras una persona revisaba todo con sus propios ojos. Dejó de funcionar cuando le pedimos a un asistente: “resume esta semana”. ¿La semana de quién? ¿Dentro de cuál espacio? ¿Con qué datos visibles y cuáles ocultos?

Entonces hicimos el trabajo lento. El espacio de trabajo se convirtió en la regla que controla cada lectura, cambio, reporte, exportación y llamada de un asistente. La web, la aplicación para contadores, el móvil, los asistentes y el servidor MCP usan esa misma regla.

La idea importante es esta: el sistema de permisos es parte del producto, no una capa añadida al final.

Por qué MCP y no un complemento para cada asistente

Cuando los permisos estuvieron claros, faltaba decidir cómo se conectaría un asistente. Consideramos tres opciones:

  • Un GPT personalizado en OpenAI.
  • Una extensión de escritorio para Claude.
  • Un servidor MCP administrado por nosotros.

Pensamos en mantener las tres. No elegimos MCP por purismo, sino para evitar mantener una integración distinta por cada asistente. Si una firma usa Claude, otra usa ChatGPT y después aparece una herramienta nueva, no queremos reconstruir las mismas acciones tres veces.

Con MCP escribimos la integración una vez. Los clientes compatibles se conectan al mismo punto y encuentran las mismas acciones para listar transacciones, proponer categorías, preparar una revisión de presupuesto, invitar a un cliente o exportar un reporte. El protocolo es poco llamativo. Eso es una ventaja.

También queríamos evitar que FinButler dependiera por completo de la hoja de ruta de un solo proveedor. MCP se parece más a un conector común: podemos admitir nuevos asistentes sin cambiar la forma en que cuidamos tus permisos.

Pendiente de revisión es la regla, no una opción avanzada

Cuando abres FinButler y eliges Sugerir categorías, el asistente propone cambios. No aplica nada por su cuenta. Tú ves lo que queda pendiente y decides.

Cuando un asistente pide categorizar transacciones por MCP, ocurre lo mismo. El asistente propone, te explica lo que encontró y tú decides.

Es el mismo proceso. No existe un modo de automatización que cambie todo en silencio. Cada espacio puede tener una regla como: “para transacciones menores de $50, aplica automáticamente una categoría que coincida con mis decisiones de los últimos 90 días”. Esa regla la escribes tú. Ni el asistente ni el cliente MCP pueden ignorarla.

Esto es lo que más mencionan quienes prueban FinButler. No hablan primero del modelo ni del chat. Hablan de poder decidir qué se aprueba y qué no.

Lo que quitamos

También tuvimos que recortar. Quitamos una página de “información con IA” que repetía datos del panel. Eliminamos un plan llamado “IA” porque daba a entender que la IA era un producto aparte. Rehicimos dos pasos del registro porque agregaban datos sin respetar bien los espacios de trabajo.

Todavía añadimos bancos más despacio de lo que me gustaría. Poner los permisos y MCP en el centro tomó varias semanas que no habíamos presupuestado. Pero ahora cada cosa nueva parte de una base común. Fuimos más lentos al principio para trabajar mejor después.

Lo que puedes esperar de nosotros

Si estás pensando en guardar tus números en FinButler, quiero que puedas contar con esto:

  • Tus datos se quedan en tu espacio de trabajo. Los asistentes los consultan; no se los llevan.
  • Tú decides qué se aprueba. Si activas una regla automática, esa regla la escribiste tú.
  • Nosotros administramos el punto de conexión MCP. Tú no mantienes servidores y puedes revisar cada acción.
  • Cuando aparezcan nuevos asistentes, los conectaremos mediante el mismo MCP y los mismos permisos.

Si algún día publicamos un botón de estrellitas que ignore estas reglas, escríbeme. Te deberé un café.

Erick