Yari Medic MCP Server
Officialby Yari-Medic
README.md
# Medical MCP Server - Yari System
Servidor MCP (Model Context Protocol) para el sistema médico Yari Medic.
**147 herramientas médicas** expuestas vía protocolo MCP (SSE).
## Inicio Rápido
```bash
# Instalar dependencias
npm install
# Copiar configuración
cp .env.example .env
# Iniciar en modo desarrollo
npm run dev
# Iniciar en producción
npm start
```
## Requisitos
- Node.js >= 18
- npm >= 10
- Django API (yarimedic.io) accesible
## Arquitectura
```
Yari Medic Ecosystem (v6.4)
┌─────────────────────────────────────────────┐
│ Railway Cloud │
│ │
│ ┌───────────────┐ ┌──────────────────┐ │
│ │ yari-ai-agent │───►│ medical-mcp- │ │
│ │ (ZeroClaw) │HTTP│ server │ │
│ │ Rust │ │ Node.js/Express │ │
│ │ Port: 8080 │ │ Port: 9000 │ │
│ └───────────────┘ └────────┬─────────┘ │
│ │ │
│ ┌──────────▼──────────┐ │
│ │ yarimedic.io │ │
│ │ (Django Backend) │ │
│ │ Port: 8000 │ │
│ └─────────────────────┘ │
└─────────────────────────────────────────────┘
```
- **Repo:** `Yari-Medic/yari-medic-mcp`
- **Railway Project:** `yari-medic-mcp`
- **Service:** `medical-mcp-server`
- **URL pública:** `https://medical-mcp-server-production.up.railway.app`
- **Health check:** `GET /health`
## Configuración
Edita el archivo `.env` con tus configuraciones:
```env
PORT=9000
DJANGO_API_URL=https://www.yarimedic.io
GEMINI_API_KEY=tu-api-key
GROQ_API_KEY=tu-api-key
REDIS_URL=redis://...
```
## Endpoints
- `GET /` - Health check
- `GET /health` - Status detallado
- `POST /mcp` - Endpoint MCP principal (SSE)
## Herramientas MCP (147 total)
### Pacientes
- `get_patient_by_id` - Obtener paciente por ID
- `get_patient_history` - Historial clínico
- `get_patient_appointments` - Citas del paciente
- `get_patient_invoices` - Facturas del paciente
- `get_patient_ecografias` - Ecografías del paciente
- `analyze_patient_comprehensive` - Análisis integral con IA
### Médicos y Citas
- `get_available_doctors` - Médicos disponibles
- `schedule_appointment` - Agendar cita
- `search_medical_directory` - Directorio médico
### Farmacia
- `get_pharmacy_inventory` - Inventario farmacéutico
- `search_medications` - Búsqueda de medicamentos
- `check_stock` - Verificar stock
### Laboratorio
- `get_lab_results` - Resultados de laboratorio
- `search_lab_tests` - Catálogo de pruebas
- `request_lab_test` - Solicitar prueba
### Facturación
- `get_accounts_receivable` - Cuentas por cobrar
- `get_accounts_payable` - Cuentas por pagar
- `get_receivable_documents` - Documentos de cobro
- `get_payable_documents` - Documentos de pago
### CRM
- `get_crm_cases` - Casos CRM
- `get_medical_stats` - Estadísticas médicas
### Emergencias y Triage
- `get_emergency_cases` - Casos de emergencia
- `request_emergency_service` - Solicitar servicio de emergencia
- `get_hospitalization_status` - Estado de hospitalización
- `get_fleet_status` - Estado de flota de ambulancias
### Chat
- `chat` - Chat con protocolo Manchester (triage ATINMCA)
Ver `src/tools.ts` para la lista completa de 147 herramientas.
## Docker
```bash
# Build
docker build -t medical-mcp-server .
# Run
docker run -p 9000:9000 \
-e DJANGO_API_URL=https://www.yarimedic.io \
-e GEMINI_API_KEY=... \
-e GROQ_API_KEY=... \
-e REDIS_URL=... \
medical-mcp-server
```
## Desarrollo
```bash
# Build TypeScript
npm run build
# Watch mode
npm run watch
# Tests
npm test
```
## Documentación
Ver `docs/` para documentación adicional.