Conceito
Workspaces e permissões
Como as conexões MCP acessam os workspaces, o argumento workspace por chamada, os papéis e as ferramentas exclusivas de Admin, os escopos sending e full, os tokens e a revogação do acesso.
Um assistente de IA conectado ao Emailit nunca pode fazer mais do que você. O que ele pode fazer depende de três coisas: quais workspaces você permitiu, o seu papel em cada um e o escopo que você aprovou.
Acesso aos workspaces
Quando você se conecta, a página de consentimento pergunta quais workspaces o app pode usar:
| Opção | O que o app pode acessar |
|---|---|
| All my workspaces | Todos os workspaces de que você participa, incluindo os que você criar ou em que entrar depois |
| Only these workspaces | Os workspaces que você marcar |
Se você permitir mais de um, também escolhe por onde o app começa: o workspace padrão para os pedidos que não citam um.
Você pode alterar as duas coisas depois em AccountConnected apps, com Edit access. As alterações valem a partir da próxima requisição do app, sem reconectar. Se você sair de um workspace ou alguém remover você, o app também perde o acesso a ele.
Escolher o workspace de um pedido
| Ferramenta | O que faz |
|---|---|
get-current-workspace |
Retorna o workspace padrão, o seu papel nele e o escopo concedido |
list-workspaces |
Lista os workspaces que esta conexão pode usar, com o seu papel em cada um |
switch-workspace |
Altera o workspace padrão para as próximas chamadas nesta conexão |
create-workspace |
Cria um workspace, adiciona-o à conexão e muda para ele (exige full) |
Com OAuth, todas as ferramentas fora do toolset Workspace também recebem um argumento opcional workspace: um ID de workspace ou o nome exato do workspace. Ele executa essa única chamada nesse workspace sem alterar o padrão, então dois chats trabalhando em workspaces diferentes não interferem um no outro. Os assistentes passam esse argumento quando você cita um workspace (“No Acme Client, liste os domínios”).
O workspace padrão se mantém entre as atualizações de token, então uma sessão longa continua de onde você parou.
Papéis
As ferramentas são executadas com o seu papel no workspace de destino, exatamente como no painel. Proprietários e administradores podem fazer tudo o que o escopo permite. Membros com o papel Member não podem:
- criar, renomear, excluir ou regenerar chaves de API (
create-api-key,update-api-key,delete-api-key,regenerate-api-key), - excluir domínios de envio (
delete-domain).
Quando um membro com o papel Member pede uma dessas ações, a ferramenta retorna um erro admin_role_required que cita o workspace e o seu papel, e nada é alterado. Peça a um Admin do workspace que faça isso ou que altere o seu papel. As mesmas verificações de papel valem para as chamadas OAuth à API REST.
Escopos
| Escopo | Ferramentas |
|---|---|
sending |
send-email, update-email, cancel-email, retry-email, forward-email, get-current-workspace, list-workspaces, switch-workspace |
full |
Todas as ferramentas, incluindo todas as acima |
A maioria das ferramentas de IA solicita os dois escopos. Quando uma conexão sem full chama uma ferramenta que precisa dele, a ferramenta retorna um erro de escopo ausente. Os clientes compatíveis com autorização incremental (step-up), como o ChatGPT, mostram de novo a tela de aprovação do Emailit para você conceder full; com outros clientes, revogue a conexão e reconecte com acesso total.
As conexões com chave de API funcionam de outra forma: o servidor oculta as ferramentas que a chave não pode chamar, então uma chave Sending Only só vê as ferramentas de envio.
Tokens e sessões
| Duração | |
|---|---|
| Token de acesso | 15 minutos |
| Token de atualização | Até 60 dias de inatividade, substituído a cada uso |
Reutilizar um token de atualização antigo revoga a conexão inteira, o que protege você se um token vazar. O servidor MCP em si não tem estado, então não há sessão para expirar; os clientes atualizam os tokens em segundo plano.
Conexões com chave de API
Uma chave de API age no workspace em que foi criada. Ela não tem o argumento workspace, não tem acesso às ferramentas de workspace que exigem OAuth (list-workspaces, switch-workspace, create-workspace) e não tem limites de papel, porque a própria chave carrega a permissão. Crie uma chave Sending Only para agentes que só enviam.
Revisar e revogar o acesso
AccountConnected apps lista todos os apps que você aprovou, os workspaces que cada um pode usar, o nível de acesso e quando ele se conectou. Revoke access invalida os tokens do app imediatamente; ele precisa pedir permissão de novo para se reconectar. Consulte Apps conectados ou gerencie as autorizações pelo código com a API de autorizações.