Search and read 550+ free AI course tracks and 21,000+ lessons, so answers can cite a real lesson.
One address for any MCP client. Your key stays in your Odel vault.
At most: only reads or looks up information.
Odel charges nothing per call. The publisher may charge for its own service.
Odel could not list its tools without signing in.
Gives any MCP client - Claude Code, Claude Desktop, or anything else speaking the protocol - the ability to search and read the free AI School curriculum: 550+ tracks covering AI engineering, governance, security, and applied AI by profession.
The point is not "an AI that knows about AI". It is that when an assistant answers a question about, say, chunking strategy or the EU AI Act, it can point at a specific lesson you can go and read, instead of producing a fluent paragraph you have no way to check.
One command, nothing to clone. Node 20+ is the only requirement: no API key, no account, no server to run.
Claude Code
claude mcp add ai-school -- npx -y ai-school-mcp
Claude Desktop - add to claude_desktop_config.json:
{
"mcpServers": {
"ai-school": {
"command": "npx",
"args": ["-y", "ai-school-mcp"]
}
}
}
Pin a version if you would rather not track the latest release:
claude mcp add ai-school -- npx -y ai-school-mcp@1.0.1
Hosted, nothing to install. The same server also runs at
https://lillytechsystems.com/mcp over Streamable HTTP, and is listed in the
official MCP Registry as com.lillytechsystems/ai-school:
claude mcp add --transport http ai-school https://lillytechsystems.com/mcp
Faster to start, and the right setup for contributing or for pointing at a local copy of the site:
git clone https://github.com/Lilly-Tech-Collab/ai-school-mcp.git
cd ai-school-mcp
npm install
npm test # smoke-tests the handshake, tools and a live API call
claude mcp add ai-school -- node "$PWD/server.js"
Set AI_SCHOOL_SITE to point the server at a different host; it defaults to
https://lillytechsystems.com.
The server reads the public static curriculum API at
https://lillytechsystems.com/ai-school/api/v1/, which is a set of JSON files
on the same host as the site. Nothing is authenticated and nothing is written.
| Tool | What it does |
|---|---|
search_lessons | Search lesson titles across the whole curriculum. Returns titles and URLs. |
list_tracks | List course tracks, optionally filtered. |
get_track | One track with its full lesson list, so you can see a course's structure. |
read_lesson | Fetch a lesson's full text as readable markdown-ish output. |
| URI | Contents |
|---|---|
aischool://catalogue | Counts, licence terms, endpoint list. |
aischool://tracks | Every track with lesson counts. |
read_lesson only fetches lillytechsystems.com. A "read this URL" tool that
accepts arbitrary hosts is an SSRF primitive handed to whoever wrote the prompt, so
the host check is deliberate and should stay.list_tracks then get_track usually will.aischool://catalogue.npm run inspect # opens the MCP Inspector against this server
The server writes only to stderr; stdout is the protocol channel.