Skip to main content
Glama

Moodle MCP Server

Сервер Model Context Protocol (MCP) + REST API, который подключает Claude, ChatGPT, Google Gemini и любую другую модель ИИ к любому экземпляру Moodle LMS. Написан на Go.

Студенты могут взаимодействовать со своей учетной записью Moodle через любимый ИИ — просматривать курсы, проверять оценки, отслеживать сроки, сдавать задания и читать уведомления.

Работает с:

  • Claude (Desktop, Code) — через MCP (самый простой способ!)

  • ChatGPT (Plus) — через REST API + Actions

  • Google Gemini — через REST API + Apps Script

  • Любой ИИ — через REST API (HTTP-эндпоинты)

Функции

Инструмент

Описание

login

Интерактивная аутентификация на вашем сайте Moodle

get_site_info

Просмотр информации о сайте Moodle и пользователе

get_user_profile

Просмотр данных вашего профиля

list_courses

Список всех курсов, на которые вы записаны

get_course_contents

Просмотр разделов, ресурсов и заданий

get_course_details

Просмотр метаданных курса

get_grades

Просмотр оценок по конкретному курсу

get_grades_overview

Сводка оценок по всем курсам

get_assignments

Просмотр заданий для курса

get_upcoming_assignments

Просмотр предстоящих заданий по всем курсам

submit_assignment

Отправка текстового контента для задания

get_calendar_events

Просмотр предстоящих событий календаря

get_upcoming_deadlines

Просмотр консолидированных сроков, отсортированных по срочности

get_notifications

Просмотр сообщений и уведомлений

Требования

  • Claude Desktop (macOS, Windows или Linux)

  • Учетная запись Moodle в любом учебном заведении

Быстрый старт

Выберите свою платформу ИИ:

Ваш ИИ

Руководство

Время

🤖 Claude (Рекомендуется)

Windows / macOS

2 мин

💬 ChatGPT

Настройка ChatGPT

15 мин

🔍 Google Gemini

Настройка Gemini / Gemini Windows

20 мин

🌐 Несколько ИИ

Руководство по всем моделям

1 час

Начните отсюда: Если вы используете Claude, следуйте руководству для Windows/macOS выше (2 минуты!)

Не программист? Все руководства содержат пошаговые инструкции, не требующие технических знаний.


Установка (самый простой способ)

Для Windows (PowerShell)

Откройте PowerShell и выполните:

irm https://raw.githubusercontent.com/Jawadh-Salih/moodle-mcp-server/main/install.ps1 | iex

Это автоматически скачает и установит бинарный файл в C:\Users\YourName\moodle-mcp\moodle-mcp.exe

Для macOS / Linux (Bash)

Откройте терминал и выполните:

curl -fsSL https://raw.githubusercontent.com/Jawadh-Salih/moodle-mcp-server/main/install.sh | bash

Это автоматически скачает и установит бинарный файл в ~/.moodle-mcp/moodle-mcp

Ручная установка (для разработчиков)

Если вы хотите собрать проект из исходного кода:

# Clone the repository
git clone https://github.com/Jawadh-Salih/moodle-mcp-server.git
cd moodle-mcp-server

# Build the binary
go mod tidy
go build -o moodle-mcp ./cmd/moodle-mcp/

Использование

Вариант 1: Интерактивный вход (рекомендуется)

Просто запустите сервер без конфигурации. При общении с Claude используйте инструмент login для аутентификации:

"Войди в мой Moodle по адресу https://online.uom.lk с именем пользователя student@uom.lk"

Claude запросит ваш пароль и выполнит аутентификацию.

Вариант 2: Переменные окружения

Установите учетные данные в качестве переменных окружения для автоматического входа:

export MOODLE_URL=https://online.uom.lk
export MOODLE_USERNAME=your-username
export MOODLE_PASSWORD=your-password

Или, если у вас есть токен API Moodle:

export MOODLE_URL=https://online.uom.lk
export MOODLE_TOKEN=your-api-token

Конфигурация Claude Desktop

Если вы использовали автоустановщик:

Установщик покажет вам точный путь. Просто скопируйте его!

Ручная конфигурация

Найдите файл конфигурации Claude Desktop:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json Linux: ~/.config/Claude/claude_desktop_config.json

Вариант A: Интерактивный вход (рекомендуется — нет учетных данных в конфиге)

{
  "mcpServers": {
    "moodle": {
      "command": "/path/to/moodle-mcp"
    }
  }
}

Затем в Claude используйте инструмент login для интерактивной аутентификации.

Вариант B: С сохраненными учетными данными

{
  "mcpServers": {
    "moodle": {
      "command": "/path/to/moodle-mcp",
      "env": {
        "MOODLE_URL": "https://online.uom.lk",
        "MOODLE_USERNAME": "your-username",
        "MOODLE_PASSWORD": "your-password"
      }
    }
  }
}

Примеры путей для Windows:

  • Автоустановщик: C:\Users\YourName\moodle-mcp\moodle-mcp.exe

  • Ручная сборка: C:\Users\YourName\Go\bin\moodle-mcp.exe

Примеры путей для macOS:

  • Автоустановщик: /Users/yourname/.moodle-mcp/moodle-mcp

  • Ручная сборка: /Users/yourname/moodle-mcp-server/moodle-mcp

Поддержка нескольких платформ ИИ

Через MCP (только Claude)

  • ✅ Claude Desktop (macOS, Windows, Linux)

  • ✅ Claude Code (VSCode, терминал)

Через REST API (ChatGPT, Gemini, любой ИИ)

  • ✅ ChatGPT (с пользовательскими GPT Actions)

  • ✅ Google Gemini (с Apps Script)

  • ✅ Любой ИИ с доступом к HTTP-клиенту

  • ✅ Пользовательские скрипты и интеграции

Подробные инструкции для каждой платформы см. в Настройке всех моделей.

Запуск сервера REST API

Для ChatGPT, Gemini или других моделей ИИ запустите режим REST API:

# Start REST API server
go run ./cmd/moodle-mcp/ -mode rest -port 8080

# Or if you built the binary:
./moodle-mcp -mode rest -port 8080

# View API docs
curl http://localhost:8080/api/docs

Сервер прослушивает http://localhost:8080 и предоставляет REST-эндпоинты:

  • POST /api/login — Аутентификация

  • GET /api/courses — Список курсов

  • GET /api/grades?course_id=123 — Получить оценки

  • GET /api/assignments/upcoming — Предстоящие задания

  • И многое другое!

Для продакшена (ChatGPT/Gemini) разверните в облаке:


Примеры диалогов

После подключения вы можете спрашивать Claude о следующем:

  • "Покажи мои курсы"

  • "Какие у меня оценки по CS101?"

  • "Какие задания нужно сдать на этой неделе?"

  • "Покажи содержимое моего курса по структурам данных"

  • "Есть ли у меня непрочитанные уведомления?"

  • "Какие дедлайны приближаются в ближайшие 7 дней?"

Как это работает

Этот сервер использует Web Services REST API Moodle с токеном службы moodle_mobile_app. Эта служба включена по умолчанию в большинстве установок Moodle, поэтому настройка администратором не требуется.

Устранение неполадок

Ошибка "Invalid login": Перепроверьте имя пользователя и пароль. Некоторые учебные заведения используют email в качестве имени пользователя, другие — отдельный ID.

Ошибка "Web service not available": Ваш администратор Moodle мог отключить мобильную веб-службу. Попросите его включить её в разделе Администрирование сайта > Плагины > Веб-службы > Мобильное приложение.

Оценки не отображаются: API отчетов об оценках требует права gradereport/user:view, которое является стандартным для студентов, но может быть ограничено на некоторых сайтах.

Лицензия

MIT

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Jawadh-Salih/moodle-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server