Installation
Prebuilt Binaries
No Rust toolchain needed — grab the archive for your platform from the latest release:
| Platform | Archive |
|---|---|
| Linux x86_64 | moodle-mcp-<version>-x86_64-unknown-linux-gnu.tar.gz |
| Linux arm64 | moodle-mcp-<version>-aarch64-unknown-linux-gnu.tar.gz |
| macOS Apple Silicon | moodle-mcp-<version>-aarch64-apple-darwin.tar.gz |
| macOS Intel | moodle-mcp-<version>-x86_64-apple-darwin.tar.gz |
| Windows x64 | moodle-mcp-<version>-x86_64-pc-windows-msvc.zip |
tar xzf moodle-mcp-*-aarch64-apple-darwin.tar.gz
sudo mv moodle-mcp-*/moodle-mcp /usr/local/bin/ # or anywhere on PATH
# Windows (PowerShell): unpack, then add the folder to your PATH
Expand-Archive moodle-mcp-<version>-x86_64-pc-windows-msvc.zip
Each archive is around 9 MB and unpacks to a single self-contained binary (about 22 MB) plus the README and license — there are no runtime dependencies.
Tip: If macOS refuses to run a downloaded binary (“cannot be verified”), clear the quarantine flag once:
xattr -d com.apple.quarantine /usr/local/bin/moodle-mcp.
Cargo
cargo install moodle-mcp # needs Rust 1.88+
From Source
git clone https://github.com/G36maid/moodle-mcp
cd moodle-mcp
cargo build --release
# binary: target/release/moodle-mcp
Verify the Install
moodle-mcp with no arguments starts the MCP stdio server — it blocks
waiting for a client, which is expected. To confirm the binary is on your
PATH and see its version, run it with an unknown subcommand:
moodle-mcp help
# moodle-mcp: unknown subcommand 'help'
# usage: moodle-mcp [serve] | moodle-mcp auth [--url <site> ...]
When the server starts it logs starting moodle-mcp v0.1.4 for … to stderr
(logs go to stderr; stdout is reserved for the MCP protocol stream).
Next Steps
Continue with Getting Started to get a token and connect your client. Release notes live on the Changelog page.