Skip to main content
Documentation

Troubleshooting

License validation fails

"Invalid credentials" — the license key and the panel secret must be the pair issued together. If you rotated credentials, the plugin still has the old pair: paste the new one. If you only copied one value before leaving the page, rotate to get a fresh pair.

"URL mismatch" — the site calling doesn't match the URL registered in the panel. Common when Moodle sits behind a proxy and $CFG->wwwroot differs from the public hostname, or after a domain change. Update the URL in Organization → Moodle and validate again.

The plugin can't reach the panel at all — your Moodle needs outbound HTTPS. Check curl https://moodlemcp.com from the server and any proxy settings in Moodle.

The site can't be connected

"URL not allowed" — the URL must be public HTTPS with a valid certificate. localhost, private ranges and VPN-only hosts are rejected by design. A staging site works if it's publicly reachable.

Certificate errors — a self-signed or expired certificate fails validation. Fix the certificate; there is no bypass.

The assistant says it has no tools

  • The client hasn't reloaded its MCP configuration. Restart it.
  • The URL is wrong: it must be your organization's subdomain and end in /mcp.
  • With a Bearer key: check the header is exactly Authorization: Bearer mcpk_…, and that the key isn't suspended, revoked or expired.
  • With OAuth: remove the connector and re-authorize.

The assistant sees nothing in Moodle

The key works but the underlying Moodle user has no access to what you're asking about. Roles are the outer boundary — a student key can't list a course's participants. Check which user the key was minted for, and whether the key is restricted to read-only, to specific tools or to specific courses. See Keys & permissions.

Calls started failing after they worked

  • The key was suspended or revoked, in the panel or from the plugin.
  • The credentials were rotated and the plugin hasn't been updated.
  • The Moodle user lost the role the key relies on, or was deleted.
  • The token was deleted in Moodle under Site administration → Server → Web services → Manage tokens.

Organization → Moodle → Usage shows errors per key and per tool, which usually pinpoints it in seconds.

A file won't upload

The URL must return the file, not a page wrapping it. Test with curl -IL <url> from outside your network. Google Drive, Dropbox and GitHub each need a specific URL form — see Uploading files. If the tool is missing entirely, your plugin is too old; update it.

The chat is missing or refuses to answer

  • No MCP key is selected as the AI chat identity in Organization → Moodle.
  • The credit balance can't cover the message — top up in Organization → Credits.
  • You hit the rate limit of 10 messages per minute. Wait a moment.

The organization is locked

The trial ended or a payment failed. Subscribe or fix the payment method in Organization → Billing. Nothing is deleted while locked.

Still stuck

Note the exact error, the key's last 4 characters (never the key itself) and the time it happened, and open an issue at github.com/studiolxd/moodlemcp/issues.