# Dataset

> Consulta MCP

- Skill: `tbc-servicos/dataset` (Agent Skill)
- Install (CLI): `npx skillmds@latest add tbc-servicos/dataset`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tbc-servicos/dataset/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: tbc-servicos (https://skillmd.com/u/tbc-servicos)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tbc-servicos/dataset

---


## Consulta MCP

Antes de gerar código, consulte o MCP `tbc-knowledge`:

```
searchFluigApi({ category: "dataset" })
// → métodos DatasetFactory, DatasetBuilder, constraints, colunas

searchFluigPatterns({ category: "template", skill: "fluig-dataset" })
// → templates: base, SQL, REST Protheus, constraints

searchFluigPatterns({ category: "naming" })
// → convenção de nomenclatura ds_[acao]_[entidade].js
```

---

## Fluxo de Desenvolvimento

1. Nomear dataset: `ds_[acao]_[entidade].js`
2. Implementar `defineStructure()` — define colunas
3. Implementar `createDataset()` — executa lógica, retorna dados
4. Sempre usar `try/catch` e logging
5. Testar com fluig-test

---

## Instruções para Claude

1. **Perguntar antes de gerar:** Qual o nome do dataset? Qual a fonte de dados (SQL, REST Protheus, dataset interno)? Quais colunas retornar? Precisa de constraints?
2. **Consultar MCP** para obter o template correto conforme o tipo de dataset solicitado.
3. **Sempre incluir** `try/catch` com `log.info` na entrada e `log.error` no catch.
4. **Validar inputs** em datasets SQL dinâmico — nunca concatenar parâmetros sem sanitização.
5. **Nomear corretamente:** `ds_[acao]_[entidade].js` em snake_case.

