SuperAPI AI Directory

MCP

Interact with EduBase, a comprehensive e-learning platform with advanced quizzing, exam management, and content organization capabilities

Open website

About this tool

EduBase MCP server is an implementation of a Model Context Protocol (MCP) server based on the EduBase platform, used to let MCP clients such as Claude and large language models connect to a user's EduBase account and perform tasks on their behalf. EduBase is a modular online education platform, aimed at educational institutions or enterprises, providing a more interactive learning experience.

Purpose and main capabilities Through this MCP server, users can use clients such as Claude to collaboratively create and upload questions, schedule exams, and analyze user results. The EduBase platform itself has the following capabilities: a parameterized advanced quiz system, where the same question can generate unlimited variants; real-time cheating detection; LaTeX typesetting; advanced STEM support; automatic grading; a unified learning environment with centralized management of videos, exams, documents, and SCORM modules; enterprise-grade security, including SSO integration, fine-grained access control, comprehensive auditing, and GDPR compliance; integration with existing systems through LTI, a complete API, and custom integration options; AI-assisted tools (such as EduBase Assistant) that can instantly convert existing content into interactive quizzes and assessments, or translate materials between languages.

Tools and toolsets Every documented API endpoint is implemented as a tool, with the naming convention edubase_<method>_<endpoint>, for example GET /user:me corresponds to the tool edubase_get_user_me. The tag, permission, and transfer endpoints behave consistently for each content type, so each method shares a single tool with a type parameter, for example edubase_post_content_tag for POST /exam:tag, POST /quiz:tag, etc. For details, refer to its developer documentation. Tools are grouped by toolset, so only the needed tools can be exposed. The fewer the tools, the smaller the model context consumption, and the easier it is to select the right tools. Each toolset is enabled by default. Use EDUBASE_TOOLSETS to list the desired toolsets separated by commas (such as questions,quizzes,exams). Setting EDUBASE_READONLY=true exposes only tools that read data (get-type tools and tools that only generate download links, such as edubase_post_question_export). SettingEDUBASE_DYNAMIC_TOOLSETS=true enables toolsets on demand: at the start of a session only key tools are loaded, and the model enables the required toolsets through the edubase_enable_toolsets tool (which can be listed via edubase_list_toolsets). This keeps the initial tool list concise, which is suitable for clients that preload all tools, but requires the client to refresh the tool list when it receives change notifications. When using HTTP transport, clients can further narrow the configuration for their own session through the EduBase-Mcp-Toolsets, EduBase-Mcp-ReadOnly, and EduBase-Mcp-Dynamic request headers, or the toolsets, read_only, dynamic_toolsets query parameters, for example https://domain.edubase.net/mcp?toolsets=exams&read_only=true。会话不能启用服务器配置所禁用的工具集或写入工具。

Prompts and resources Prompts are ready-made workflows that can be launched directly from an MCP client (for example, the + or / menu). Clients that support completion will suggest parameter values as you type: question type, as well as the user's own exam, Quiz set, and class. Prompts are only provided when their corresponding tool set is enabled; in read-only mode, only the latter two are provided. When the exam question type is left blank, clients that support elicitation will ask for the question type with checkboxes. These clients will also request confirmation before irreversible operations (deleting exams, Quiz sets, questions, users, organizations, and integrations, transferring ownership, starting a new exam round, rotating integration keys). Set EDUBASE_ELICITATION=false to disable these prompts. Reference documentation is provided as resources and is also available through the edubase_mcp_reference tool for models that cannot read resources: edubase://reference/questions (question fields and types) and edubase://reference/exam-journeys (portable exam journey format). Exams and Quiz sets can also be mounted as resources (edubase://exam/{exam} and edubase://quiz/{quiz}), and list and suggested content. This can be disabled with EDUBASE_CONTENT_RESOURCES=false, or during a session via the EduBase-Mcp-Content-Resources: false request header, the content_resources=false query parameter, or Smithery's edubaseContentResources setting. Tools that create or modify exams, Quiz sets, and journeys link to their pages in EduBase. The MCP server can be configured through environment variables.

Obtaining API credentials After logging in, find the Integrations menu in the Dashboard, click "add integration" and select the type "EduBase API". If this option is not available, enter the activation code MCPGITHUB, or contact info@edubase.net to request access.

Using as a remote MCP server The EduBase MCP server can be used as a remote MCP server for yourMCP client. You need to host the server in a location accessible to the client, then configure the client connection. At startup, choose SSE or streamable HTTP transport mode, and be sure to use HTTPS when accessing remotely over the internet.

Authentication for the remote server The server supports two modes:

  • No client authentication: The server does not require client authentication. Suitable for testing or development, or closed networks, but not recommended for production. This mode requires configuring both EDUBASE_API_APP and EDUBASE_API_KEY.
  • Bearer token authentication: Each request must carry a Bearer token. This is the recommended mode for production. Create an integration app in your EduBase account, provide the App ID and Secret key in the format {app}:{secret}, and base64-encode it as the token. The server then uses this token to authenticate the client and authorize access to API endpoints.

OAuth 2.1 (EduBase as IdP) When EDUBASE_OAUTH=true, compatible clients (Claude Desktop, Claude.ai connectors, Cursor, ChatGPT connectors, etc.) can discover the EduBase authorization server via /.well-known/oauth-protected-resource, perform dynamic registration (RFC 7591), guide the user through the EduBase consent screen, and exchange the authorization code with PKCE S256 for an opaque access token. The MCP server forwards this token as-is to the EduBase API, which resolves it to the MCP integration automatically created on first consent. No need to copy the App ID/Secret—users simply click "Connect EduBase" in the client.

Using with Claude Desktop A step-by-step guide can be found in its blog post "The Complete MCP Integration Guide".

Using the provided EduBase MCP server If the client supports OAuth authentication, simply use the URL https://domain.edubase.net/mcp(替换为实际域名)添加为远程服务器即可,无需任何配置;或在 Carry an appropriate Bearer token in the Authorization header (Authorization: Bearer ${BASE64_ENCODED_TOKEN}). It is recommended for www.edubase.net users, because that server is officially maintained and updated, so there is no need to self-host or configure it. When connecting the client, just make sure to use the correct URL and authentication method.

Manual installation Add the corresponding configuration in claude_desktop_config.json. Before running the MCP server, make sure Node.js is installed; you can download it from nodejs.org or use a package manager such as brew. You can also download the EduBase MCP server release or clone the repository and run npm run build to build the server. Note to adjust /path/to/dist to the actual directory, and configure the environment variables. Before using Docker, make sure Docker is installed and running; you can download it from docker.com or use a package manager, and note to configure the environment variables.

Install via a remote MCP server The provided EduBase MCP server (if available) can be used as a remote server. It is recommended to Base64-encode EDUBASE_API_APP and EDUBASE_API_KEY and use them as a Bearer token in the Authorization header (Authorization: Bearer ${BASE64_ENCODED_TOKEN}).

Install via Smithery The EduBase MCP server can be automatically installed for Claude Desktop via Smithery.

Testing and reference documentation maintenance Running npm test builds the server and checks the tool list: the size budget for the tool list and server instructions, tool descriptions, tool sets, read-only and dynamic tool set modes, and configuration handling for the HTTP transport. When a new tool exceeds the budget, its schema needs to be streamlined or the budget intentionally increased in test/server.test.mjs, because every client pays the cost for the tool list in every session. The reference documentation in src/references is generated from the EduBase developer documentation; when question fields or exam journey formats change, use node scripts/sync-references.mjs <path to the developer documentation repository> to regenerate it.

Applicable scenarios It is suitable for educational institutions or corporate training departments that need to use LLMs such as Claude to collaborate on creating questions, upload questions, schedule exams, and analyze results on EduBase; and for scenarios that need to integrate EduBase with existing systems, or securely connect AI clients via a remote MCP server, Bearer token, OAuth 2.1, and other methods.

Limitations Facts such as the specific charges, pricing, and available platforms for this MCP server are not provided for now. The behavior of tool sets, read-only mode, dynamic tool sets, prompts, and resources is constrained by the server configuration and client capabilities: a session cannot enable tool sets or write tools disabled by the server configuration; in read-only mode only some prompts are provided; dynamic tool sets require the client to refresh the tool list when it receives a change notification; prompt completion, elicitation confirmation, and similar features depend on client capabilities. Remote access must use HTTPS. For more details, refer to the official documentation.