jr360-clinicas-mcp
README.md
# JR360 Clínicas MCP
**MCP server para demos y ventas de sistemas de gestión operativa para clínicas en Colombia (y cualquier país hispanohablante).**
Construido por [JR360 IA Agency LLC](https://jr360iaagency.com) como herramienta open-source para la comunidad.
---
## ¿Qué hace este MCP?
Conecta Claude Desktop (u otro cliente MCP) con 6 herramientas especializadas para demostrar y vender un sistema de control operativo para clínicas médicas, sin depender de ninguna API externa.
Todas las operaciones son **100% locales** — sin costos de API, sin latencia, sin configuración compleja.
---
## 6 Tools disponibles
| Tool | Descripción |
|------|-------------|
| `jr360_get_clinic_context` | Contexto completo del sistema: módulos, posicionamiento, precios, demos |
| `jr360_generate_demo_data` | Genera pacientes, citas y facturas ficticias personalizadas en COP |
| `jr360_classify_whatsapp` | Clasifica intención de mensajes WhatsApp por reglas (sin API) |
| `jr360_generate_daily_report` | Reporte ejecutivo diario en markdown para gerencia |
| `jr360_answer_objection` | Respuestas comerciales a 12 objeciones frecuentes |
| `jr360_calculate_revenue_loss` | Calculadora de fuga de ingresos en COP — argumento de cierre |
---
## Inicio rápido
### Opción A — Local (recomendado para desarrollo)
**Requisito:** Python 3.10+
```bash
git clone https://github.com/jimmyjrengifom-glitch/jr360-clinicas-mcp.git
cd jr360-clinicas-mcp
python3 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
python server.py
# Servidor en http://localhost:8080/mcp
```
### Opción B — Docker
```bash
docker build -t jr360-clinicas-mcp .
docker run -p 8080:8080 jr360-clinicas-mcp
```
### Opción C — Easypanel / VPS
1. Fork este repositorio
2. En Easypanel → **New App → GitHub** → seleccionar el fork
3. Variables de entorno:
```
MCP_PORT=8080
MCP_HOST=0.0.0.0
```
4. Activar HTTPS (Traefik automático)
5. Tu servidor queda en `https://tu-dominio.easypanel.host/mcp`
---
## Conectar con Claude Desktop
Abre el archivo de configuración:
- **Mac:** `~/Library/Application Support/Claude/claude_desktop_config.json`
- **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`
Agrega:
```json
{
"mcpServers": {
"jr360-clinicas": {
"url": "http://localhost:8080/mcp",
"transport": "streamable-http"
}
}
}
```
Reinicia Claude Desktop. Las 6 tools aparecen disponibles automáticamente.
---
## Ejemplos de uso en Claude Desktop
```
Usa jr360_get_clinic_context para darme el posicionamiento completo del sistema.
```
```
Usa jr360_generate_demo_data para crear una demo de una clínica dental llamada
"Sonrisa Perfecta" con 10 pacientes.
```
```
Clasifica este mensaje de WhatsApp: "Buenas, quiero agendar cita para el martes,
¿tienen disponibilidad?"
```
```
Dame la respuesta para esta objeción: "Es muy caro para nosotros"
```
```
Calcula la fuga de ingresos para una clínica con 200 pacientes/mes,
25% de ausentismo y ticket promedio de $150.000 COP.
```
```
Genera el reporte diario para "Clínica Salud Total" con estos datos:
{"citas_dia": 18, "citas_canceladas": 3, "pacientes_nuevos": 5,
"facturas_pagadas_cop": 1800000, "facturas_pendientes_cop": 450000, "leads_nuevos": 4}
```
---
## Estructura del proyecto
```
jr360-clinicas-mcp/
├── server.py # FastMCP — punto de entrada, 6 tools
├── data_store.py # Datos demo: pacientes, servicios, precios COP por tipo de clínica
├── rule_engine.py # Clasificador WhatsApp + 12 objeciones con respuestas
├── formatters.py # Formato COP, reporte diario, calculadora ROI
├── requirements.txt
├── Dockerfile
├── .env.example
└── README.md
```
---
## Stack técnico
- **Python 3.10+**
- **FastMCP** (`mcp[cli]>=1.9.0`) — framework oficial MCP de Anthropic
- **Pydantic v2** — validación de parámetros
- **Transporte:** Streamable HTTP
- **Sin dependencias de API externa** — todo local
---
## Tipos de clínica soportados
`dental` · `estetica` · `bienestar` · `quiropraxia` · `deportiva` · `general`
Cada tipo tiene su propio catálogo de servicios con precios en COP.
---
## Adaptar para otro país o moneda
Los datos de `data_store.py` son fáciles de modificar:
- `SERVICIOS_POR_TIPO` → cambiar precios a la moneda local
- `NOMBRES_PACIENTES` / `MEDICOS` → nombres del mercado objetivo
- En `formatters.py` → función `fmt_cop()` → cambiar símbolo y separadores
---
## Contribuir
Pull requests bienvenidos. Algunas ideas:
- Agregar más tipos de clínica (oftalmología, pediatría, veterinaria)
- Soporte multi-moneda (MXN, ARS, PEN, CLP)
- Tool para generar propuesta comercial en PDF
- Tool para generar guión de demo personalizado
- Integración con Airtable o Notion como backend real
---
## Licencia
MIT — libre para uso personal y comercial.
---
## Créditos
Creado por **Jimmy Rengifo** — [JR360 IA Agency LLC](https://jr360iaagency.com)
Si este proyecto te fue útil, dale una ⭐ al repositorio.
Para consultas comerciales sobre implementación para tu clínica:
- Web: [jr360iaagency.com](https://jr360iaagency.com)
- Demo en vivo: [jr360-demos.netlify.app](https://jr360-demos.netlify.app)
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues