Pular para o conteúdo

O que é o MCP

O MCPModel Context Protocol — é uma norma aberta que permite a um assistente de IA usar serviços externos. Sem ele, o assistente só sabe conversar: pode escrever-lhe o texto de um contrato, mas não o consegue enviar para assinatura. Com ele, passa a ter ferramentas.

O AssinaJá expõe um servidor MCP oficial. Depois de o ligar, pode pedir ao assistente, em linguagem corrente, que prepare um documento a partir de um modelo seu, que lhe diga quem ainda não assinou, ou que lhe traga o PDF assinado.

O trabalho de assinatura tem muito de repetitivo: pegar num modelo, preencher os mesmos campos com dados que estão noutro sítio, escolher os signatários, enviar, e depois andar a verificar quem falta. É esse intervalo que o MCP fecha.

Trabalha onde já está. Se está a preparar uma proposta numa conversa com o assistente, o documento sai dessa mesma conversa. Não há exportar, mudar de separador, voltar a carregar o ficheiro.

O assistente lê os seus modelos. Consulta os modelos reais da sua organização — com os signatários e os campos de preenchimento que estão lá definidos — em vez de inventar um formato.

Serve para perguntar, não só para fazer. “Quais os documentos que estão à espera de assinatura há mais de uma semana?” é uma pergunta que o assistente responde consultando a lista real.

É o mesmo motor. As ferramentas MCP chamam os mesmos serviços da API pública — não há uma segunda implementação com regras diferentes. O que é proibido na aplicação continua proibido aqui.

Forma Para quem
OAuth Assistentes web: Claude.ai, ChatGPT, Copilot, Grok
Cabeçalho X-Api-Key Ferramentas locais e automatismos: Claude Code, Cursor, CI

Os assistentes web não permitem definir cabeçalhos próprios, por isso usam OAuth. São essas as ligações descritas em Ligar o Claude.ai e Ligar o ChatGPT.

O endereço do servidor é o mesmo nos dois casos:

https://app.assinaja.pt/mcp

Para o Claude Code, por exemplo, a ligação é um comando único, com a chave API a viajar no cabeçalho:

Terminal window
claude mcp add --transport http assinaja https://app.assinaja.pt/mcp \
--header "X-Api-Key: ajk_live_..."

Esta é a parte que distingue a integração, e vale a pena perceber antes de ligar o que quer que seja.

Mesmo pelo OAuth, o que é emitido não é um acesso à sua conta de utilizador. É um acesso vinculado a uma chave API concreta. A própria página de autorização diz isso:

Este assistente de IA pede acesso à sua organização. O acesso é feito através de uma API Key — o assistente só poderá fazer o que essa chave permite, e nunca acede à sua conta.

Se a chave só pode consultar documentos, é isso que o assistente pode fazer — não há caminho por onde chegue ao resto.

A filtragem é anterior à decisão do assistente. Quando ele pergunta ao servidor que ferramentas existem, a resposta já vem cortada pelos acessos da chave: uma ferramenta fora do âmbito não aparece na lista, e não é apenas recusada quando chamada.

Na prática, um assistente ligado por uma chave sem Documentos — publicar não sabe sequer que publicar é possível.

Autorizar não é um clique que se perde. Fica gravado quem autorizou, que chave, que assistente, que acessos, quando, e a partir de que endereço. Vê esse registo em Definições → API Keys, na secção Autorizada a assistentes de IA:

Registo de consentimentos (evidência). Para cortar o acesso de um assistente, suspenda ou elimine a chave.

A chave é revalidada a cada pedido. Suspender, expirar ou eliminar a chave corta o acesso do assistente na hora — não há que esperar que uma sessão termine.

Vale como resposta ao caso mais desconfortável: se desconfia de uma ligação, suspenda a chave e veja o que parte. Suspender é reversível.

O servidor envia instruções de segurança que o assistente recebe antes de agir: os códigos de signatário pertencem ao modelo e nunca podem ser inventados; publicar envia emails imediatamente e não se desfaz, por isso exige confirmação explícita na conversa; e uma criação falhada nunca é repetida às cegas, porque uma segunda chamada cria um segundo documento e uma segunda leva de emails.

60 pedidos por minuto por credencial. É partilhado com a API pública.

As ferramentas disponíveis dependem dos acessos marcados na chave. Os nomes à direita são os que vê no assistente.

Acesso da chave O assistente passa a poder
Modelos — consultar Listar modelos · Ver detalhes do modelo
Documentos — consultar Listar documentos · Ver detalhes do documento · Vista geral do documento · Obter ligações de assinatura · Descarregar ficheiro do documento
Documentos — criar Criar documento · Criar documento a partir de modelo · Criar documento a partir de modelo Word · Criar link de upload · Estado do link de upload
Documentos — publicar Publicar rascunho e notificar signatários
Documentos — arquivar/eliminar Arquivar documento · Eliminar documento · Eliminar rascunho
Organização — consultar Ver organização · Ver subscrições e funcionalidades do plano
Analytics — consultar Vista geral de analytics · Métricas de utilização · Métrica ao longo do tempo · Repartição de uma métrica · Funil de assinatura · Adesão e lugares · Catálogo de métricas

O assistente não consegue ir buscar ficheiros ao seu disco. Quando precisa de um, cria uma ligação de entrega — abre-a, carrega o ficheiro, e ele continua. Ver Entregar um ficheiro a um assistente.

As analytics estão desligadas por omissão. Se um assistente pode ler os números da organização é uma decisão à parte, em Definições → Políticas:

Se assistentes ligados por MCP podem consultar os números desta organização. Está desligado por defeito. Nunca dá acesso a documentos, a conteúdos nem a chaves — apenas a métricas agregadas, e cada consulta fica registada na auditoria.

Um assistente pode enganar-se. Ler os documentos certos e resumir mal é uma falha possível, e o MCP não a resolve. Para o que importa, confirme na aplicação antes de enviar.

O que ele fizer fica em seu nome. Os documentos são criados na sua organização e consomem as suas quotas.