compras_catmat_buscar
Search CATMAT procurement items using textual terms or structural group/class filters to ensure accurate results even when upstream textual search fails.
Instructions
Busca itens CATMAT.
⚠️ Atenção upstream: o filtro textual descricao do Dados Abertos
está ignorando o valor enviado e devolvendo o universo CATMAT inteiro
(~340k itens, começando por arma de fogo) desde meados de 2026.
Confirmado via probe direto. Os filtros estruturais (codigo_grupo,
codigo_classe, codigo_pdm) continuam funcionando.
Workflow recomendado enquanto o filtro textual não voltar:
compras_catmat_listar_grupos()→ escolher o grupo (ex.: 71=Mobiliários).compras_catmat_listar_classes(codigo_grupo=71)→ escolher a classe (ex.: 7110=Mobiliário para Escritório).compras_catmat_buscar(termo='cadeira', codigo_grupo=71, codigo_classe=7110)→ otermoainda é enviado (mantém compatibilidade), mas a redução real virá dos códigos estruturais.
Esta tool emite _aviso_filtro no payload quando detecta que o upstream
devolveu o universo inteiro.
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_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 | |||