# Segurança e controle

O que o seu agente pode fazer na sua conta, o que ele nunca vê e como você
corta o acesso.

Estes controles reduzem o risco, não o eliminam: quem autoriza o agente a agir
é você. Veja a [Política de uso](/politica-de-uso).

## O que o agente nunca vê

O token do Mercado Livre fica em cofre criptografado, é renovado sozinho e
**nenhuma tool o devolve**. `connection_status` mostra só a validade
(`token_expires_at`) e se a conexão está `ok` ou pede `reconnect_required`.

O que **é** segredo do seu lado:

| Credencial | Onde aparece |
|---|---|
| URL do painel | Em **Seu agente**: uma por pessoa, por espaço de trabalho. Trate como senha. |
| Chave de API (`mcpk_`) | Mostrada **uma única vez**, na criação. Guardamos só o hash. |
| OAuth | Login na sua conta mcplace. Não há segredo para guardar. |

## A URL do painel

É uma URL por pessoa, por espaço de trabalho. Ela alcança todas as contas
conectadas desse espaço de trabalho. Trocar de espaço de trabalho no painel não
muda o espaço a que o agente já está ligado. Estreitar a conexão para uma só
conta, com `/a/<apelido>` no fim da URL, continua sendo a mesma credencial, não
uma segunda.

## Os dois interruptores de escrita

Em **Conectores → a conta → Segurança de escrita**. Valem na
hora, sem botão de salvar:

- **Somente leitura (bloqueia todas as escritas)**
- **Exigir confirmação explícita em toda escrita**

O agente consegue ler o estado atual com `connection_status` (`read_only`,
`require_confirm`).

Uma API key criada com **Somente leitura** também não escreve, mesmo com o
conector liberado.

## Como funciona a confirmação

Com a confirmação exigida, a primeira chamada de escrita **não executa nada** e
devolve:

```text
Esta ação exige confirmação explícita. Repita a chamada com confirm=true após confirmar com o usuário.
```

O agente pergunta a você e repete a **mesma** chamada com `confirm=true`.

Seja claro sobre o que isso é: `confirm` é um parâmetro, não um código enviado a
você. A trava obriga o agente a parar e perguntar; ela não impede um agente mal
instruído de mandar `confirm=true` direto. Para garantia de verdade use
**Somente leitura**, e mantenha ligada a aprovação de ações do seu cliente
(clientes como Claude e ChatGPT costumam pedir sua permissão antes de tools
marcadas como destrutivas).

**Sempre exigem confirmação**, com o interruptor ligado ou não:
`delete_question`, `split_shipment` e `resolve_claim`.

**Marcadas como destrutivas** para o cliente: `update_item`,
`update_stock`, `delete_question`, `split_shipment` e
`resolve_claim`.

## O que o servidor recusa sozinho

| Regra | Mensagem |
|---|---|
| Preço variando mais de 50% para cima ou para baixo | `Variação de preço acima do limite de segurança (±50%). A alteração não foi enviada.` |
| Estoque negativo | `Estoque não pode ser negativo. A alteração não foi enviada.` |
| Mensagem em conversa bloqueada ou fechada | `Esta conversa está bloqueada/fechada pelo Mercado Livre. Só é possível responder conversas ativas iniciadas pelo comprador.` |
| Mensagem direta ao comprador com a reclamação em mediação | `Esta reclamação está em mediação: mensagens diretas ao comprador não são permitidas. Use to='mediator'.` |
| Ação de reclamação que o Mercado Livre não liberou para você | recusada antes de chegar ao Mercado Livre |
| Anexo que não seja `.jpg`, `.jpeg`, `.png`, `.pdf` ou `.txt`, ou maior que 25 MB | recusado |

Conector em somente leitura devolve:

```text
Este conector está em modo somente-leitura. Desative o modo no painel para permitir escritas.
```

## Auditoria

Em **Auditoria** no painel: toda tentativa de escrita, com **Quando · Ação ·
Conta · Resultado · Quem · Detalhe**, com filtros e exportação. **Quem** diz
quem pediu: você (com o cliente de IA, quando conhecido), uma chave de API pelo
nome ou, em organizações, o membro. Os registros ficam por 24 meses.

O resultado é um de quatro:

| Resultado | O que quer dizer |
|---|---|
| `ok` | A escrita foi feita. |
| `rejeitada` | Uma regra do servidor recusou antes de enviar: preço variando mais de 50%, estoque negativo, ação ou canal indisponível na reclamação, anexo inválido, conversa fechada, identificador ausente. |
| `barrada` | Um controle impediu a escrita, e o motivo vem junto: somente leitura, sem escopo de escrita, faltou confirmação, escritas pausadas, tool bloqueada nesta conta, conta suspensa, limite diário do titular atingido e, em organizações, só leitura liberada pelo cliente ou papel do membro que não permite. |
| `erro` | O marketplace recusou ou falhou, ou a escrita não pôde rodar porque a conta precisa de reautorização, a assinatura foi cancelada ou o marketplace não oferece a operação. |

Uma escrita barrada também consome a cota do dia: a cota é verificada antes
da permissão (veja [Cota do plano Grátis](/erros-e-limites#free-quota)).

Uma **leitura** recusada por cota não vira linha de auditoria — ela aparece só no Uso.

**Os valores.** Quando a escrita altera um anúncio, um estoque ou uma
reclamação, a linha guarda cada campo alterado como o que era antes → o que foi enviado:
o antes, lido do marketplace no momento da ação; o depois, o valor que o
mcplace enviou. Os campos são preço, estado, quantidade disponível e condição
do anúncio, quantidade por depósito e estado e etapa da reclamação; de outros
campos do anúncio fica só quantos foram alterados. Uma escrita que não chegou a
ser feita pode trazer só o antes, ou nenhum valor. Nunca guardamos token,
número de documento, texto de mensagem, resposta ou nota, nem dados dos seus
compradores. Dos demais parâmetros fica só uma impressão digital (hash).

Esses valores são o seu histórico, não cache. Se você revogar o mcplace no
Mercado Livre ou excluir a sua conta, os valores são apagados e a linha fica,
com a marca de que os valores foram removidos. Desconectar a conta pelo painel
não apaga o histórico.

Mudar os interruptores, rotacionar a URL e desconectar também ficam
registrados.

## Se a URL vazar

Gire a URL em **Seu agente**. Girar a URL corta na hora toda conexão que usa a
atual, inclusive as estreitadas com `/a/` ou `/c/`. Tenha onde colar a nova
antes de girar. A antiga para de funcionar na hora, e todo agente configurado
com ela precisa receber a nova.

API key não tem rotação: **revogar** em **API keys** e criar outra. Quem usa a
chave revogada para na hora.

## Cortar o acesso

**Pelo painel — Desconectar conta.** Apaga o token do Mercado Livre do cofre e
desconecta a conta. O cache restante expira em até 60 segundos.

A autorização dada ao mcplace **continua listada dentro do Mercado Livre** até
você removê-la por lá. Para encerrar dos dois lados, remova também o mcplace
nos aplicativos autorizados da sua conta do Mercado Livre.

**Pelo Mercado Livre.** Se você remover a autorização por lá, o mcplace detecta
na verificação seguinte, que roda a cada 6 horas: destrói o token, invalida o
cache, apaga os valores da auditoria daquele conector e suspende o conector. A detecção pode levar
até esse prazo.

Para apagar a conta inteira ou exportar seus dados, veja [LGPD](https://mcplace.com.br/lgpd).

## Regras do Mercado Livre que o agente não contorna

- **Sem mensagem automática ou padronizada no pós-venda.** O Mercado Livre
  bloqueia e sua conta corre risco. O envio é limitado a 8 mensagens por minuto.
- **Etiquetas saem como o Mercado Livre entrega**, sem alteração.
- **Ads é somente leitura.**
- **Só os seus dados.** Nada de comparar ou cruzar com outras lojas.
