
paulocymbaum/ed-tech-system-mcp
Developer tools이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기
Domain-Driven MCP server for ed-tech workflows
개요
Domain-Driven MCP (Model Context Protocol) server for ed-tech workflows. The server exposes validated MCP tools backed by LangGraph agents, web search, and YouTube video discovery — all organized with Clean Architecture and DDD. Document embedding and retrieval live in the backend (ed-tech-system-backend embedding service); the MCP server no longer runs RAG. External MCP clients call that validate input with Pydantic, delegate to and , and reach external systems through implemented in the infrastructure layer. Handlers use (when enabled), , where required, and at the protocol boundary. Clean Architecture under src/mcp_server/. Domain has no framework I/O; Infrastructure implements Domain ports; Interface and Application depend inward only. use the same names plus tests, performance, code-health, refactor — see ARCHITECTURE.md § Changelog layer names. - Python (see requires-python in pyproject.
README
원문 README의 일부입니다. 원문 보기.
ed-tech-system-mcp
Domain-Driven MCP (Model Context Protocol) server for ed-tech workflows. The server exposes validated MCP tools backed by LangGraph agents, web search, and YouTube video discovery — all organized with Clean Architecture and DDD. Document embedding and retrieval live in the backend (ed-tech-system-backend embedding service); the MCP server no longer runs RAG.
What this project does
External MCP clients call MCP tools that validate input with Pydantic, delegate to application workflows and LangGraph agents, and reach external systems through domain ports implemented in the infrastructure layer.
MCP tools
| Tool | Module | Purpose |
|---|---|---|
health_check |
custom_tools |
Liveness probe |
search_youtube |
custom_tools |
Educational YouTube search |
build_lesson_enrichment_query |
custom_tools |
Expand lesson metadata into 4–5 search terms for document/video lookup |
research_article |
custom_tools_agent_workflows |
Research article generation workflow |
content_generation |
custom_tools_agent_workflows |
Lesson/quiz/project content generation |
author_lesson_pipeline |
custom_tools_authoring |
Graph leaf → generate → validate → save (draft/publish) |
search_graph_nodes |
custom_tools_authoring |
Curriculum graph leaf search |
validate_lesson / validate_quiz / validate_project / validate_test_boilerplate |
custom_tools_authoring |
Content validation |
save_to_backend |
custom_tools_authoring |
Persist authored lesson tree via backend RPCs |
generate_mock_test_structure / validate_mock_test |
custom_tools_authoring |
Mock assessment scaffolding |
socratic_tutor |
custom_tools_socratic |
Socratic tutor turn |
collect_project_review_context / project_review |
custom_tools_project_review |
Project mentor review |
Handlers use MCP tool caching (when enabled), latency logging, privileged auth where required, and domain error mapping at the protocol boundary.
Integrations
| Capability | Integration |
|---|---|
| Curriculum graph + authoring RPCs | Supabase RPCs via authoring backend client (anon + manager JWT) |
| Web search | Tavily |
| Video discovery | YouTube Data API v3 |
| Agent orchestration | LangChain / LangGraph |
| Caching | Redis when CACHE_ENABLED=true |
| Document embedding / RAG | Backend ed-tech-system-backend embedding service + mcp-find-documents edge function |
Architecture
Clean Architecture under src/mcp_server/. Dependency rule: Domain has no framework I/O; Infrastructure implements Domain ports; Interface and Application depend inward only.
entrypoint → interface → application → domain ← infrastructure
| Layer | Path | Responsibility |
|---|---|---|
| domain | domain/ |
Entities, ports, validators, curriculum enums — no MCP/LangGraph/Supabase |
설치
This server does not publish a one-line install command.
Open the repository installation guide MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →설정
{
"mcpServers": {
"ed-tech-system": {
"command": "doppler",
"args": ["run", "--", "uv", "--directory", "/absolute/path/to/ed-tech-system-mcp", "run", "mcp-server"]
}
}
}