Checklist

Checklist MCP-first

Uma checklist para verificar um sistema existente ou planejado contra os princípios MCP-first, Produto, Engenharia, Segurança e UX.

Uma checklist para verificar um sistema existente ou planejado contra os princípios MCP-first.

Produto

  • Cada feature está descrita como Capability, não apenas como Screen ou Button?
  • Existe uma intenção clara do usuário para cada Capability?
  • Existe tanto uma forma de uso humana quanto uma forma de uso por agente para cada Capability?
  • Está claramente definido quais Capabilities podem ser executadas de forma autônoma?
  • Está claramente definido quais Capabilities exigem confirmação explícita do usuário?

Engenharia

  • Existe um Action Layer central que todas as interfaces utilizam em conjunto?
  • Todas as Actions são tipadas com schemas claramente definidos?
  • Existem schemas de entrada e saída para cada Tool?
  • Existem códigos de erro claros e legíveis por máquina por Tool?
  • Existe uma Policy Engine central que todas as interfaces utilizam em conjunto?
  • Existem Audit Logs para cada ação executada?
  • Existem testes por Tool que cobrem entradas, saídas e casos de erro?
  • Existe um modo Dry Run para ações arriscadas?

Segurança

  • Todas as Tools estão classificadas por nível de risco (low / medium / high / critical / forbidden)?
  • As Tools são filtradas já na Tool Discovery com base nos direitos do usuário, função e scopes, não apenas na invocação?
  • Existe Step-up Authentication para ações particularmente sensíveis?
  • Existem Human Confirmation Gates para ações críticas?
  • Existe Redaction e Context Filtering para que agentes recebam apenas o contexto necessário para sua tarefa?
  • Existe Tenant Isolation, de modo que nenhum acesso entre tenants seja possível?
  • Existem Rate Limits por agente, cliente e Tool?
  • Existe proteção contra ataques de Prompt Injection?
  • Os metadados de Tool são validados no servidor e não assumidos cegamente do cliente?
  • Existe monitoramento e alertas para ações de agente incomuns ou anômalas?

UX

  • O usuário pode acompanhar a qualquer momento quais ações um agente executou ou quer executar?
  • O usuário vê de forma clara e compreensível o que acontecerá concretamente em uma solicitação de confirmação?
  • O usuário pode rejeitar ou cancelar uma ação de agente proposta?
  • Existe um modo rascunho em que o agente prepara e o humano decide por último?
  • Existem opções de desfazer ou reverter para ações reversíveis?
  • Ações arriscadas são explicadas com linguagem clara, destinatários, escopo, efeitos externos, nível de risco?

Build capabilities once. Expose them everywhere.