← Back to directory
E

EduBase MCP Server

Official
Connect LLMs to the EduBase e-learning platform via MCP
Category
Other #57 of 230
Stars
★ 28 Popular
Transport
stdio (local process) · SSE · Streamable HTTP
Runtime
Node.js · Docker · Hosted (no local runtime)
Credentials
API key / credential required
License
MIT
Last commit
Tools
2
62FMRS · C

An officially maintained MCP server by EduBase that exposes all documented API endpoints of its e-learning platform to LLMs. It offers multiple transports, OAuth 2.1 authentication, and flexible installation (npm/Docker/Smithery/hosted remote), making it well suited to educational and enterprise settings built on EduBase.

Strongest · Documentation 15/20 Weakest · Reliability 9/20

Reliability
9/20
Security and permissions
12/20
Maintenance
13/20
Documentation
15/20
Setup experience
13/20
Why each score
Reliability 9/20
Only the README and server.json manifest are available; no actual source code, test files, or CI workflow content was provided (only badges linking to pre-commit.ci and a publish-mcp.yml workflow, without visible test coverage). Tools are described as auto-generated per documented API endpoint following a naming convention (edubase_<method>_<endpoint>), claimed to mirror developer docs, but there is no way to statically verify that declared tools match real behavior, nor evidence of error handling or dependency control. The 1.2.16 version number suggests some iteration, but per the static calibration rule, without verifiable test/CI evidence reliability is capped below 12.
Security and permissions 12/20
Secrets are passed via environment variables (EDUBASE_API_SECRET/EDUBASE_API_KEY marked isSecret), and README examples use placeholders rather than real credentials — no red-line violation found. The edubase_filebin tool documents default SSRF protections (blocking private/loopback/link-local addresses) with an optional host allow-list, a positive signal, and OAuth 2.1 with PKCE is supported to avoid exposing raw credentials. However, neither the manifest nor docs describe per-tool least-privilege scoping or confirmation flows for irreversible actions (e.g., deleting content, publishing exams, modifying grades) common on an e-learning platform; authorization appears to rely on backend App-level scope rather than tool-level limits, placing this at a mid-tier 'main risks visible but permissions/confirmation incomplete' level.
Maintenance 13/20
The repo is MIT licensed, has a GitHub Actions workflow auto-publishing to the MCP Registry, and integrates pre-commit.ci; version 1.2.16 indicates ongoing iteration. Open issues are at 0 and the repo is not archived, with a contact email as a feedback channel. However there is no visible commit history, contributor base, or explicit security-response process, and the star count is low (27), making it hard to gauge long-term community activity and maintenance guarantees.
Documentation 15/20
The README is thorough, covering npx/Node/Docker/Smithery install methods, a full environment-variable configuration table, three auth modes (no-auth, Bearer token, OAuth 2.1), and remote vs. local deployment guidance. The tool naming scheme is explained with a link to external developer docs. However, the repository itself lacks a detailed per-tool parameter reference, rate limits, cost disclosure, or a dedicated troubleshooting section — these depend on an external link (developer.edubase.net), leaving a 'usable but thin on troubleshooting' gap.
Setup experience 13/20
Multiple installation paths are documented (npx, local build, Docker, remote server, one-line Smithery install) with concrete claude_desktop_config.json examples, giving clear steps. Per the static calibration rule, since there is no verifiable execution evidence (no committed tests or confirmed CI pass shown), setup ease is capped below 15, reflecting 'clear steps but manual credential configuration, unverified by actual execution.'

Static review · not runListed 2026-09-07

Read the FMRS scoring method →

Fit and risk

What it can accessUses the networkChanges third-party account data

Best for

  • Educational institutions and corporate training teams already using or adopting EduBase
  • Teachers and course administrators who want LLMs to manage EduBase content (questions, exams, user data)
  • Users needing a hosted remote MCP server with OAuth 2.1 authentication

Not for

  • Users not on the EduBase platform
  • Those seeking a generic connector for arbitrary LMS systems (this server only talks to the EduBase API)

Required permissions

  • Requires the App ID and Secret Key of an EduBase integration app (EDUBASE_API_APP, EDUBASE_API_KEY)
  • Remote deployments authenticate clients via Bearer tokens (base64-encoded app:secret) or OAuth 2.1
  • Local stdio mode requires API credentials configured as environment variables

Risks and side effects

  • A leaked API Secret lets others act on your EduBase account
  • The LLM can perform account actions on your behalf; mistakes may affect real course and exam data
  • HTTP transport exposed publicly without authentication is vulnerable to misuse
  • edubase_filebin on self-hosted private networks requires care when setting EDUBASE_ALLOW_PRIVATE_NETWORK

Setup

Before you start

Runtime:Node.js · Docker · Hosted (no local runtime)

EDUBASE_API_APP required Your integration app's App ID from the EduBase integration details window; required. Not a secret.
EDUBASE_API_KEY requiredsecret Your integration app's Secret key, found alongside the App ID; required and secret.
EDUBASE_API_SECRET requiredsecret Secret key variable defined in the server manifest; required and secret.
Other optional settings (9)
EDUBASE_API_URL optional Base URL of the EduBase API, usually https://subdomain.edubase.net/api; defaults to https://www.edubase.net/api.
EDUBASE_SSE_MODE optional Set to true to start the server in HTTP mode with SSE transport; default false.
EDUBASE_STREAMABLE_HTTP_MODE optional Set to true to start the server in HTTP mode with streamable HTTP transport; default false.
EDUBASE_HTTP_PORT optional Port the HTTP server listens on when SSE or streamable HTTP mode is used; default 3000.
EDUBASE_OAUTH optional Set to true to enable OAuth 2.1 protected-resource behaviour.
EDUBASE_OAUTH_AUTHORIZATION_SERVER optional Public base URL of the EduBase deployment acting as the OAuth IdP.
EDUBASE_OAUTH_RESOURCE_URL optional Public base URL of this MCP server (the OAuth resource indicator).
EDUBASE_ALLOW_PRIVATE_NETWORK optional Set to true to let edubase_filebin reach private network addresses (blocked by default for SSRF protection).
EDUBASE_FILEBIN_ALLOWED_HOSTS optional Optional comma-separated allow-list of hosts permitted as edubase_filebin upload targets.
  1. In the EduBase Dashboard, open the Integrations menu, add an integration of type "EduBase API", and obtain the App ID and Secret (use activation code MCPGITHUB or contact [email protected] if unavailable).
  2. Install via npx -y @edubase/mcp (npm package @edubase/mcp), Docker image edubase/mcp, or npx -y @smithery/cli install @EduBase/MCP --client claude.
  3. Set environment variables EDUBASE_API_URL, EDUBASE_API_APP, and EDUBASE_API_KEY. Alternatively, connect your client directly to the remote MCP server at https://www.edubase.net/mcp using a Bearer token or OAuth.
claude_desktop_config.json
{"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"}}}}

Shown for Claude Desktop. Other clients may use a different file or key (VS Code uses "servers") — the configurator below converts it.

.vscode/mcp.json
{
  "servers": {
    "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"
      }
    }
  }
}

Goes in your project's .vscode/mcp.json (VS Code uses a "servers" key).

Terminal
claude mcp add edubase -e EDUBASE_API_URL=https://domain.edubase.net/api -e EDUBASE_API_APP=your_integration_app_id -e EDUBASE_API_KEY=your_integration_secret_key -- npx -y @edubase/mcp

Run it in a terminal; replace any <…> placeholders with your own values first.

Check that it works

After setup, tools named edubase_get_user_me and similar edubase_* tools should appear in your client's tool list; asking for your account info and getting your EduBase user data confirms the connection.

Troubleshooting

  1. Verify an "EduBase API" integration exists in the EduBase Integrations page and the App ID/Secret are correct
  2. Check EDUBASE_API_URL points to the correct subdomain (default https://www.edubase.net/api)
  3. For remote connections, confirm the Bearer token is the base64-encoded {app}:{secret} string
  4. If HTTP mode won't start, ensure EDUBASE_SSE_MODE or EDUBASE_STREAMABLE_HTTP_MODE is true and check EDUBASE_HTTP_PORT (default 3000)
  5. For OAuth failures, confirm EDUBASE_OAUTH=true and that the /.well-known/oauth-protected-resource metadata endpoint is reachable

Things to try

Once connected, you can ask your AI assistant things like:

  • Show me my EduBase account profile information
  • Upload this document to EduBase using the filebin tool
  • Fetch my account details to verify the EduBase connection works

Tools 2

edubase_get_user_me read-only
Calls the GET /user:me endpoint to retrieve the current user's information.
edubase_filebin writes
File upload tool with SSRF protection that blocks requests to private and reserved addresses.

Use cases

Creating and uploading quiz questions collaboratively with Claude
Scheduling exams and analyzing user results
Transforming existing content into interactive quizzes

Supported clients

Claude Desktop
CursorPartial support
ChatGPT connectorsPartial support
Claude.ai connectorsPartial support

Listed from the project's documentation, not tested by this site.

Overview

The EduBase MCP server implements the Model Context Protocol, enabling Claude and other LLMs to interact with EduBase's comprehensive e-learning platform and perform tasks on your behalf. It supports stdio, SSE, and streamable HTTP transports, can be installed via npm, Docker, or Smithery, or used as a hosted remote MCP server. Authentication supports Bearer tokens and OAuth 2.1 with EduBase as the identity provider. Every documented API endpoint is exposed as a separate tool named edubase_<method>_<endpoint>.

Similar servers

BioMCP 75 · B

One binary. One grammar. Evidence from the biomedical sources you already trust.

★ 659 · Tools 11 Compare with this →

Source revision d912a6211d84 Data synced 2026-10-19 Read the FMRS scoring method