EduBase
официальныйВзаимодействуйте с EduBase — комплексной платформой электронного обучения с расширенными возможностями тестирования, управления экзаменами и организации контента.
Что можно делать с EduBase MCP?
-
Manage educational content — Попросите вашего ИИ создавать, обновлять или получать вопросы, викторины, экзамены и их настройки через наборы инструментов
questions,quizzesиexams. -
Analyze results and users — Пусть ваш ИИ получает результаты викторин/экзаменов, загрузки сертификатов, данные пользователей и членство в классах с помощью наборов инструментов
results,usersиclasses. -
Control tool access — Настройте, какие наборы инструментов доступны через
EDUBASE_TOOLSETS, включите режим только для чтения с помощьюEDUBASE_READONLYили позвольте модели активировать наборы инструментов по запросу черезedubase_enable_toolsetsиedubase_list_toolsets. -
Upload and manage files — Используйте инструмент
edubase_filebinдля загрузки временных файлов с защитой от SSRF и возможностью разрешения хостов черезEDUBASE_FILEBIN_ALLOWED_HOSTS. -
Secure remote access — Подключайтесь через OAuth 2.1 с EduBase в качестве поставщика удостоверений или используйте аутентификацию с помощью Bearer-токена с заголовком
Authorizationдля производственных развертываний.
Документация
MCP-сервер EduBase
Этот репозиторий содержит реализацию Model Context Protocol (MCP) сервера для платформы EduBase. Он позволяет MCP-клиентам (например, Claude Desktop) и LLM взаимодействовать с вашим аккаунтом EduBase и выполнять задачи от вашего имени. Поддерживаются транспортные протоколы stdio, SSE и streamable HTTP.

Что такое EduBase?
EduBase — это инновационная модульная онлайн-платформа для образования, которая делает обучение более увлекательным, простым и интерактивным. Она подходит для учебных заведений и предприятий.
Почему стоит выбрать EduBase?
EduBase меняет цифровое обучение благодаря уникальному сочетанию функций:
- Продвинутая система тестов с параметризацией, позволяющей создавать бесконечные вариации одного и того же вопроса, обнаружением списывания в реальном времени, красивой вёрсткой LaTeX, расширенной поддержкой STEM и автоматической оценкой
- Единая среда обучения, которая централизует весь ваш учебный контент — видео, экзамены, документы и SCORM-модули — в одной интуитивно понятной системе
- Безопасность корпоративного уровня с такими функциями, как интеграция SSO, детальный контроль доступа, комплексный аудит и соответствие требованиям GDPR
- Интеграция с вашими существующими системами через LTI, комплексный API и возможности индивидуальной интеграции
- Инструменты на базе ИИ, такие как EduBase Assistant, которые могут мгновенно преобразовывать ваш существующий контент в интерактивные тесты и задания или переводить материалы с одного языка на другой
От высших учебных заведений до корпоративных отделов обучения — EduBase масштабируется в соответствии с вашими потребностями, сохраняя интуитивно понятный пользовательский интерфейс на всех устройствах.
Демонстрационное видео
Совместное создание и загрузка вопросов, планирование экзаменов и анализ результатов пользователей с помощью Claude:
Получение учётных данных API
После входа в систему на панели управления найдите меню «Интеграции», нажмите «добавить интеграцию» и выберите тип «EduBase API».
Если вы не видите эту опцию, введите активационный код MCPGITHUB или свяжитесь с нами, чтобы запросить доступ по адресу info@edubase.net.
Инструменты
Каждая документированная конечная точка API доступна как инструмент с именем edubase_<method>_<endpoint>. Например, инструмент для конечной точки GET /user:me называется edubase_get_user_me. Теги, разрешения и передача прав работают одинаково для всех типов контента, поэтому для них используется один инструмент на метод с аргументом type (например, edubase_post_content_tag для POST /exam:tag, POST /quiz:tag и т. д.). Дополнительную информацию см. в нашей документации для разработчиков.
Наборы инструментов
Инструменты сгруппированы в наборы, поэтому вы можете предоставить доступ только к нужным инструментам. Меньшее количество инструментов использует меньше контекста модели и упрощает выбор правильного инструмента. Каждый набор инструментов включён по умолчанию.
| Набор инструментов | Инструменты для |
|---|---|
files | Временная загрузка файлов (всегда включена) |
questions | Вопросы |
quizzes | Наборы тестов, их вопросы, настройки и пресеты оценивания |
exams | Экзамены, их настройки, пользователи, сертификаты и брендинг |
results | Результаты тестов и экзаменов, загрузка сертификатов |
users | Пользователи, их имена, группы и ссылки для входа |
classes | Классы и членство в классах |
organizations | Организации, участники, отделы, компетенции и вебхуки |
integrations | Интеграции и их ключи |
tags | Теги и прикрепление тегов к контенту |
permissions | Разрешения пользователей на контент и передача прав владения |
metrics | Пользовательские метрики |
Выберите наборы инструментов с помощью списка, разделённого запятыми, в EDUBASE_TOOLSETS (например, questions,quizzes,exams). Установите EDUBASE_READONLY=true, чтобы предоставить доступ только к инструментам чтения данных (инструменты get и инструменты, которые только генерируют ссылки для скачивания, например edubase_post_question_export).
Установите EDUBASE_DYNAMIC_TOOLSETS=true, чтобы включать наборы инструментов по требованию: сеансы начинаются только с критически важных инструментов, а модель включает нужные наборы с помощью инструмента edubase_enable_toolsets (перечисленного с edubase_list_toolsets). Это позволяет сохранить небольшой начальный список инструментов для клиентов, которые загружают все инструменты заранее, но требует клиента, который обновляет список инструментов при уведомлении об изменениях.
При использовании HTTP-транспорта клиенты могут дополнительно сузить конфигурацию для своего сеанса с помощью заголовков EduBase-Mcp-Toolsets, EduBase-Mcp-ReadOnly и EduBase-Mcp-Dynamic или параметров запроса toolsets, read_only и dynamic_toolsets (например, https://domain.edubase.net/mcp?toolsets=exams&read_only=true). Сеанс никогда не может включить наборы инструментов или инструменты записи, отключённые в конфигурации сервера.
Конфигурация
MCP-сервер можно настроить с помощью переменных окружения. Доступны следующие переменные:
| Переменная | Описание | Обязательная | Значение по умолчанию |
|---|---|---|---|
EDUBASE_API_URL | Базовый URL API EduBase, скорее всего https://subdomain.edubase.net/api. | Да | https://www.edubase.net/api |
EDUBASE_API_APP | Идентификатор приложения вашей интеграции в EduBase, app в API EduBase. Его можно найти в окне сведений об интеграции в EduBase. | Нет, если используется HTTP-транспорт с аутентификацией, в противном случае Да | - |
EDUBASE_API_KEY | Секретный ключ вашего приложения интеграции в EduBase, secret в API EduBase. Его можно найти вместе с идентификатором приложения в окне сведений об интеграции в EduBase. | Нет, если используется HTTP-транспорт с аутентификацией, в противном случае Да | - |
EDUBASE_SSE_MODE | Запуск MCP-сервера в HTTP-режиме с SSE-транспортом. Значение должно быть true. | Нет | false |
EDUBASE_STREAMABLE_HTTP_MODE | Запуск MCP-сервера в HTTP-режиме с потоковым HTTP-транспортом. Значение должно быть true. | Нет | false |
EDUBASE_TOOLSETS | Список включённых наборов инструментов, разделённый запятыми, или all. | Нет | all |
EDUBASE_READONLY | Предоставлять доступ только к инструментам чтения данных. Значение должно быть true. | Нет | false |
EDUBASE_OUTPUT_SCHEMAS | Схемы вывода инструментов и структурированные результаты: off перечисляет инструменты без схем вывода и возвращает результаты только в виде текста JSON, on включает полные схемы вывода, fields включает схемы вывода без описаний полей (сохраняя структурированные результаты, но экономя большую часть токенов схем). | Нет | fields |
EDUBASE_CONFIG_PROVIDERS | Список хостинг-провайдеров, которым разрешено предоставлять конфигурацию сеанса в запросах при использовании HTTP-транспорта, разделённый запятыми. В настоящее время поддерживается только smithery (параметр запроса config в кодировке base64). | Нет | - |
EDUBASE_DYNAMIC_TOOLSETS | Запуск сеансов только с инструментами загрузки файлов и предоставление модели возможности включать наборы инструментов по требованию. Значение должно быть true. | Нет | false |
EDUBASE_HTTP_PORT | HTTP-сервер будет прослушивать этот порт при использовании режима SSE или потокового HTTP-транспорта. | Нет | 3000 |
EDUBASE_OAUTH | Включает поведение защищённого ресурса OAuth 2.1: неаутентифицированные запросы отклоняются с 401 + WWW-Authenticate, указывающим на /.well-known/oauth-protected-resource, а токены предъявителя пересылаются в API EduBase. | Нет | false |
EDUBASE_OAUTH_AUTHORIZATION_SERVER | Публичный базовый URL развёртывания EduBase, выступающего в роли OAuth IdP. Используется для объявления сервера авторизации в документе метаданных защищённого ресурса. | Нет | производное от EDUBASE_API_URL |
EDUBASE_OAUTH_RESOURCE_URL | Публичный базовый URL этого MCP-сервера (индикатор ресурса OAuth). Используется в заголовке WWW-Authenticate и метаданных ресурса. | Нет | производное от EDUBASE_API_URL |
EDUBASE_ALLOW_PRIVATE_NETWORK | При использовании HTTP-транспорта инструмент edubase_filebin блокирует исходящие запросы к частным, loopback, link-local и зарезервированным адресам (защита от SSRF) и отклоняет локальные пути к файлам. Установите true, чтобы разрешить их, например, для самостоятельного развёртывания в доверенной частной сети. Не влияет на режим stdio, где единственным вызывающим является локальный пользователь. | Нет | false |
EDUBASE_FILEBIN_ALLOWED_HOSTS | Необязательный список разрешённых имен хостов, разделённый запятыми, для целей загрузки edubase_filebin (точное имя хоста или любой поддомен, например edubase.net). Если пусто, разрешён любой публичный хост (при этом по-прежнему применяется фильтрация адресов, описанная выше). | Нет | - |
Использование в качестве удалённого MCP-сервера
Вы можете использовать EduBase MCP-сервер как удалённый MCP-сервер для вашего MCP-клиента. Для этого необходимо разместить MCP-сервер там, где клиенты могут получить к нему доступ, а затем настроить клиент на подключение к серверу. Запустите его в режиме SSE или потокового HTTP-транспорта и всегда используйте HTTPS при удалённом доступе к серверу через интернет!
Аутентификация с удалёнными серверами
Сервер можно использовать в двух режимах:
- Без аутентификации клиента: В этом режиме сервер не требует аутентификации от клиента. Это полезно для тестирования, разработки или в закрытой сети, но не рекомендуется для производственного использования. Для этого необходимо настроить сервер с
EDUBASE_API_APPиEDUBASE_API_KEY! - С аутентификацией по Bearer-токену: В этом режиме сервер требует отправки Bearer-токена с каждым запросом. Это рекомендуемый способ использования сервера в производственной среде. Вы можете получить Bearer-токен из своего аккаунта EduBase, создав приложение интеграции и указав идентификатор приложения и секретный ключ в формате
{app}:{secret}, закодированном в base64 как токен. Затем сервер будет использовать этот токен для аутентификации клиента и авторизации доступа к конечным точкам API. - С OAuth 2.1 (EduBase как IdP): Когда
EDUBASE_OAUTH=true, совместимые клиенты (Claude Desktop, коннекторы Claude.ai, Cursor, коннекторы ChatGPT и т. д.) обнаруживают сервер авторизации EduBase через/.well-known/oauth-protected-resource, динамически регистрируются (RFC 7591), проводят пользователя через экран согласия EduBase и обменивают код авторизации (с PKCE S256) на непрозрачный токен доступа. MCP-сервер пересылает этот токен без изменений в API EduBase, который сопоставляет его с автоматически созданной MCP-интеграцией, созданной при первом согласии. Никаких идентификаторов приложения и секретных ключей копировать не нужно — пользователи просто нажимают «Подключить EduBase» в своём клиенте.
Использование с Claude Desktop
Пошаговое руководство см. в нашей статье в блоге о том, как подключить EduBase к Claude: Полное руководство по интеграции MCP.
Использование предоставленного EduBase MCP-сервера
Вы можете использовать предоставленный EduBase MCP-сервер (если он доступен) без какой-либо настройки, просто добавив его как удалённый сервер в своём клиенте по URL https://domain.edubase.net/mcp (замените на фактический домен), если он поддерживает аутентификацию OAuth, или с соответствующим Bearer-токеном в заголовке Authorization (Authorization: Bearer ${BASE64_ENCODED_TOKEN}).
Рекомендуется для пользователей www.edubase.net, так как сервер поддерживается и обновляется нами, и вам не нужно беспокоиться о хостинге или настройке. Просто убедитесь, что вы используете правильный URL и метод аутентификации при подключении клиента.
Установка вручную
Добавьте следующее в ваш claude_desktop_config.json:
Использование Node.js
Перед запуском MCP-сервера убедитесь, что у вас установлен Node.js. Вы можете скачать его с nodejs.org или использовать пакетный менеджер, например brew.
{
"mcpServers": {
"edubase": {
"command": "npx",
"args": [
"-y",
"@edubase/mcp"
],
"env": {
"EDUBASE_API_URL": "https://domain.edubase.net/api",
"EDUBASE_API_APP": "your_integration_app_id",
"EDUBASE_API_KEY": "your_integration_secret_key"
}
}
}
}
Или скачайте релиз EduBase MCP-сервера или клонируйте репозиторий и выполните npm run build для сборки сервера. Не забудьте изменить /path/to/dist на фактический каталог и настроить переменные окружения!
{
"mcpServers": {
"edubase": {
"command": "node",
"args": [
"/path/to/dist/index.js"
],
"env": {
"EDUBASE_API_URL": "https://domain.edubase.net/api",
"EDUBASE_API_APP": "your_integration_app_id",
"EDUBASE_API_KEY": "your_integration_secret_key"
}
}
}
}
Использование Docker
Перед запуском MCP-сервера убедитесь, что у вас установлен и запущен Docker. Вы можете скачать его с docker.com или использовать пакетный менеджер. Не забудьте настроить переменные окружения!
{
"mcpServers": {
"edubase": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"EDUBASE_API_URL",
"-e",
"EDUBASE_API_APP",
"-e",
"EDUBASE_API_KEY",
"edubase/mcp"
],
"env": {
"EDUBASE_API_URL": "https://domain.edubase.net/api",
"EDUBASE_API_APP": "your_integration_app_id",
"EDUBASE_API_KEY": "your_integration_secret_key"
}
}
}
}
Установка через удалённый MCP-сервер
Вы можете использовать предоставленный MCP-сервер EduBase (если он доступен) как удалённый сервер. Мы рекомендуем кодировать ваши EDUBASE_API_APP и EDUBASE_API_KEY в Base64 и использовать их как Bearer-токен в заголовке Authorization (Authorization: Bearer ${BASE64_ENCODED_TOKEN}).
{
"mcpServers": {
"edubase": {
"command": "npx",
"args": [
"mcp-remote",
"https://domain.edubase.net/mcp",
"--header",
"Authorization: Bearer ${EDUBASE_API_APP}:${EDUBASE_API_KEY}"
]
}
}
}
Установка через Smithery
Чтобы автоматически установить MCP-сервер EduBase для Claude Desktop через Smithery:
npx -y @smithery/cli install @EduBase/MCP --client claude
Разработка
Запустите npm test, чтобы собрать сервер и проверить список инструментов: лимиты размера списка инструментов и инструкций сервера, описания инструментов, набор инструментов, режимы наборов инструментов только для чтения и динамических, а также обработку конфигурации HTTP-транспорта. Когда новые инструменты превышают лимиты, намеренно сократите их схемы или увеличьте лимит в test/server.test.mjs, так как каждый клиент платит за список инструментов в каждой сессии.
Контакты
Веб-сайт: www.edubase.net
Документация для разработчиков: developer.edubase.net
Электронная почта: info@edubase.net