
saadrahman01/moodle-mcp
Developer tools이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기
Model Context Protocol server giving AI assistants live access to moodledev.io docs, Hooks API, capabilities, XMLDB, and the Moodle Jira tracker.
개요
Model Context Protocol server for Moodle development. Plug into Claude Desktop, Cursor, Continue, Cline, or any MCP-capable assistant — get live moodledev.io documentation lookups right in your editor. Companion to claude-moodle-dev — that plugin teaches AI assistants the Moodle conventions; this server gives them live access to the canonical docs. Ten MCP tools, hardened to survive site redesigns: Plus MCP (moodle://docs/apis/... for one-click page reads), (moodle-plugin-skeleton, moodle-capability-review, moodle-hooks-migration, explain-capability, find-endpoint, explain-plugin-type, xmldb-upgrade, diagnose-mdl), (readOnlyHint, destructiveHint) for client safety, and during multi-fetch searches. No API keys required for docs. Pulls the public sitemap, caches it on disk (~/.cache/moodle-mcp/), scores against your query, fetches top pages concurrently with retry + conditional GET + Retry-After header respect. Edit ~/Library/Application Support/Claude/claude_desktop_config.
README
원문 README의 일부입니다. 원문 보기.
moodle-mcp
Model Context Protocol server for Moodle development. Plug into Claude Desktop, Cursor, Continue, Cline, or any MCP-capable assistant — get live
moodledev.iodocumentation lookups right in your editor.
Companion to claude-moodle-dev — that plugin teaches AI assistants the Moodle conventions; this server gives them live access to the canonical docs.
What you get
Ten MCP tools, hardened to survive site redesigns:
| Tool | Purpose |
|---|---|
search_moodle_docs(query, limit=5, offset=0, version?) |
Search moodledev.io. Synonym expansion, quoted-phrase boost, BM25 + trigram-cosine rerank, pagination, optional version filter (4.4, 4.5, …). Optional Algolia DocSearch fast-path. |
fetch_moodle_page(url) |
Pull a single page in full — body text + headings. Rejects off-host URLs, non-http schemes, and path traversal. |
get_hooks_api_listeners() |
Surface the core Hooks API index + detected hook classes. |
get_capability_docs(component?) |
Access API lookup with a RISK_* quick-reference card; optional component scope. |
lookup_db_xmldb(query) |
Focused XMLDB / database schema search. |
list_plugin_types() |
Table of every Moodle plugin type with one-line hints + docs URL. |
get_version_info() |
Current Moodle versions parsed from /general/releases. |
search_tracker(query, limit=5, affects_version?, fix_version?) |
Issue search against tracker.moodle.org (Jira), now with version filters. |
list_ws_functions() |
List Moodle Web Services functions available to the configured instance token. Requires MOODLE_URL + MOODLE_TOKEN. |
call_ws_function(function, args) |
Invoke a Moodle WS function against a real instance. SSRF-guarded, function-name allowlisted, refuses private/loopback hosts unless explicitly overridden. |
Plus MCP resources (moodle://docs/apis/... for one-click page reads), prompts (moodle-plugin-skeleton, moodle-capability-review, moodle-hooks-migration, explain-capability, find-endpoint, explain-plugin-type, xmldb-upgrade, diagnose-mdl), tool annotations (readOnlyHint, destructiveHint) for client safety, and progress notifications during multi-fetch searches.
No API keys required for docs. Pulls the public sitemap, caches it on disk (~/.cache/moodle-mcp/), scores against your query, fetches top pages concurrently with retry + conditional GET + Retry-After header respect.
Optional environment variables
| Variable | Purpose |
|---|---|
MOODLE_URL |
Base URL of a real Moodle instance (https). Enables WS tools. |
MOODLE_TOKEN |
WS token for that instance. |
설치
docker run --rm -i moodle-mcp설정
{
"mcpServers": {
"moodle": {
"command": "moodle-mcp"
}
}
}