Skip to main content
Glama
README.md
# 🎯 MCP NUTRS Server

Servidor MCP (Model Context Protocol) para o ecossistema NUTRS - conecta Radar, Calendário e Cardápio ao Claude.

## 📊 Tools Disponíveis

### Radar (10 tools)
| Tool | Descrição |
|------|-----------|
| `radar_dashboard` | Visão executiva - ciclos recentes com métricas |
| `radar_ciclo_detalhe` | Drill-down de um ciclo: diários, itens, acréscimos, pedidos |
| `radar_diarios` | Dados dia a dia: planejado vs realizado |
| `radar_acrescimos` | Pedidos extras fora do planejamento |
| `radar_economia` | Relatório de savings nas negociações |
| `radar_pedidos_compra` | Ordens de compra com itens |
| `radar_duplicatas` | Financeiro: faturas e vencimentos |
| `radar_recalcular_metricas` | Atualizar cache de indicadores |
| `radar_filiais` | Lista de filiais/unidades |
| `radar_alertas` | Indicadores críticos e avisos |

### Calendário (3 tools)
| Tool | Descrição |
|------|-----------|
| `calendario_pendentes` | Tarefas pendentes e atrasadas |
| `calendario_semana` | Agenda da semana por filial |
| `calendario_stats` | Estatísticas de conclusão |

### Cardápio (3 tools)
| Tool | Descrição |
|------|-----------|
| `cardapio_receitas` | Catálogo de receitas com custos |
| `cardapio_custo_filial` | Orçamento por filial/dia |
| `cardapio_estimar_proposta` | Gerador de proposta comercial |

## 🚀 Deploy

```bash
# 1. Clonar/copiar para o servidor
cp -r mcp-nutrs /opt/mcp-nutrs

# 2. Configurar .env
cp .env.example .env
nano .env  # preencher service key e senha do calendar

# 3. Build e run
cd /opt/mcp-nutrs
docker compose up -d --build

# 4. Testar
curl http://localhost:3100/health

# 5. Adicionar no Caddy (se usar Caddy)
# No Caddyfile adicionar:
# mcp.hubnutrs.com.br {
#   reverse_proxy mcp-nutrs:3100
# }
```

## 🔧 Conectar no Claude Desktop / Claude.ai

No Claude Desktop, adicionar no `claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "nutrs": {
      "url": "https://mcp.hubnutrs.com.br/mcp"
    }
  }
}
```

## 📁 Estrutura

```
mcp-nutrs/
├── src/
│   ├── index.ts              # Entry point + transport
│   ├── tools/
│   │   ├── radar.ts          # 10 tools do Radar
│   │   ├── calendario.ts     # 3 tools do Calendário
│   │   └── cardapio.ts       # 3 tools do Cardápio
│   ├── services/
│   │   ├── supabase.ts       # Cliente Supabase
│   │   ├── calendar-db.ts    # Cliente PostgreSQL
│   │   └── formatters.ts     # Helpers de formatação
│   └── schemas/              # (futuro: schemas Zod compartilhados)
├── Dockerfile
├── docker-compose.yml
├── package.json
├── tsconfig.json
└── .env.example
```

## 📐 Fontes de Dados

- **Supabase** (`kknejnrlaonigduohwpe`): tabelas `rd-*` (Radar) + receitas/custos (Cardápio)
- **PostgreSQL** (container `nutrs-calendar-db`): eventos, categorias, filiais (Calendário)