Servidor MCP de reuniones
Un servidor de protocolo de contexto modelo para gestionar reuniones y compartir gastos.
Gestión de dependencias
Este proyecto utiliza uv para la gestión de dependencias de Python en lugar de pip . Este cambio es necesario debido a los requisitos de dependencia del SDK de Python del Protocolo de Contexto de Modelo .
Asegúrate de tener instalado uv o instálalo mediante pip:
pip install uvPara instalar las dependencias del proyecto:
uv pip install -r requirements.txtRelated MCP server: Gatherings MCP Server
Descripción general
El servidor MCP de Gatherings proporciona una API que permite a los asistentes de IA interactuar con la aplicación Gatherings mediante el Protocolo de Conversación Automática (MCP). Esto permite que los sistemas de IA ayuden a los usuarios a gestionar gastos compartidos para eventos sociales, salidas o cualquier reunión donde los gastos se dividan entre los participantes.
Características
Crear y gestionar reuniones con varios miembros
Agregar gastos para miembros específicos
Calcular reembolsos justos
Registrar pagos y reembolsos
Generar resúmenes de pago detallados
Agregar o eliminar miembros de las reuniones
Cambiar el nombre de los miembros según sea necesario
Instalación
Prerrequisitos
Python 3.8+
SQLAlchemy
Kit de desarrollo de software de MCP
Configuración
Clonar este repositorio:
git clone https://your-repository.git cd accelInstale las dependencias necesarias:
pip install -r requirements.txtEstablecer variables de entorno (opcional):
# Custom database location export GATHERINGS_DB_PATH=path/to/database.db # Custom script location export GATHERINGS_SCRIPT=path/to/gatherings.py
Uso
Inicie el servidor MCP:
python gatherings_mcp_server.pyEl servidor se ejecuta en stdio, lo que lo hace compatible con clientes del protocolo MCP.
Referencia de API
El servidor MCP expone las siguientes herramientas:
create_gathering(gathering_id: str, members: int)
Crea una nueva reunión con el número especificado de miembros.
add_expense(gathering_id: str, member_name: str, amount: float)
Agregar un gasto para un miembro en una reunión.
calculate_reimbursements(gathering_id: str)
Calcular quién le debe qué a quién por una reunión.
record_payment(gathering_id: str, member_name: str, amount: float)
Registrar un pago realizado por un miembro (valor positivo) o un reembolso a un miembro (valor negativo).
rename_member(gathering_id: str, old_name: str, new_name: str)
Cambiar el nombre de un miembro de una reunión.
show_gathering(gathering_id: str)
Mostrar detalles de una reunión, incluidos los gastos y el estado de pago.
list_gatherings()
Enumere todas las reuniones en la base de datos.
close_gathering(gathering_id: str)
Marcar una reunión como cerrada.
delete_gathering(gathering_id: str, force: bool = False)
Eliminar una reunión y todos los datos asociados. Configurar force=True para eliminar reuniones cerradas.
add_member(gathering_id: str, member_name: str)
Agregar un nuevo miembro a una reunión existente.
remove_member(gathering_id: str, member_name: str)
Eliminar a un miembro de una reunión (solo si no tiene gastos).
Ejemplo de flujo
Crea una reunión para una cena con 5 amigos:
create_gathering("2023-10-15-dinner", 5)Sumar gastos a medida que la gente paga las cosas:
add_expense("2023-10-15-dinner", "Alice", 120.50) add_expense("2023-10-15-dinner", "Bob", 35.00)Calcular reembolsos:
calculate_reimbursements("2023-10-15-dinner")Registrar los pagos a medida que las personas liquidan:
record_payment("2023-10-15-dinner", "Charlie", 31.10)Cerrar la reunión cuando se hayan liquidado todos los pagos:
close_gathering("2023-10-15-dinner")
Arquitectura
El servidor MCP de Gatherings consta de tres componentes principales:
Interfaz de servidor MCP (
gatherings_mcp_server.py): proporciona la interfaz de protocolo MCP con la que las herramientas de IA pueden interactuar.Capa de servicio (
services.py): contiene la lógica empresarial para administrar reuniones, gastos y pagos.Capa de datos (
models.py): define el esquema de la base de datos utilizando SQLAlchemy ORM y maneja la persistencia de los datos.
Modelo de datos
Reunión : Representa un evento social con gastos a dividir.
Miembro : Un participante en una reunión
Gasto : Dinero gastado por un miembro para la reunión.
Pago : Dinero pagado por un miembro para liquidar saldos
Contribuyendo
¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.