OpenEdu MCP Server
About
OpenEdu MCP Server for educational resources and curriculum planning, integrates with OpenLibrary, Wikipedia and arXiv
Details
- License
- MIT license
Explore
- Tests all 20+ MCP tools against their respective live APIs
- Validates educational workflows for different grade levels
- Measures performance metrics (response times, cache rates, error rates)
- Tests error handling with invalid inputs and edge cases
- Verifies caching behavior with real API responses
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
OpenEdu MCP ServerCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
- Python 3.9 or higher
- pip package manager
For development, install additional dependencies:
pip install -r requirements-dev.txt
Run tests:
The server uses YAML configuration files in the config/ directory:
yaml
server:
name: "openedu-mcp-server"
version: "1.0.0"
education:
grade_levels:
- "K-2"
- "3-5"
- "6-8"
- "9-12"
- "College"
subjects:
- "Mathematics"
- "Science"
- "English Language Arts"
- "Social Studies"
- "Arts"
- "Physical Education"
- "Technology"
apis:
open_library:
rate_limit: 100 # requests per minute
wikipedia:
rate_limit: 200 # requests per minute
dictionary:
rate_limit: 450 # requests per hour
arxiv:
rate_limit: 3 # requests per second
Override configuration with environment variables:
bashexport OPENEDU_MCP_CACHE_TTL=7200
export OPENEDU_MCP_LOG_LEVEL=DEBUG
export OPENEDU_MCP_RATE_LIMIT_WIKIPEDIA=300
bashpython run_validation_tests.py
```
The script will:
1. Test all API integrations (Open Library, Wikipedia, Dictionary, arXiv)
2. Validate educational workflows:
- Elementary Education (K-2)
- High School STEM (9-12)
- College Research
- Educator Resources
3. Measure performance metrics:
- Response times for each API
- Cache hit/miss rates
- Rate limiting effectiveness
- Educational filtering processing time
4. Generate a detailed JSON report with test results and performance statistics
The Education MCP Server provides 21+ MCP tools across four API integrations:
The server includes a tool designed for direct command-line or piped input.
- Tool Name: handle_stdio_input
- Description: Processes a single line of text input and returns a transformed version. This is useful for basic interaction or scripting with the MCP server if it's configured to listen to stdin.
- Signature: async def handle_stdio_input(ctx: Context, input_string: str) -> str
- Example Interaction:
Tool: handle_stdio_input
Input: "your text here"
Output: "Processed: YOUR TEXT HERE"
All registered MCP tools (including handle_stdio_input and the 20+ tools listed above) are accessible via HTTP. This allows integration with various applications and services. The server likely uses a JSON RPC style for these interactions.
- Endpoint: POST /mcp (This is a common convention for FastMCP servers supporting JSON RPC)
- Request Method: POST
- Headers: Content-Type: application/json
- Request Body Structure (JSON RPC):
{
"jsonrpc": "2.0",
"method": "<tool_name>",
"params": {"param1": "value1", ...},
"id": "your_request_id"
}
- Example curl call to handle_stdio_input:
curl -X POST -H "Content-Type: application/json" \
-d '{"jsonrpc": "2.0", "method": "handle_stdio_input", "params": {"input_string": "hello from http"}, "id": 1}' \
http://localhost:8000/mcp
- Expected Response:
{
"jsonrpc": "2.0",
"result": "Processed: HELLO FROM HTTP",
"id": 1
}
If an error occurs, the
result field will be replaced by an error object containing code and message.
You can integrate the OpenEdu MCP Server with various AI-assisted coding tools and IDE plugins. This allows these tools to leverage the server's educational functionalities directly within your development environment. Configuration typically involves telling the editor how to start and communicate with the OpenEdu MCP server. The server is run using python -m src.main from the root of this project.
Below are example configurations for some popular tools. You may need to adjust paths (e.g., for cwd or if you have a specific Python environment) based on your local setup.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"openedu mcp server": {
"openedu-mcp": {
"command": "python",
"args": [
"-m",
"src.main"
]
}
}
}
}
McpServers
{
"openedu-mcp": {
"command": "python",
"args": [
"-m",
"src.main"
]
}
}
A comprehensive Model Context Protocol (MCP) server designed to provide educational resources and support curriculum planning for educators. This server integrates with multiple educational APIs to provide access to books, articles, definitions, and research papers with intelligent educational filtering and grade-level appropriateness.
🎓 Features
Complete API Integration Suite
- 📚 Open Library Integration: Educational book search, recommendations, and metadata - 🌐 Wikipedia Integration: Educational article analysis with grade-level filtering - 📖 Dictionary Integration: Vocabulary analysis and language learning support - 🔬 arXiv Integration: Academic paper search with educational relevance scoringEducational Intelligence
- Grade Level Filtering: K-2, 3-5, 6-8, 9-12, College level content - Subject Classification: Mathematics, Science, ELA, Social Studies, Arts, PE, Technology - Curriculum Alignment: Common Core, NGSS, State Standards support - Educational Metadata: Complexity scoring, reading levels, educational value assessmentPerformance & Reliability
- Intelligent Caching: SQLite-based caching with TTL support - Rate Limiting: Built-in rate limiting to respect API quotas - Usage Analytics: Comprehensive usage tracking and performance metrics - Error Handling: Robust error handling with educational context preservation🚀 Quick Start
Prerequisites
- Python 3.9 or higher
- pip package manager
Installation
1. Clone the repository:
git clone https://github.com/Cicatriiz/openedu-mcp.git
cd openedu-mcp
2. Install dependencies:
pip install -r requirements.txt
3. Set up configuration:
```bash
cp .env.example .env
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



