Gatherings MCP Server

by abutbul
Verified

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Reuniones MCP Server

Un servidor de protocolo de contexto modelo para gestionar reuniones y compartir gastos.

Este es un servidor MCP basado en TypeScript que ayuda a rastrear gastos y pagos de eventos sociales, lo que facilita el cálculo de reembolsos y la liquidación de saldos entre amigos.

Nota de arquitectura

Importante : Este proyecto utiliza una arquitectura no estándar para una aplicación Node.js. El servidor MCP de TypeScript actúa como contenedor de una implementación backend de Python. El servidor Node.js recibe solicitudes MCP, las traduce a llamadas de línea de comandos al script de Python y devuelve los resultados.

Si bien esta arquitectura funciona para nuestras necesidades actuales, no es el enfoque más eficiente ni fácil de mantener para una aplicación de producción.

HACER

  • Refactorice la implementación para utilizar una arquitectura más estándar:
    • Migrar completamente el backend a TypeScript/JavaScript
    • O implementar una comunicación entre procesos adecuada entre los componentes Node.js y Python
    • O reemplazarlo con un enfoque de API REST donde el backend de Python proporciona una API que el servidor MCP consume
  • Mejorar el manejo de errores entre los componentes Node.js y Python
  • Añadir pruebas automatizadas para la integración entre componentes

Características

Herramientas

  • create_gathering - Crea una nueva reunión
    • Toma gathering_id y members como parámetros obligatorios
  • add_expense - Agregar un gasto para un miembro
    • Toma gathering_id , member_name y amount como parámetros obligatorios
  • calculate_reimbursements - Calcular reembolsos para una reunión
    • Toma gathering_id como parámetro obligatorio
  • record_payment - Registra un pago realizado por un miembro
    • Toma gathering_id , member_name y amount como parámetros obligatorios
  • rename_member - Cambiar el nombre de un miembro sin nombre
    • Toma gathering_id , old_name y new_name como parámetros obligatorios
  • show_gathering - Mostrar detalles de una reunión
    • Toma gathering_id como parámetro obligatorio
  • list_gatherings - Lista todas las reuniones
  • close_gathering - Cerrar una reunión
    • Toma gathering_id como parámetro obligatorio
  • delete_gathering - Eliminar una reunión
    • Toma gathering_id como parámetro obligatorio, parámetro force opcional
  • add_member - Agregar un nuevo miembro a una reunión
    • Toma gathering_id y member_name como parámetros obligatorios
  • remove_member - Eliminar un miembro de una reunión
    • Toma gathering_id y member_name como parámetros obligatorios

Desarrollo

Instalar dependencias:

npm install

Construir el servidor:

npm run build

Para desarrollo con reconstrucción automática:

npm run watch

Instalación

Configuración

Para utilizar con Claude Desktop, agregue la configuración del servidor:

{ "mcpServers": { "gatherings": { "command": "node", "args": ["/path/to/gatherings-server/build/index.js"], "env": { "GATHERINGS_DB_PATH": "gatherings.db", "GATHERINGS_SCRIPT": "/path/to/gatherings-server/gatherings.py" }, "disabled": false, "autoApprove": [], "alwaysAllow": [ "create_gathering", "add_expense", "calculate_reimbursements", "record_payment", "rename_member", "show_gathering", "list_gatherings", "close_gathering", "delete_gathering", "add_member", "remove_member" ], "timeout": 300 } } }

Opciones de configuración

  • command y args : especifica cómo ejecutar el servidor
  • env : Variables de entorno
    • GATHERINGS_DB_PATH : Ruta al archivo de base de datos
    • GATHERINGS_SCRIPT : Ruta al script de Python para manejar operaciones de recopilación
  • alwaysAllow : Lista de herramientas que se permitirán automáticamente sin preguntar
  • timeout : Tiempo máximo de ejecución en segundos

Depuración

Dado que los servidores MCP se comunican a través de stdio, la depuración puede ser complicada. Recomendamos usar el Inspector MCP , disponible como script de paquete:

npm run inspector

El Inspector proporcionará una URL para acceder a las herramientas de depuración en su navegador.

-
security - not tested
F
license - not found
-
quality - not tested

Un servidor de Protocolo de Contexto Modelo que ayuda a rastrear gastos y calcular reembolsos por eventos sociales, lo que facilita la liquidación de saldos entre amigos.

  1. Architecture Note
    1. TODO
  2. Features
    1. Tools
  3. Development
    1. Installation
      1. Configuration
      2. Debugging
    ID: 3iklcgah07