"description":"Use esta ferramenta para consultar veículos disponíveis no estoque até um preço máximo informado pelo cliente, opcionalmente filtrando por categoria (Hatch, Sedan, SUV, etc.). Ideal quando o cliente quer saber quais carros cabem no orçamento ou comparar opções dentro de uma faixa de preço.",
"description":(
"Use esta ferramenta para consultar veiculos disponiveis no estoque. "
"Voce pode filtrar por preco maximo e categoria, e tambem ordenar por "
"preco para descobrir o carro mais barato (asc + limite=1) ou mais "
"caro (desc + limite=1)."
),
"parameters":{
"type":"object",
"properties":{
"preco_max":{
"type":"number",
"description":"Preço máximo do veículo em reais (BRL)."
"description":"Preco maximo do veiculo em reais (BRL). Opcional.",
},
"categoria":{
"type":"string",
"description":"Categoria do veículo, por exemplo: Hatch, Sedan, SUV. Opcional."
"description":"Categoria do veiculo, por exemplo: Hatch, Sedan, SUV. Opcional.",
},
"ordenar_preco":{
"type":"string",
"description":"Ordenacao do preco. Use 'asc' para mais barato e 'desc' para mais caro.",
},
"limite":{
"type":"integer",
"description":"Quantidade maxima de veiculos retornados.",
},
},
"required":["preco_max"],
"required":[],
},
},
{
"name":"validar_cliente_venda",
"description":"Use esta ferramenta quando precisar avaliar se o cliente pode financiar um veículo específico. Ela recebe o CPF e o valor do veículo, consulta um score simulado e retorna se o cliente está aprovado ou reprovado para a compra, juntamente com o score e um limite de crédito estimado.",
"description":(
"Use esta ferramenta quando precisar avaliar se o cliente pode financiar "
"um veiculo especifico. Ela recebe o CPF e o valor do veiculo, consulta "
"um score simulado e retorna se o cliente esta aprovado ou reprovado "
"para a compra, juntamente com o score e um limite de credito estimado."
),
"parameters":{
"type":"object",
"properties":{
"cpf":{
"type":"string",
"description":"CPF do cliente, com ou sem formatação (apenas dígitos também é aceito)."
"description":"CPF do cliente, com ou sem formatacao (apenas digitos tambem e aceito).",
},
"valor_veiculo":{
"type":"number",
"description":"Valor do veículo em reais (BRL) que o cliente deseja comprar."
"description":"Valor do veiculo em reais (BRL) que o cliente deseja comprar.",
},
},
"required":["cpf","valor_veiculo"],
@ -42,21 +60,26 @@ def get_tools_definitions():
},
{
"name":"avaliar_veiculo_troca",
"description":"Use esta ferramenta quando o cliente quiser saber quanto o carro dele vale como entrada em uma negociação. Ela recebe modelo, ano e quilometragem do veículo atual e devolve um valor estimado de avaliação para troca, já considerando depreciação por ano e quilometragem.",
"description":(
"Use esta ferramenta quando o cliente quiser saber quanto o carro dele "
"vale como entrada em uma negociacao. Ela recebe modelo, ano e "
"quilometragem do veiculo atual e devolve um valor estimado de avaliacao "
"para troca, ja considerando depreciacao por ano e quilometragem."
),
"parameters":{
"type":"object",
"properties":{
"modelo":{
"type":"string",
"description":"Modelo do veículo que o cliente deseja oferecer na troca (por exemplo, 'Toyota Corolla')."
"description":"Modelo do veiculo que o cliente deseja oferecer na troca (por exemplo, 'Toyota Corolla').",
},
"ano":{
"type":"integer",
"description":"Ano de fabricação do veículo do cliente."
"description":"Ano de fabricacao do veiculo do cliente.",
},
"km":{
"type":"integer",
"description":"Quilometragem atual do veículo do cliente."
"description":"Quilometragem atual do veiculo do cliente.",
},
},
"required":["modelo","ano","km"],
@ -64,17 +87,22 @@ def get_tools_definitions():
},
{
"name":"agendar_revisao",
"description":"Use esta ferramenta quando o cliente quiser marcar uma revisão ou manutenção para o veículo. Ela recebe a placa e a data/hora desejada, cria um agendamento simulado e retorna um identificador, além do status do agendamento.",
"description":(
"Use esta ferramenta quando o cliente quiser marcar uma revisao ou "
"manutencao para o veiculo. Ela recebe a placa e a data/hora desejada, "
"cria um agendamento simulado e retorna um identificador, alem do "
"status do agendamento."
),
"parameters":{
"type":"object",
"properties":{
"placa":{
"type":"string",
"description":"Placa do veículo que será levado para revisão."
"description":"Placa do veiculo que sera levado para revisao.",
},
"data_hora":{
"type":"string",
"description":"Data e hora desejada para a revisão, em formato ISO 8601 (por exemplo, '2026-03-10T09:00:00-03:00')."
"description":"Data e hora desejada para a revisao, em formato ISO 8601 (por exemplo, '2026-03-10T09:00:00-03:00').",
},
},
"required":["placa","data_hora"],
@ -82,17 +110,22 @@ def get_tools_definitions():
},
{
"name":"cancelar_pedido",
"description":"Use esta ferramenta quando o cliente solicitar o cancelamento de um pedido já registrado. Ela recebe o número do pedido e o motivo do cancelamento, atualiza o status para 'Cancelado' e retorna os detalhes do cancelamento para que você explique o resultado ao cliente.",
"description":(
"Use esta ferramenta quando o cliente solicitar o cancelamento de um "
"pedido ja registrado. Ela recebe o numero do pedido e o motivo do "
"cancelamento, atualiza o status para 'Cancelado' e retorna os detalhes "
"do cancelamento para que voce explique o resultado ao cliente."
),
"parameters":{
"type":"object",
"properties":{
"numero_pedido":{
"type":"string",
"description":"Número do pedido que o cliente deseja cancelar."
"description":"Numero do pedido que o cliente deseja cancelar.",
},
"motivo":{
"type":"string",
"description":"Motivo do cancelamento informado pelo cliente (por exemplo, atraso, mudança de planos, condição de pagamento, etc.)."
"description":"Motivo do cancelamento informado pelo cliente (por exemplo, atraso, mudanca de planos, condicao de pagamento, etc.).",