Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
EduBase MCP server
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
EDUBASE_API_URL, EDUBASE_API_APP, EDUBASE_API_SECRET, EduBase-Api-App, EduBase-Api-SecretValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"edubase": {
"command": "npx",
"args": [
"-y",
"@edubase/mcp"
],
"env": {
"EDUBASE_API_URL": "your-value",
"EDUBASE_API_APP": "your-value",
"EDUBASE_API_SECRET": "your-value"
}
}
}
}Run this in your terminal
claude mcp add --transport http edubase https://www.edubase.net/mcp --header 'EduBase-Api-App: your-value' --header 'EduBase-Api-Secret: your-value'claude mcp add edubase --env EDUBASE_API_URL=your-value --env EDUBASE_API_APP=your-value --env EDUBASE_API_SECRET=your-value -- npx -y @edubase/mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"edubase": {
"url": "https://www.edubase.net/mcp",
"headers": {
"EduBase-Api-App": "your-value",
"EduBase-Api-Secret": "your-value"
}
}
}
}Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"edubase": {
"command": "npx",
"args": [
"-y",
"@edubase/mcp"
],
"env": {
"EDUBASE_API_URL": "your-value",
"EDUBASE_API_APP": "your-value",
"EDUBASE_API_SECRET": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"edubase": {
"type": "http",
"url": "https://www.edubase.net/mcp",
"headers": {
"EduBase-Api-App": "your-value",
"EduBase-Api-Secret": "your-value"
}
}
}
}Paste into .vscode/mcp.json in your project
{
"servers": {
"edubase": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@edubase/mcp"
],
"env": {
"EDUBASE_API_URL": "your-value",
"EDUBASE_API_APP": "your-value",
"EDUBASE_API_SECRET": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Your choice stays on this device in a cookie; no account needed.
EDUBASE_API_URL envEduBase-Api-App HTTP headerEduBase-Api-Secret secret HTTP headerThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
The server asks you to sign in before it lists its tools.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account EduBase, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 388 ms (HTTP 401)
Declares OAuth sign-in, so your AI app can take you to log in
Not checked yet; we read the tool list when we check the endpoint
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: EDUBASE_API_APP, EDUBASE_API_SECRET, EduBase-Api-Secret
Either way works: install it on your computer or connect to the cloud version.
The GitHub repo last changed –, and the latest version (2.0.11) reached the registry yesterday.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Spec Driven Development, Remote Desktop Commander, AvaHR
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Read hiring data and create inactive assessment and questionnaire drafts for human review.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
This repository contains the implementation of the Model Context Protocol (MCP) server for the EduBase platform. It allows MCP clients (for example Claude Desktop) and LLMs to interact with your EduBase account and perform tasks on your behalf. It supports stdio, SSE and streamable HTTP transport protocols.
EduBase is an innovative, modular, online educational platform that makes learning more enjoyable, simpler and interactive, suitable for educational institutions or enterprises.
EduBase revolutionizes digital learning with its unique combination of features:
From higher education institutions to corporate training departments, EduBase scales to meet your specific needs while maintaining an intuitive user experience across all devices.
Collaboratively creating and uploading questions, scheduling exams and analyzing user results with Claude:
Once logged in, on your Dashboard, search for the Integrations menu, click "add integration" and choose the type "EduBase API".
If you don't see this option, enter the MCPGITHUB activation code or feel free to contact us to request access at info@edubase.net.
Each documented API endpoint is available as a tool, named edubase_ _ . For example, the tool for the GET /user:me endpoint is named edubase_get_user_me. The tag, permission and transfer endpoints work the same way for every content type, so they share a single tool per method with a type argument (e.g. edubase_post_content_tag for POST /exam:tag, POST /quiz:tag, etc.). See our developer documentation for more information.
Tools are grouped into toolsets, so you can expose only the tools you need. Fewer tools use less of the model's context and make it easier for the model to pick the right one. Every toolset is enabled by default.
| Toolset | Tools for |
|---|---|
files | Temporary file uploads (always enabled) |
questions | Questions |
quizzes | Quiz sets, their questions, settings and grading presets |
exams | Exams, their settings, users, certificates, branding and journeys |
results | Quiz and exam results, certificate downloads |
users | Users, their names, groups and login links |
classes | Classes and class memberships |
organizations | Organizations, members, departments, job roles, competencies and webhooks |
integrations | Integrations and their keys |
tags | Tags and tag attachments of contents |
permissions | User permissions on contents and ownership transfers |
metrics | Custom metrics |
Select toolsets with a comma-separated list in EDUBASE_TOOLSETS (e.g. questions,quizzes,exams). Set EDUBASE_READONLY=true to expose only the tools that read data (the get tools, and the tools that only generate download links, like edubase_post_question_export).
Set EDUBASE_DYNAMIC_TOOLSETS=true to enable toolsets on demand: sessions start with only the critical tools, and the model enables the toolsets it needs with the edubase_enable_toolsets tool (listed with edubase_list_toolsets). This keeps the initial tool list small for clients that load every tool upfront, but needs a client that refreshes the tool list when notified about changes.
When an HTTP transport is used, clients can narrow the configuration further for their own session with the EduBase-Mcp-Toolsets, EduBase-Mcp-ReadOnly and EduBase-Mcp-Dynamic headers, or the toolsets, read_only and dynamic_toolsets query parameters (e.g. https://domain.edubase.net/mcp?toolsets=exams&read_only=true). A session can never enable toolsets or write tools that the server configuration disables.
Prompts are ready-made workflows you can start from your MCP client (e.g. from the + or / menu). Clients supporting completions suggest values for the arguments as you type: question types, and your own exams, Quiz sets and classes.
| Prompt | What it does | Arguments |
|---|---|---|
Create a question (edubase_prompt_create_question) | Writes a new question and publishes it to your QuestionBase | type, subject, optional difficulty and language |
Create questions from a document (edubase_prompt_questions_from_document) | Turns an attached document (or a file path or URL) into questions, after you approve the plan, optionally adding them to a Quiz set | document, optional questions (count), types, quiz and language |
Create an exam (edubase_prompt_create_exam) | Generates questions about a topic, collects them into a new Quiz set and creates an exam from it | topic, questions (count), optional types (comma-separated), language and schedule |
Create an exam with a journey (edubase_prompt_create_exam_journey) | Creates an exam like above, then builds and publishes a small exam journey from it, reusing related exams of your account and creating a practice Quiz set and a follow-up exam if needed | the same as *Create an exam* |
Copy an exam (edubase_prompt_copy_exam) | Creates a new exam from the same Quiz set and settings for a new time window | exam, schedule, optional title |
Assign a class to an exam (edubase_prompt_assign_class_to_exam) | Assigns the active members of a class to an exam | exam, class |
Summarize exam results (edubase_prompt_summarize_exam_results) | Analyzes the results of an exam and optionally saves the summary to the exam | exam, optional focus and save (ask, yes or no) |
Check an exam journey (edubase_prompt_exam_journey_status) | Shows the progress of the users on an exam journey, and who is stuck | exam |
Prompts are only offered when their toolsets are enabled, and in read-only mode only the last two are offered.
When the question types of an exam are left empty, clients supporting elicitation ask for them with checkboxes. These clients also ask you to confirm the changes that cannot be undone (deleting exams, Quiz sets, questions, users, organizations and integrations, transferring ownership, starting a new exam round and rotating integration keys) before they are made. Set EDUBASE_ELICITATION=false to turn these questions off.
Reference documents are available as resources, and through the edubase_mcp_reference tool for models that cannot read resources: edubase://reference/questions (the question fields and types) and edubase://reference/exam-journeys (the portable exam journey format). They cover what the EduBase skills explain, for clients without the skills. Exams and Quiz sets can be attached as resources too (edubase://exam/{exam} and edubase://quiz/{quiz}), with your contents listed and suggested. Turn these off with EDUBASE_CONTENT_RESOURCES=false, or for a session with the EduBase-Mcp-Content-Resources: false header, the content_resources=false query parameter, or the edubaseContentResources Smithery setting.
Tools creating or changing exams, Quiz sets and journeys link to their pages in EduBase.
The MCP server can be configured using environment variables. The following variables are available:
| Variable | Description | Required | Default value |
|---|---|---|---|
EDUBASE_API_URL | The base URL of the EduBase API, most probably https://subdomain.edubase.net/api. | Yes | https://www.edubase.net/api |
EDUBASE_API_APP | The App ID of your integration app on EduBase, the app on the EduBase API. Find this in the integration details window on EduBase. | Not if HTTP transport is used with authentication, otherwise Yes | - |
EDUBASE_API_KEY | The Secret key of your integration app on EduBase, the secret on the EduBase API. Find this along the App ID in the integration details window on EduBase. | Not if HTTP transport is used with authentication, otherwise Yes | - |
EDUBASE_SSE_MODE | Start MCP server in HTTP mode with SSE transport. Value must be true. | No | false |
EDUBASE_STREAMABLE_HTTP_MODE | Start MCP server in HTTP mode with streamable HTTP transport. Value must be true. | No | false |
EDUBASE_TOOLSETS | Comma-separated list of the enabled toolsets, or all. | No | all |
EDUBASE_READONLY | Only expose the tools that read data. Value must be true. | No | false |
EDUBASE_OUTPUT_SCHEMAS | Output schemas of the tools and structured tool results: off lists the tools without output schemas and returns the results as JSON text only, on includes the complete output schemas, fields includes the output schemas without the field descriptions (keeping the structured results, but saving most of the tokens of the schemas). | No | fields |
EDUBASE_CONFIG_PROVIDERS | Comma-separated list of the hosting providers allowed to supply session configuration in the requests when an HTTP transport is used. Currently only smithery is supported (the base64-encoded config query parameter). | No | - |
EDUBASE_CONTENT_RESOURCES | List the exams and Quiz sets of the account as resources. Set to false to turn them off, e.g. when the server is inspected without credentials. The reference documents stay available. | No | true |
EDUBASE_DYNAMIC_TOOLSETS | Start sessions with only the file upload tools and let the model enable toolsets on demand. Value must be true. | No | false |
EDUBASE_ELICITATION | Ask the user through the client to confirm the changes that cannot be undone and to pick the question types of the prompts, if the client supports elicitation. Set to false to turn it off. | No | true |
EDUBASE_HTTP_PORT | HTTP server will listen on this port if SSE or streamable HTTP transport mode is used. | No | 3000 |
EDUBASE_OAUTH | Enables OAuth 2.1 protected-resource behaviour: unauthenticated requests are rejected with 401 + WWW-Authenticate pointing at /.well-known/oauth-protected-resource/mcp, and bearer tokens are forwarded to the EduBase API. | No | false |
| EDUBASE_OAUTH_AUTHORIZATION_SERVER | Public base URL of the EduBase deployment acting as the OAuth IdP. Used to advertise th
Only the beginning is shown; read the rest in the repo