paeg-teaching-materials
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@paeg-teaching-materialscreate a PPT outline for teaching quadratic equations to 9th graders"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
paeg-teaching-materials
Chinese | English
What Is This
paeg-teaching-materials is a teaching materials creation plugin — 6 types of material generators + a unified execution entry + an MCP server.
Material Type | Capability | Generation Method |
PPT | Presentation outline (6x6 rule) + optional python-pptx rendering | LLM outline → rendering |
Handout | 6-section structure (teaching objectives / introduction / new lesson / consolidation / summary / homework) | LLM generates markdown |
Lecture script | Segmented narration (TTS-ready) | LLM generates |
Mind map | Central topic → 3-5 branches → 2-4 sub-branches | LLM generates indented list |
Teaching video | Storyboard script (8-15s per shot, audio-visual alignment, hook + recap) | LLM generates JSON |
Manim animation | Math animation code + optional mp4 rendering | LLM code → Manim |
Originating from the PAEG education agent material system (v0.87-§3.91 iterations), it has been refactored into a zero-host-dependency standalone plugin.
Related MCP server: interactive-edtech-mcp
Key Features
Mesh-connected architecture (top-tier tool standard ⭐): 10 functional nodes (research / outline / PPT / handout / lecture script / mind map / video / Manim / study methods / study plan) — each can be used independently and is also a prerequisite for other features
Extensible generator registry:
MaterialRegistry.register("自定义类型", generator)to extendZero host dependencies: 6 Protocol abstractions (LLMCallable/RefinerProtocol/HandoutGenerator/ScriptGenerator/MindmapGenerator/ResourceProvider) + Null weak mode
Unified execution entry:
execute(name, args)serving as the counterpart to constraint_engine (JSON contract, never throws)MCP server direct installation:
pip install+ MCP config declaration to integrate (15 tools)Language specification integration: material output automatically passes L0 grammar error correction (reuses paeg-lang-style)
Quality checks + review: deterministic structural checks + LLM 5-dimension scoring
Mesh-Connected Architecture (Features Are Both Independent and Prerequisites ⭐)
Inside, tools form an interwoven mesh of wiring and connectivity — every feature is a first-class citizen node:
research(查资料·广播前置)
├──→ outline(大纲)──→ ppt(PPT 制作)
├──→ script(讲稿)──→ video(教学视频)
├──→ handout / manim / method / study_plan / mindmap(可选)Three-mode dependency edges:
Edge type | Semantics | Example |
broadcast | Source artifacts consumed network-wide | research → all generation |
directed | Strong prerequisite | outline → PPT, lecture script → video |
optional | Degrades when missing | materials → mind map |
Dual exposure: every feature is both a standalone MCP tool (execute_tool) and can be automatically orchestrated
(execute_pipeline expands prerequisite stages according to the dependency graph), or chained with |:
from paeg_teaching_materials import MaterialRegistry
from paeg_teaching_materials.tools import ResearchTool, OutlineTool, PptTool
# 1. 独立调用
result = MaterialRegistry.execute_plan("ppt", ctx, {"topic": "导数"})
# 自动执行: research → outline → ppt(查资料是前置环节)
# 2. 链式组合(LangChain Runnable 模式)
pipeline = ResearchTool() | OutlineTool() | PptTool() # 组合结果仍是 Tool
# 3. 依赖图自省(MCP: list_dependencies)
graph = MaterialRegistry.get_resolver().dependency_graph()Intermediate artifacts (MaterialContext typed Blackboard):
resources (research · append accumulation) / outline / lecture_script / ppt_outline /
completed_stages (stage markers · union) — artifacts from prerequisite stages are automatically consumed downstream.
Installation
pip install -e /path/to/paeg-teaching-materials
# 可选依赖:
pip install -e "paeg-teaching-materials[pptx]" # PPT 渲染
pip install -e "paeg-teaching-materials[manim]" # Manim 渲染
pip install -e "paeg-teaching-materials[mcp]" # MCP serverRequires Python 3.9+.
Quick Start
from paeg_teaching_materials import MaterialRegistry, execute
# 1. 注入你的 LLM(任何项目接入点)
def my_llm(system, user, max_tokens=2000, temperature=0.7):
return call_your_llm(system, user, max_tokens=max_tokens)
MaterialRegistry.inject(llm=my_llm)
# 2. 生成物料(统一执行入口)
result = execute("generate_handout", {"topic": "一元二次方程", "subject": "数学"})
# → {"material_type": "handout", "topic": "...", "ok": true, "output": "## 教学目标..."}
# 3. 质量检查 + 评审
from paeg_teaching_materials import check_material_structure, judge_material
issues = check_material_structure(result["output"], "handout")
score = judge_material(result["output"], "一元二次方程")Integrate as an MCP Server (Install Directly Like MCP and It's Ready to Use)
# 方式 1:console_scripts 入口(pip install 后)
paeg-teaching-materials-mcp
# 方式 2:python -m 入口(源码运行)
python -m paeg_teaching_materials.mcp_serverMCP client configuration declaration (config/mcp_servers.json):
{
"mcpServers": {
"paeg-teaching-materials": {
"command": "python",
"args": ["-m", "paeg_teaching_materials.mcp_server"],
"cwd": "D:/wbo-workspace/paeg_project/paeg-teaching-materials"
}
}
}Exposed MCP tools (15):
Tool name | Function |
| PPT outline generation |
| Handout generation |
| Lecture script generation |
| Mind map generation |
| Teaching video storyboard script |
| Manim math animation code |
| Deterministic structural check of materials |
| 5-dimension review of materials |
| Material type introspection |
| Material prompt assembly |
| Language specification check |
| Language specification gatekeeper |
| Mesh: execute functional nodes independently |
| Mesh: automatically orchestrate prerequisite stages |
| Mesh: functional dependency graph introspection |
External Project Integration Guide
Scenario A: Use Only the Unified Execution Entry (Recommended)
from paeg_teaching_materials import execute
result = execute("generate_ppt", {"topic": "微积分", "subject": "数学"})Scenario B: Inject Your Own LLM (Strong Implementation)
from paeg_teaching_materials import MaterialRegistry
MaterialRegistry.inject(llm=my_llm, refiner=my_refiner)
result = MaterialRegistry.generate("handout", "力学", "物理")Scenario C: Register Custom Material Types (Extensibility)
from paeg_teaching_materials import MaterialRegistry
from paeg_teaching_materials.generators.base import Generator
class QuizGenerator(Generator):
material_type = "quiz"
def generate(self, topic, subject="通用", learner_id="anon", **kw):
return {"material_type": "quiz", "topic": topic, "ok": True, "output": "..."}
MaterialRegistry.register("quiz", generator=QuizGenerator())
# 现在 execute("generate_quiz", {...}) 可用Scenario D: MCP Server (Zero-Code Bridge)
pip install + MCP config declaration (see above) — any MCP client (Claude/OpenCode/self-built) can call it directly.
Extensibility
Extension point | Method | Mechanism |
Material type |
| Dynamic registry expansion |
LLM backend |
| Protocol injection |
Language specification |
| RefinerProtocol (reuses paeg-lang-style L0 by default) |
Resource retrieval |
| ResourceProvider |
Quality review | 5-dimension auto-enabled once LLM is injected | judge_material |
Rendering backend | pptx/manim optional dependencies | extras_require |
Maintainability
Zero host dependencies: the core package depends only on stdlib; all host features are injected via Protocol
Unified contract: execute returns a JSON string (MCP contract), never throws on failure
Weak mode: runs without a host (Null generator placeholder), convenient for testing and demos
Language specification integration: material output automatically passes L0 grammar error correction
41 tests: full coverage of public API / weak mode / injection / execute / quality / MCP
Architecture
宿主系统(任何 Python 项目 / 智能体)
MaterialRegistry.inject(llm=..., refiner=..., resources=...) <- 宿主注入
execute("generate_handout", {...}) <- 统一入口
|
| 零宿主依赖(Protocol 抽象)
v
paeg_teaching_materials(独立插件)
+-------------------+ +-------------------+ +----------------+
| registry.py | | generators/ | | quality/ |
| MaterialRegistry | | ppt/handout/... | | checks/judge |
+---------+---------+ +---------+---------+ +----------------+
| |
v v
+-----------------------------------------------------------+
| executor.py(execute 统一入口,JSON 契约) |
| mcp_server.py(FastMCP 15 工具,stdio 直接安装) |
+-----------------------------------------------------------+Integration with the PAEG Main Project
PAEG integrates via services/material_bridge.py (host injection + zero-breakage fallback):
from services.material_bridge import install_material_plugin
install_material_plugin() # server.py 启动时调用一次
# 注入 PAEG LLM(subagents._safe_chat)+ Refiner(paeg.refiner)+ 资源(library)
# 插件未安装 → 静默回退 PAEG 原物料实现(旧文件永不删除)Tests
python -m pytest tests/ -q
# 22 项:公共 API / 弱模式 / 注入 / execute / 质量 / MCP serverContribution Guide
Contributions welcome!
Add a new material type: subclass the
Generatorbase class +MaterialRegistry.register()Add quality checks: add functions in
quality/checks.pyCode style: follow the existing module structure + comment conventions
Acknowledgments
PAEG Education Agent — this plugin is extracted from its material creation system (§3.87-§3.100)
paeg-lang-style — language specification plugin (L0 integration)
Presenton / ppt-agent-skills — LLM + rendering pipeline paradigm
ManimTrainer — Manim rendering closed-loop paradigm
License
MIT © 2026 PAEG Team
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables AI agents to generate real Office documents (.pptx, .docx, .xlsx) and source code from natural language via MCP protocol.4MIT
- AlicenseNot gradedqualityBmaintenanceMCP server suite that lets coding agents generate deep instructional content from external sources and operate classroom-interactive EdTech platforms including Padlet, Google Classroom, Kahoot!, Wayground, Wordwall, and Nearpod.MIT
- AlicenseAqualityBmaintenanceAn agent-native teaching OS that gives AI assistants a persistent classroom with courses, lessons, flashcards, and graded exercises via MCP tools.503AGPL 3.0
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to create and manage personalized 30-day study courses, including web research with source validation, daily lessons, quizzes, and progress tracking through 12 MCP tools.1MIT
Related MCP Connectors
Free public MCP for AI agents — 193 tools, 44 workflows. No API key.
100+ MCP tools for AI agents: content metadata, trade intelligence, business-expertise analysis.
Hosted MCP with 91 agent tools: X, domains, SEO, Maps, Trends, Search, YouTube, TikTok, and more.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Golden2002/paeg-teaching-materials'
If you have feedback or need assistance with the MCP directory API, please join our Discord server