Skip to main content
Glama

mcp-cirujanos

MCP de agendamiento para consultorios de cirugía plástica. Fork de valeria-mcp-server (repo zobra-auto/valeria-mcp-server), adaptado a multi-tenant por archivos/env. Es el Componente B del INFRA_PLAN.md.

Qué cambió respecto a valeria-mcp-server

  1. catalog.js parcheado: la tienda/servicios ya NO están hardcodeados (eran de la barbería). Ahora se leen de CATALOG_JSON (./data/catalog.json) → servicios de la valoración del cirujano.

  2. Tool nueva casos (alias buscar_casos): biblioteca antes/después por procedimiento, leída de CASOS_JSON. La usa el sub-agente VENTAS en M1 del guion.

  3. Defaults a cirujanos: BARBERS_JSON./data/doctors.json (cada "barbero" = un médico con su Google Calendar). Duración por defecto 45 min.

Lo demás (calendar check/create/cancel, booking search, barbers resolve, auth, rate-limit, caché) es idéntico a valeria y 100% configurable por env — por eso no se toca el mcp-valeria de la barbería.

Related MCP server: OnSched Consumer API MCP Server

Endpoint

POST /mcp (alias /tools) con header x-api-key: <API_KEY> y cuerpo { "tool", "action", "params" }.

tool

action

params

Uso

calendar

check

date (YYYY-MM-DD) ó from+to ISO, barber?, duration?

Slots reales del calendar

calendar

create

date,timewhen ISO), who, phone, barber, duration?

Agendar valoración

calendar

cancel

eventId, barber?

Cancelar

booking

search

phone

Citas del paciente

catalog

search

query?

Servicios/precios del consultorio

casos

search

procedimiento, n? (def 2, máx 5)

Casos antes/después (M1)

health

ping

Healthcheck

Alias para n8n: ver_disponibilidad/agendar_turno/cancelar_turnocalendar; buscar_turnosbooking; buscar_casoscasos.

Configuración

Copia .env.example.env y rellena API_KEY + GOOGLE_APPLICATION_CREDENTIALS_JSON. Los datos del consultorio viven en data/ (doctors.json, business_hours.json, catalog.json, casos.json).

Migrar a otro doctor: cambiar los 4 JSON de data/ (o apuntar las envs *_JSON a otros archivos) + el calendarId compartido con la SA. Cero cambios de código.

Correr local

npm install
cp .env.example .env   # rellenar API_KEY y la SA
npm run dev            # node --watch
# smoke:
curl -s localhost:3000/mcp -H 'x-api-key: <API_KEY>' -H 'content-type: application/json' \
  -d '{"tool":"catalog","action":"search","params":{}}' | jq
curl -s localhost:3000/mcp -H 'x-api-key: <API_KEY>' -H 'content-type: application/json' \
  -d '{"tool":"casos","action":"search","params":{"procedimiento":"rinoplastia","n":2}}' | jq

Despliegue (EasyPanel — con tu luz verde)

Nuevo servicio mcp-cirujanos en el proyecto barber_auto. Env según .env.example; copiar GOOGLE_APPLICATION_CREDENTIALS_JSON desde mcp-valeria (misma SA mcp-valeria@zobra-pruebas). Dominio barber-auto-mcp-cirujanos.wytay4.easypanel.host. NO reconfigurar mcp-valeria (aislamiento).

Related MCP Connectors

Related MCP Servers