compras_catmat_buscar
Busca itens CATMAT.
⚠️ Não existe busca por substring nesta API. O contrato do
/modulo-material/4_consultarItemMaterial oferece descricaoItem, que é
match exato: descricaoItem='CADEIRA' devolve zero registros, embora o
catálogo tenha milhares de itens começando por "CADEIRA ESCRITÓRIO...".
Não é um filtro degradado — é um filtro de igualdade, e o termo livre que o
usuário digita quase nunca casa com a descrição inteira do item.
Por isso o termo não é enviado ao upstream: mandá-lo faria a chamada
retornar o universo inteiro (~340 mil itens) sem nenhum aviso. Ele é usado
para ordenar e marcar os resultados do recorte estrutural, e a filtragem
real vem de codigo_grupo, codigo_classe e codigo_pdm.
Workflow recomendado:
compras_catmat_listar_grupos()→ escolher o grupo (ex.: 71=Mobiliários).compras_catmat_listar_classes(codigo_grupo=71)→ a classe (ex.: 7110).compras_catmat_listar_pdms(codigo_classe=7110)→ o PDM do material.compras_catmat_buscar(termo='cadeira', codigo_pdm=...).
Esta tool emite _aviso_filtro no payload quando o recorte informado é
largo demais para ser útil.
Cache 24h por (termo + filtros + página).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| termo | Yes | Termo de busca textual (descrição do material/serviço). Aceita fragmento — a API faz match parcial. Ex.: 'cadeira ergonomica'. | |
| pagina | No | Página (1-based). | |
| codigo_pdm | No | Filtro estrutural por PDM (Padrão Descritivo de Material). É o recorte mais preciso do CATMAT: agrupa as variações de um mesmo material. Obtenha o código em `compras_catmat_listar_pdms`. | |
| codigo_grupo | No | Filtro estrutural por grupo CATMAT (1-99). **FORTEMENTE RECOMENDADO** porque o filtro textual upstream está quebrado (veja docstring). Obtenha o código em `compras_catmat_listar_grupos`. | |
| codigo_classe | No | Filtro estrutural por classe CATMAT (4 dígitos). Use em conjunto com `codigo_grupo` para focar a busca. | |
| tamanho_pagina | No | Registros por página. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||