Integrations
Serves as the runtime environment for the MCP server, enabling the creation and management of shared expenses for social events through Python-based implementations.
Provides an ORM interface for storing gathering data, expenses, and payment records in a SQL database, allowing for persistence of user expense-sharing information.
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:
Para instalar las dependencias del proyecto:
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:Copy
- Instale las dependencias necesarias:Copy
- Establecer variables de entorno (opcional):Copy
Uso
Inicie el servidor MCP:
El 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:Copy
- Sumar gastos a medida que la gente paga las cosas:Copy
- Calcular reembolsos:Copy
- Registrar los pagos a medida que las personas liquidan:Copy
- Cerrar la reunión cuando se hayan liquidado todos los pagos:Copy
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
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.
Un servidor MCP que ayuda a los asistentes de IA a gestionar el reparto de gastos en eventos sociales, lo que permite la creación de reuniones, el seguimiento de gastos y el cálculo de reembolsos justos entre los participantes.
- Dependency Management
- Overview
- Features
- Installation
- Usage
- API Reference
- create_gathering(gathering_id: str, members: int)
- add_expense(gathering_id: str, member_name: str, amount: float)
- calculate_reimbursements(gathering_id: str)
- record_payment(gathering_id: str, member_name: str, amount: float)
- rename_member(gathering_id: str, old_name: str, new_name: str)
- show_gathering(gathering_id: str)
- list_gatherings()
- close_gathering(gathering_id: str)
- delete_gathering(gathering_id: str, force: bool = False)
- add_member(gathering_id: str, member_name: str)
- remove_member(gathering_id: str, member_name: str)
- Example Flow
- Architecture
- Data Model
- Contributing
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityAn MCP server that lets AI assistants interact with your Lunchmoney data, enabling natural language queries about transactions, budgets, and spending patterns.Last updated -432TypeScriptMIT License
Fewsats MCP Serverofficial
AsecurityFlicenseAqualityAn MCP server that integrates with Fewsats allowing AI agents to securely purchase anything by retrieving balances, accessing payment methods, and processing payments.Last updated -411Python- -security-license-qualityA specialized MCP server that enables AI agents to interact with Reddit, including reading posts, creating content, and managing subreddit configurations.Last updated -311TypeScript
- -security-license-qualityA simple MCP server that enables meeting room booking through an AI assistant, supporting room availability checks and booking operations with React Agent pattern for tool calling.Last updated -Python