Um URL de conector por ligação
A sua organização pode ter várias ligações Moodle, e cada uma tem o seu próprio URL de conector: o subdomínio da organização, mais o slug da ligação no caminho.
https://<a-sua-organizacao>.slxd.app/mcp/lmsmcp/<ligacao>
Se trabalha num espaço pessoal e não numa organização partilhada, o URL não leva subdomínio:
https://lmsmcp.slxd.app/mcp/lmsmcp/<ligacao>
Não precisa de construir o URL à mão: o painel mostra-o com um botão de copiar na página da ligação, em URL do conector, e na lista de ligações em Organização → Moodle. Se foi provisionado a partir do plugin, também lhe chega por email junto com a chave.
O URL para o qual aponta o assistente é o que decide com que Moodle ele fala. Uma chave pertence a uma ligação, por isso apresentá-la no URL de outra ligação é recusado.
Fala o transporte MCP padrão Streamable HTTP, por isso qualquer cliente compatível se pode ligar. As instruções por cliente estão em configurar o cliente.
Duas formas de se autenticar
Escolha a que se adequa ao seu cliente. Se usa ChatGPT ou Claude — o caso mais comum — a primeira via é a sua.
Iniciar sessão com o seu Moodle (OAuth) — recomendada
É a via para o ChatGPT e o Claude (tanto o claude.ai no navegador como o Claude Desktop), e a recomendada sempre que o seu cliente a suporte. Adicione o URL do conector como conector MCP remoto; da primeira vez que ligar abre-se uma janela do navegador — escolha Iniciar sessão com o seu Moodle, autentique-se no seu próprio Moodle e aprove.
A partir daí o assistente fica preso à sua identidade e aos seus papéis no Moodle. Não há chave para copiar, guardar ou enviar por email, por isso não há nada que possa fugir. Voltar a autorizar, ou revogar a chave subjacente, corta a ligação.
Uma chave MCP
Para clientes que aceitam um token (Cursor, Claude Code, scripts, CI): envie a chave num cabeçalho Bearer. Os proprietários e administradores emitem chaves em Organização → Moodle → Chaves MCP, escolhendo a ligação a que a chave pertence, e o plugin pode enviar uma por email a cada utilizador provisionado. O valor é mostrado uma única vez.
O que acontece em cada chamada
Seja qual for a via, o servidor MCP determina a ligação a partir do URL e executa funções de serviço web do Moodle contra esse site, com o seu token e os seus papéis guardados. A autenticação é verificada em cada pedido, por isso uma credencial revogada, suspensa ou expirada fica cortada logo na chamada seguinte — não há sessão que expire.
Cada chamada, direta ou encaminhada pelas ferramentas de gateway, passa pelo mesmo cliente Moodle endurecido (ligações fixadas contra SSRF, tempo limite de pedido e teto de tamanho da resposta em streaming) e pela mesma barreira de papéis. O que uma chave pode fazer está em chaves e permissões.
Sem cliente? Use o painel
O chat de IA do painel usa o mesmo catálogo de ferramentas sem configurar cliente nenhum, o que é útil para confirmar que uma ligação funciona antes de configurar seja o que for. O chat fala com o Moodle como a chave MCP que escolher como identidade, por isso responde sobre a ligação dessa chave.