MCP Gastos

MCP Gastos

Enables personal expense management through CSV storage, allowing AI agents to add, query, and analyze expenses with automatic categorization and payment method validation.

Category
Visit Server

README

MCP Gastos

Servidor MCP (Model Context Protocol) para la gestión de gastos personales mediante un archivo CSV. Construido con FastMCP, este proyecto permite a agentes de IA agregar, consultar y analizar gastos de manera estructurada.

🚀 Características

  • Tool: agregar_gasto - Añade nuevos gastos al registro CSV
  • Resource: resource://gastos - Consulta gastos formateados para consumo de LLMs
  • Prompt: Plantilla para generar resúmenes de gastos de los últimos 5 días
  • Validación: Enum de métodos de pago para garantizar consistencia
  • Estadísticas: Cálculo automático de totales por categoría y método de pago

📋 Requisitos

  • Python >= 3.14
  • FastMCP >= 2.13.1

🔧 Instalación

  1. Clona el repositorio:
git clone https://github.com/BrayanTM/mcp-basico.git
cd mcp-basico
  1. Instala las dependencias:
pip install fastmcp

🎯 Uso

Ejecutar el Servidor MCP

python main.py

Estructura del CSV

El archivo gastos.csv utiliza la siguiente estructura:

Fecha,Categoría,Cantidad,Método de pago
2025-11-16,Alimentación,45.50,Tarjeta de crédito

Columnas:

  • Fecha: Formato ISO 8601 (YYYY-MM-DD)
  • Categoría: Texto libre (ej: "Alimentación", "Transporte", "Salud")
  • Cantidad: Número decimal con 2 decimales
  • Método de pago: Enum validado (Tarjeta de débito, Tarjeta de crédito, Efectivo)

Funcionalidades del MCP

Tool: agregar_gasto

Añade un nuevo gasto al archivo CSV:

agregar_gasto(
    fecha="2025-11-16",
    categoria="Alimentación",
    cantidad=45.50,
    metodo_pago=MetodoPago.TARJETA_CREDITO
)

Parámetros:

  • fecha (str): Fecha en formato YYYY-MM-DD
  • categoria (str): Categoría del gasto
  • cantidad (float): Monto del gasto
  • metodo_pago (MetodoPago): Enum con valores válidos

Resource: resource://gastos

Retorna todos los gastos en formato Markdown estructurado, incluyendo:

  • Total de gastos registrados
  • Suma total gastada
  • Agrupación por categoría con subtotales
  • Listado detallado de todos los gastos

Prompt: prompt_agregar_gasto

Genera un resumen inteligente de los gastos de los últimos 5 días, agrupados por día y categoría.

📂 Estructura del Proyecto

mcp-basico/
├── main.py           # Servidor MCP con tools, resources y prompts
├── gastos.csv        # Archivo de datos (generado automáticamente)
├── pyproject.toml    # Configuración del proyecto
└── README.md         # Documentación

🔐 Métodos de Pago Válidos

El servidor valida los métodos de pago mediante un Enum:

  • MetodoPago.TARJETA_DEBITO → "Tarjeta de débito"
  • MetodoPago.TARJETA_CREDITO → "Tarjeta de crédito"
  • MetodoPago.EFECTIVO → "Efectivo"

📊 Ejemplo de Salida

Al consultar el resource resource://gastos, obtendrás un formato como:

# Registro de Gastos

Total de gastos registrados: 34

Total gastado: $1,724.54

## Gastos por Categoría

### Alimentación
- Cantidad de gastos: 11
- Total: $525.20

### Transporte
- Cantidad de gastos: 6
- Total: $93.50

...

🛠️ Convenciones de Desarrollo

  • Encoding: Siempre usar utf-8 para compatibilidad con caracteres especiales
  • CSV: Usar newline='' al abrir archivos en modo escritura
  • Formato de cantidades: Siempre .2f para dos decimales
  • Manejo de errores: Try/except con mensajes descriptivos en español
  • Output para LLMs: Markdown estructurado con jerarquía clara

👤 Autor

BrayanTM


Nota: Este servidor MCP está diseñado para ser consumido por agentes de IA que implementen el protocolo MCP, permitiendo gestión automatizada de gastos mediante lenguaje natural.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured