Moodle MCP: сроки, задания, оценки и файлы курса для агента

Faixiang/Moodle-MCP· Проверено 12.11.2026· 205на GitHub

Подключает агента к Moodle через Web Service API по личному токену: курсы, задания и дедлайны, тесты, оценки и файлы курса. Для преподавателя есть вариант с проверкой работ и отзывами.

3 реализации:

Один файл на Python без зависимостей и только чтение: сводка за неделю, несданные задания с днями до срока, состояние тестов, файлы курса и скачивание недели.

Как подключить

Что сделать до подключения

1

Python 3.8 или новее, пакеты ставить не нужно

2

Moodle 3.x или 4.x с включёнными Web Services и протоколом REST

3

Скачать server.py; вместо переменных можно положить рядом config.json с url и token

4
MOODLE_TOKEN

Moodle → аватар → Preferences → Account → Security → Manage access keys → Create, сервис Moodle mobile web service

Конфиг для вашего клиента

Команда в терминале, в папке проекта. Флаг --scope user подключит сервер для всех проектов. Подробно о Claude Code

claude mcp add --env 'MOODLE_URL=https://<ваш Moodle>' --env 'MOODLE_TOKEN=<ваш токен>' --transport stdio moodle \
  -- python '<путь к Moodle-MCP>/server.py'

Проверка: claude mcp list показывает статус рядом с каждым сервером: ✔ Connected, ! Needs authentication или ✘ Failed to connect. Внутри сессии то же видно по команде /mcp.

Инструменты сервера

moodle_weekly_digestсводит новое, сроки и долги за неделю
moodle_pending_assignmentsпоказывает несданные задания и сроки
moodle_quiz_statusпоказывает попытки и баллы тестов
moodle_recent_updatesпоказывает новое за N дней
moodle_list_coursesперечисляет курсы
moodle_course_filesперечисляет файлы курса
moodle_download_weekскачивает файлы недели
moodle_site_infoпроверяет токен и доступные функции
moodle_setup_guideобъясняет, как получить токен
moodle_config_statusпроверяет настройку сервера

Что попросить агента

«Что мне нужно сдать на этой неделе?»Faixiang вызовет moodle_weekly_digest и вернёт таблицы со сроками, просрочками и итогами
«Какие новые материалы появились в курсе <курс> за неделю?»Faixiang вызовет moodle_recent_updates
«Покажи файлы курса <курс>, ничего не скачивай»Faixiang вызовет moodle_course_files
«Разбери задание <название>: требования, шаги и план до дедлайна»loyaniu вызовет extract_assignment_requirements, decompose_task и create_implementation_plan
«Покажи работы студента <имя> по заданию <ID> и поставь 8 с комментарием <текст>»peancor вызовет get_student_submissions и provide_assignment_feedback

Для каких задач

Узнать, что ещё не сдано на этой неделе и сколько дней осталось до срока
Посмотреть, какие материалы появились в курсе за последние дни
Скачать слайды и файлы заданий за неделю в папку на компьютере
Разобрать задание на требования, шаги и план работы
Проверить работы студентов и выставить оценки с комментариями

Ограничения

!

На сайте Moodle должны быть включены Web Services и протокол REST, а у аккаунта — право webservice/rest:use

!

Faixiang не видит сроки Turnitin: у этого модуля нет поля срока сдачи

!

loyaniu умеет записывать на курс, а peancor ставит оценки: оба меняют данные в Moodle

!

Moodle MCP Server от peancor последний раз обновлялся в феврале 2026 года и нужен токен администратора с правами на курс

Если не работает

get_token.py отвечает invalidlogin
Аккаунт входит только через SSO, локального пароля нет. Создайте токен в Manage access keys.
Ошибка 502 или обрыв соединения во время вызова
Сайт ограничивает частоту запросов. Подождите несколько минут и не вызывайте инструменты параллельно.
Инструменты возвращают пустые списки
Проверьте, что Web Services и REST включены на сайте, у аккаунта есть право webservice/rest:use, а course_ids указаны верно. Вызовите moodle_site_info: короткий список функций значит, что администратор ограничил токен.
Сроков тестов нет в moodle_weekly_digest
Так задумано: тесты живут в mod_quiz, для них есть moodle_quiz_status.
Кракозябры в терминале Windows
Вывод в UTF-8: в старой консоли выполните chcp 65001 или откройте Windows Terminal.

Какую реализацию выбрать

РеализацияКто делаетЗвёздыЗапускКлючИнструментыОбновлён
Moodle-MCP (Faixiang)Faixiang205локальнотокен101 ноября 2026
Moodle-MCP (loyaniu)loyaniu57локальнотокен316 ноября 2026
Moodle MCP Server (peancor)peancor45локальнотокен822 февраля 2026

Частые вопросы

Где взять токен Moodle?
Студенту: аватар → Preferences → Account → Security → Manage access keys, создать ключ со службой Moodle mobile web service; тот же список открывается по адресу /user/managetoken.php. Так работает и вход через SSO. Токен для peancor создаёт администратор в Site Administration → Plugins → Web Services → Manage tokens.
Какой вариант выбрать?
Студенту для обзора долгов и сроков хватит Faixiang: он только читает и не требует зависимостей. loyaniu шире: оценки, прогресс, разбор задания и самозапись на курс. Преподавателю для проверки работ нужен peancor.
Опасно ли давать агенту токен?
Токен даёт доступ к вашему аккаунту Moodle. У Faixiang все инструменты только читают, поэтому через него ничего не удалить, но ссылки на файлы содержат токен: не публикуйте их. При утечке отзовите токен в Manage access keys.
Что значит ошибка 502 во время вызова?
Сайт ограничивает частоту запросов. Faixiang и так делает паузу 150 мс между вызовами; подождите несколько минут и не запускайте несколько инструментов одновременно.
Как подключить Moodle MCP к Claude Desktop?
Для loyaniu добавьте в claude_desktop_config.json сервер с command uvx, args moodle-mcp и переменными MOODLE_URL и MOODLE_TOKEN, затем перезапустите Claude. Для Faixiang укажите python и абсолютный путь к server.py.
Работает ли сервер из России?
Серверы запускаются на вашем компьютере и обращаются только к сайту вашего Moodle, зарубежные аккаунты не нужны.

Похожие серверы