servidor ynab-mcp
Un servidor de Protocolo de Contexto de Modelo (MCP) desarrollado con mcp-framework. Este MCP proporciona herramientas para interactuar con la configuración de presupuestos de YNAB en https://ynab.com
Para que una IA interactúe con esta herramienta, deberá obtener su token de acceso personal de YNAB: https://api.ynab.com/#personal-access-tokens . Al agregar este servidor MCP a cualquier cliente, deberá proporcionar su token de acceso personal como YNAB_API_TOKEN. Este token nunca se envía directamente al LLM. Se almacena de forma privada en una variable de entorno para su uso con la API de YNAB.
Configuración
Especificar variables de entorno:
- YNAB_API_TOKEN (obligatorio)
- YNAB_BUDGET_ID (opcional)
Meta
El objetivo del proyecto es poder interactuar con mi presupuesto de YNAB mediante una conversación de IA. Hay algunos flujos de trabajo principales que quiero habilitar:
Flujos de trabajo:
Configuración por primera vez
- Se le pedirá que seleccione su presupuesto entre los disponibles. Si intenta usar otra herramienta primero, debería aparecer este mensaje pidiéndole que configure su presupuesto predeterminado.
- Herramientas necesarias: ListBudgets
Gestionar categorías de gastos excesivos
Agregar nuevas transacciones
Aprobación de transacciones
Verifique el gasto mensual total versus el ingreso total
Distribuir automáticamente fondos listos para asignar según los objetivos de la categoría
Estado actual
Herramientas disponibles:
- ListBudgets: enumera los presupuestos disponibles en su cuenta
- Resumen presupuestario: proporciona un resumen de las categorías con fondos insuficientes y las cuentas con fondos bajos.
- GetUnapprovedTransactions: recupera todas las transacciones no aprobadas
- CreateTransaction: crea una transacción para un presupuesto y una cuenta específicos.
- Ejemplo de solicitud:
Add a transaction to my Ally account for $3.98 I spent at REI today
- requiere que se llame a GetBudget primero para que sepamos el ID de la cuenta
- Ejemplo de solicitud:
- AprobarTransacción: aprueba una transacción existente en su presupuesto de YNAB
- requiere un ID de transacción para aprobar
- se puede utilizar junto con GetUnapprovedTransactions para aprobar transacciones pendientes
- Después de llamar y obtener transacciones no aprobadas, mensaje:
approve the transaction for $6.95 on the Apple Card
Próximo:
- Poder aprobar múltiples transacciones con una sola llamada
- Herramienta updateCategory (o herramienta más general updateTransaction) si puedo lograr que los parámetros opcionales funcionen correctamente con el marco zod y mcp
- ¿Pasar del marco mcp para usar el protocolo de contexto de modelo SDK directamente?
Inicio rápido
Estructura del proyecto
Agregar componentes
El SDK de YNAB describe los puntos finales de API disponibles: https://github.com/ynab/ynab-sdk-js .
La especificación de la API abierta de YNAB está aquí: https://api.ynab.com/papi/open\_api\_spec.yaml . Esto puede usarse para solicitar a una IA que genere una nueva herramienta. Ejemplo de solicitud para el Agente de Cursor:
Puede agregar más herramientas usando la CLI:
Desarrollo de herramientas
Ejemplo de estructura de herramienta:
Publicación en npm
- Actualice su paquete.json:
- Asegúrese de que
name
sea único y siga las convenciones de nomenclatura de npm - Establecer
version
apropiada - Añadir
description
,author
,license
, etc. - Verificar los puntos
bin
en el archivo de entrada correcto
- Asegúrese de que
- Construir y probar localmente:
- Inicie sesión en npm (cree una cuenta si es necesario):
- Publica tu paquete:
Después de publicar, los usuarios pueden agregarlo a su cliente de escritorio Claude (leer a continuación) o ejecutarlo con npx
Uso con Claude Desktop
Instalación mediante herrería
Para instalar YNAB Budget Assistant para Claude Desktop automáticamente a través de Smithery :
Desarrollo local
Agregue esta configuración a su archivo de configuración de Claude Desktop:
MacOS : ~/Library/Application Support/Claude/claude_desktop_config.json
Windows : %APPDATA%/Claude/claude_desktop_config.json
Después de la publicación
Agregue esta configuración a su archivo de configuración de Claude Desktop:
MacOS : ~/Library/Application Support/Claude/claude_desktop_config.json
Windows : %APPDATA%/Claude/claude_desktop_config.json
Otros clientes de MCP
Consulte https://modelcontextprotocol.io/clients para ver otros clientes disponibles.
Construcción y pruebas
- Realizar cambios en sus herramientas
- Ejecute
npm run build
para compilar - El servidor cargará automáticamente sus herramientas al iniciarse
Más información
You must be authenticated.
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
Un servidor de protocolo de contexto de modelo que permite la interacción impulsada por IA con datos de YNAB (You Need A Budget), lo que permite a los usuarios consultar sus presupuestos a través de interfaces conversacionales.
Related MCP Servers
- AsecurityFlicenseAqualityAn MCP server that allows users to interact with YNAB data, enabling access to account balances, transactions, and the creation of new transactions through the Model Context Protocol.Last updated -101Python
- -securityFlicense-qualityProvides access to YNAB (You Need A Budget) functionality through the Model Context Protocol, allowing users to view account balances, access transaction data, and create new transactions.Last updated -Python
- -securityAlicense-qualityA Model Context Protocol server that enables AI assistants to manage meeting data, including creating meeting bots, searching transcripts, and organizing calendar events.Last updated -15TypeScriptMIT License
- -securityAlicense-qualityA Model Context Protocol (MCP) server for interacting with YNAB (You Need A Budget). Provides tools for accessing budget data through MCP-enabled clients like Claude Desktop.Last updated -PythonMIT License