Skip to main content
Glama
Golden2002

paeg-teaching-materials

by Golden2002

paeg-teaching-materials

Python License: MIT Tests

중국어 | 영어


이것은 무엇인가

paeg-teaching-materials교육 자료 제작 플러그인입니다 — 6가지 유형의 자료 생성기 + 통합 실행 진입점 + MCP server.

자료 유형

기능

생성 방식

PPT

프레젠테이션 개요(6x6 원칙) + 선택적 python-pptx 렌더링

LLM 개요 → 렌더링

교안

6단 구조(교수 목표/도입/신수업/강화/정리/과제)

LLM이 markdown 생성

강의록

분절 내레이션(TTS 가능)

LLM 생성

마인드맵

중심 주제→3-5개 가지→2-4개 하위 가지

LLM이 들여쓰기 목록 생성

교육 비디오

스토리보드(컷당 8-15초, 음성·화면 정렬, 훅+recap)

LLM이 JSON 생성

Manim 애니메이션

수학 애니메이션 코드 + 선택적 mp4 렌더링

LLM 코드 → Manim

PAEG 교육 에이전트 자료 시스템(v0.87-§3.91 이터레이션)에서 유래했으며, 호스트 의존성 제로 독립 플러그인으로 개조되었습니다.

Related MCP server: interactive-edtech-mcp

핵심 기능

  • 네트워크형 연결 아키텍처(최고 수준 도구 기준 ⭐): 10개의 기능 노드(자료 조사/개요/PPT/교안/강의록/마인드맵/비디오/Manim/학습 방법/학습 계획) — 각각은 독립적으로 사용할 수 있을 뿐만 아니라 다른 기능의 선행 단계이기도 합니다.

  • 확장 가능한 생성기 레지스트리: MaterialRegistry.register("自定义类型", generator) 호출만으로 확장됩니다.

  • 호스트 의존성 제로: 6개의 Protocol 추상화(LLMCallable/RefinerProtocol/HandoutGenerator/ScriptGenerator/MindmapGenerator/ResourceProvider) + Null 약(weak) 모드

  • 통합 실행 진입점: execute(name, args)는 constraint_engine에 대응합니다(JSON 계약, 절대 예외를 던지지 않음).

  • MCP server 직접 설치: pip install + MCP 구성 선언만으로 바로 연결됩니다(15개 도구).

  • 언어 규범 연동: 자료 출력물이 자동으로 L0 비문 교정을 거칩니다(paeg-lang-style 재사용).

  • 품질 검사 + 평가: 결정적 구조 검사 + LLM 5차원 점수.

네트워크형 연결 아키텍처(기능은 독립적이면서도 선행 단계 ⭐)

도구 내부는 서로 얽힌 네트워크 배선과 연결입니다 — 각 기능은 일급 시민 노드입니다:

research(查资料·广播前置)
   ├──→ outline(大纲)──→ ppt(PPT 制作)
   ├──→ script(讲稿)──→ video(教学视频)
   ├──→ handout / manim / method / study_plan / mindmap(可选)

세 가지 모드 의존성 엣지:

엣지 유형

의미

예시

broadcast(브로드캐스트)

소스 산출물이 전체 네트워크에서 소비됨

자료 조사 → 모든 생성

directed(지정)

강한 선행 조건

개요→PPT, 강의록→비디오

optional(선택)

누락 시 다운그레이드

자료 → 마인드맵

이중 노출: 각 기능은 독립 MCP 도구(execute_tool)이면서 자동 오케스트레이션 (execute_pipeline이 의존성 그래프에 따라 선행 단계를 전개), | 체인 조합도 가능합니다:

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()

중간 산출물(MaterialContext 타입화 Blackboard):

resources(자료 조사·append 누적) / outline / lecture_script / ppt_outline / completed_stages(단계 표시·union) — 선행 단계의 산출물은 하위 단계에서 자동으로 소비됩니다.

설치

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 server

Python 3.9+가 필요합니다.

빠른 시작

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"], "一元二次方程")

MCP server 방식으로 연결(MCP처럼 바로 설치해서 사용)

# 方式 1:console_scripts 入口(pip install 后)
paeg-teaching-materials-mcp

# 方式 2:python -m 入口(源码运行)
python -m paeg_teaching_materials.mcp_server

MCP 클라이언트 구성 선언(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"
    }
  }
}

노출된 MCP 도구(15개):

도구 이름

기능

generate_ppt

PPT 개요 생성

generate_handout

교안 생성

generate_script

강의록 생성

generate_mindmap

마인드맵 생성

generate_video_script

교육 비디오 스토리보드 스크립트

generate_manim

Manim 수학 애니메이션 코드

material_quality_check

자료 결정적 구조 검사

material_judge

자료 5차원 평가

list_material_types

자료 유형 자기 점검

build_material_prompt

자료 프롬프트 조합

check_language

언어 규범 검사

normalize_material

언어 규범 게이트키퍼

execute_tool

네트워크: 기능 노드 독립 실행

execute_pipeline

네트워크: 선행 단계 자동 오케스트레이션

list_dependencies

네트워크: 기능 의존성 그래프 자기 점검

외부 프로젝트 연결 가이드

시나리오 A: 통합 실행 진입점만 사용(권장)

from paeg_teaching_materials import execute
result = execute("generate_ppt", {"topic": "微积分", "subject": "数学"})

시나리오 B: 자체 LLM 주입(강한 구현)

from paeg_teaching_materials import MaterialRegistry
MaterialRegistry.inject(llm=my_llm, refiner=my_refiner)
result = MaterialRegistry.generate("handout", "力学", "物理")

시나리오 C: 사용자 정의 자료 유형 등록(확장성)

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", {...}) 可用

시나리오 D: MCP server(제로 코드 브리지)

pip install + MCP 구성 선언(위 참조) — 모든 MCP 클라이언트(Claude/OpenCode/자체 개발)에서 직접 호출할 수 있습니다.

확장성

확장 지점

방법

메커니즘

자료 유형

MaterialRegistry.register("type", generator)

레지스트리 동적 확장

LLM 백엔드

MaterialRegistry.inject(llm=...)

Protocol 주입

언어 규범

MaterialRegistry.inject(refiner=...)

RefinerProtocol(기본값은 paeg-lang-style L0 재사용)

리소스 검색

MaterialRegistry.inject(resources=...)

ResourceProvider

품질 평가

LLM 주입 후 5차원 자동 활성화

judge_material

렌더링 백엔드

pptx/manim 선택 의존성

extras_require

유지보수성

  • 호스트 의존성 제로: 핵심 패키지는 stdlib에만 의존하며, 호스트 기능은 전부 Protocol 주입

  • 통일된 계약: execute는 JSON 문자열을 반환(MCP 계약)하며, 실패 시 예외를 던지지 않음

  • 약한 모드: 호스트 없이도 실행 가능(Null 생성기 자리 표시), 테스트와 데모에 용이

  • 언어 규범 연동: 자료 출력물이 자동으로 L0 비문 교정을 거침

  • 41개 테스트: 공개 API/약한 모드/주입/execute/품질/MCP 전체 커버

아키텍처

宿主系统(任何 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 直接安装)            |
  +-----------------------------------------------------------+

PAEG 메인 프로젝트와 통합

PAEG는 services/material_bridge.py를 통해 연결합니다(호스트 주입 + 무중단 폴백):

from services.material_bridge import install_material_plugin
install_material_plugin()   # server.py 启动时调用一次
# 注入 PAEG LLM(subagents._safe_chat)+ Refiner(paeg.refiner)+ 资源(library)
# 插件未安装 → 静默回退 PAEG 原物料实现(旧文件永不删除)

테스트

python -m pytest tests/ -q
# 22 项:公共 API / 弱模式 / 注入 / execute / 质量 / MCP server

기여 가이드

기여를 환영합니다!

  • 새 자료 유형 추가: Generator 기본 클래스 상속 + MaterialRegistry.register()

  • 새 품질 검사 추가: quality/checks.py에 함수 추가

  • 코드 스타일: 기존 모듈 구조 + 주석 규범 준수

감사의 말

  • PAEG 교육 에이전트 — 본 플러그인은 그 자료 제작 시스템(§3.87-§3.100)에서 추출되었습니다

  • paeg-lang-style — 언어 규범 플러그인(L0 연동)

  • Presenton / ppt-agent-skills — LLM+렌더링 파이프라인 패러다임

  • ManimTrainer — Manim 렌더링 폐루프 패러다임

라이선스

MIT © 2026 PAEG Team

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

View all related MCP servers

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.

View all MCP Connectors

Latest Blog Posts

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