¿Cansado de hojas de cálculo interminables y apps de finanzas genéricas? Para los que amamos la eficiencia y el control de la terminal, llega MCP Finance Assistant: un asistente financiero personal, modular y de código abierto que vive en tu terminal y se conecta directamente con Notion para darte el control total de tus datos.
Este proyecto combina la potencia de los Grandes Modelos de Lenguaje (LLM) como OpenAI y Mistral, una interfaz de usuario rápida construida con Textual en Python, y un servidor de herramientas robusto sobre Node.js, todo orquestado para que gestionar tus finanzas sea más sencillo e inteligente.
¿Qué hace a MCP Finance Assistant especial?
Este no es solo otro script para registrar gastos. Es una arquitectura completa pensada para ser modular y extensible.
- Interfaz Rápida en la Terminal (TUI): Olvídate del mouse. La interfaz, construida con el framework Textual de Python, es increíblemente rápida y te permite interactuar con tus finanzas sin distracciones.
- Notion como tu Base de Datos Central: Toda tu información financiera (cuentas, transacciones, categorías) se almacena de forma segura en tus propias bases de datos de Notion. El proyecto incluye una plantilla para que empieces en segundos.
- Agentes Inteligentes con LangGraph: El cerebro del asistente está construido con LangGraph. Un agente clasificador es capaz de procesar extractos bancarios (incluso escaneados, gracias a su función de OCR), extraer cada transacción y registrarla automáticamente. Otro agente se especializa en responder tus preguntas, como "¿Cuánto gasté en comida el mes pasado?".
- Arquitectura Cliente-Servidor Desacoplada: El proyecto se divide en dos partes principales:
- El Cliente (Python): Maneja la interfaz de usuario, la lógica de los agentes y la comunicación con los LLMs.
- El Servidor (Node.js/TypeScript): Actúa como un proveedor de herramientas compatible con el Model Context Protocol (MCP). Expone de forma segura las funciones para interactuar con Notion (ej:
insert-movement
,get-total-by-category
).
Un Vistazo Técnico: ¿Cómo Funciona?
La magia del proyecto reside en cómo sus componentes colaboran.
- Cuando envías un mensaje, el cliente Python lo recibe.
- Un nodo enrutador determina si tu petición es una consulta o si has subido un archivo (como un PDF o una imagen de un extracto bancario).
- Si es un archivo, el nodo OCR lo procesa usando la API de Mistral para extraer el texto en formato Markdown.
- El nodo clasificador recibe este texto, identifica cada transacción, la categoriza y llama a las herramientas del servidor para guardarlas en Notion.
- Si es una pregunta, el nodo de Q&A la interpreta y utiliza las herramientas de consulta del servidor para encontrar la respuesta en tus datos de Notion.
- Todas las llamadas a Notion pasan por el servidor MCP de Node.js, que gestiona la lógica de la API de Notion y devuelve los resultados de forma estructurada.
Empieza a Usarlo Hoy
Configurar MCP Finance Assistant es muy sencillo. El README.md
te guía paso a paso, pero básicamente consiste en:
- Clonar el repositorio.
- Instalar las dependencias de Python con
uv
y las de Node.js connpm
. - Duplicar la plantilla de Notion y configurar tus credenciales en los archivos
.env
. - ¡Lanzar la aplicación!
Este proyecto es una herramienta fantástica para desarrolladores, entusiastas de la privacidad y cualquiera que quiera una forma más potente y personalizada de gestionar sus finanzas.
¿Listo para tomar el control? Visita elrepositorio en GitHub, pruébalo, y si te animas, ¡contribuye al proyecto!