> ## Documentation Index
> Fetch the complete documentation index at: https://docs.alana.shopping/llms.txt
> Use this file to discover all available pages before exploring further.

# Ferramentas de Descoberta

> Ferramentas de descoberta de catálogo — search_products, get_product, list_catalogs, get_catalog_stats.

## search\_products

Busque seu catálogo de produtos usando linguagem natural ou palavras-chave.

**Parâmetros:**

| Parâmetro    | Tipo    | Obrigatório | Descrição                                   |
| ------------ | ------- | ----------- | ------------------------------------------- |
| `query`      | string  | Sim         | Consulta de busca                           |
| `limit`      | inteiro | Não         | Máximo de resultados (padrão: 10, máx: 100) |
| `catalog_id` | string  | Não         | Filtrar para um catálogo específico         |
| `filters`    | objeto  | Não         | Filtros estruturados                        |

<CodeGroup>
  ```javascript JavaScript theme={null}
  const result = await client.callTool({
    name: "search_products",
    arguments: {
      query: "camiseta algodão",
      limit: 5,
      filters: { availability: "in_stock", min_price: 20 },
    },
  });
  ```

  ```python Python theme={null}
  result = await session.call_tool(
      "search_products",
      arguments={
          "query": "camiseta algodão",
          "limit": 5,
          "filters": {"availability": "in_stock", "min_price": 20},
      },
  )
  ```

  ```bash cURL theme={null}
  curl -X POST "https://app.alana.shopping/api/mcp/sse" \
    -H "Authorization: Bearer sk_live_sua_chave_api" \
    -H "Content-Type: application/json" \
    -d '{"method":"tools/call","params":{"name":"search_products","arguments":{"query":"camiseta algodão","limit":5}}}'
  ```
</CodeGroup>

**Resposta:**

```json theme={null}
{
  "products": [
    {
      "id": "SKU-001",
      "title": "Camiseta de Algodão Azul",
      "price": 29.99,
      "availability": "in_stock",
      "score": 0.94
    }
  ],
  "total": 47,
  "query_time_ms": 23
}
```

***

## get\_product

Recupere detalhes completos de um produto específico por ID ou SKU.

**Parâmetros:**

| Parâmetro          | Tipo     | Obrigatório | Descrição                         |
| ------------------ | -------- | ----------- | --------------------------------- |
| `product_id`       | string   | Sim         | ID ou SKU do produto              |
| `include_variants` | booleano | Não         | Incluir variantes (padrão: false) |

<CodeGroup>
  ```javascript JavaScript theme={null}
  const result = await client.callTool({
    name: "get_product",
    arguments: { product_id: "SKU-001", include_variants: true },
  });
  ```

  ```python Python theme={null}
  result = await session.call_tool(
      "get_product",
      arguments={"product_id": "SKU-001", "include_variants": True},
  )
  ```
</CodeGroup>

***

## list\_catalogs

Liste todos os catálogos disponíveis no seu workspace.

<CodeGroup>
  ```javascript JavaScript theme={null}
  const result = await client.callTool({
    name: "list_catalogs",
    arguments: { include_stats: true },
  });
  ```

  ```python Python theme={null}
  result = await session.call_tool(
      "list_catalogs",
      arguments={"include_stats": True},
  )
  ```
</CodeGroup>

***

## get\_catalog\_stats

Obtenha estatísticas de um catálogo específico.

<CodeGroup>
  ```javascript JavaScript theme={null}
  const result = await client.callTool({
    name: "get_catalog_stats",
    arguments: { catalog_id: "cat_abc" },
  });
  ```

  ```python Python theme={null}
  result = await session.call_tool(
      "get_catalog_stats",
      arguments={"catalog_id": "cat_abc"},
  )
  ```
</CodeGroup>

**Resposta:**

```json theme={null}
{
  "catalog_id": "cat_abc",
  "product_count": 1432,
  "in_stock": 1298,
  "out_of_stock": 134,
  "avg_optimization_score": 0.76,
  "last_updated_at": "2026-03-17T10:00:00Z"
}
```
