希沃课件制作(EasiNote MCP)
何时用
用户要"做希沃课件 / 生成互动课件 / 加课堂活动 / 出讲稿视频",或希沃相关连接排错。整套能力 = 希沃白板5 内置 MCP Server 的 61 个工具,桥(bridge.js)只做透明转发。
第 0 步:连接检查(每次会话首次用到时跑一次)
node "<skill目录>/scripts/seewo_check.js"
- 全 OK → 直接进入制课流程
- 提示未注册 →
python "<skill目录>/scripts/install_mcp.py",然后告知用户:重启 WorkBuddy → 连接器管理 → 自定义连接器 seewo 点一次「信任」(配置摘要绑定 command+args+env,改桥路径/参数后需重装+重新信任) - 提示进程未运行 → 请用户先打开希沃白板5(需 5.2.4+,且已登录希沃账号)
- 诊断细节与坑位 →
references/tool-notes.md
制课标准流程
> ⚠️ 三条铁律(2026-09-28 实战验证,违反即元素静默丢失):
> 1. add_text_element / add_shape_element 等写操作必须逐个串行调用,严禁并行批量——服务端写竞争会导致"返回成功+元素ID 但实际未持久化"(实测一整轮并行调用全军覆没,页面全空)。
> 2. 每次 add_* 必须显式传 slideNumber——不传时落到"当前页";若当前页是课堂活动页(整页独占),新元素会被静默丢弃。
> 3. 同页 z-order:后添加的元素在上层——先铺背景/形状/卡片,再添加文字;否则文字会被后补的形状盖住。
- 保底原则:AI 改的是"当前真实打开的课件"。先
get_current_courseware_info看现状;除非用户明确要改现有课件,否则一律new_cloud_courseware(传标题)新建,避免误改原稿。返回的 Shell Id 用en_find_shells(EditSelectedTab) +en_bind_shell绑定。 - 规划页序:和用户确认或按教案定页数与每页职责(封面→情境导入→探究活动→练习→总结作业),一次说清再动手,减少来回改。
- 建页:
add_slide(显式传 slideNumber,逐页追加保证页序)。 - 逐元素搭页(实测最可靠):每页先
add_shape_element(横幅/卡片/分数条模型),后add_text_element(坐标基于 1280×720 画布;文本框有 +10px 内边距;指定 x 时文本框最大宽度约 640px 自动换行;不指定 x 则水平居中)。
- ⚠️RenderSlideML的 SlideML 方言实测无文本元素(已探明词汇表见 references/tool-notes.md),不适合承载文字版面,仅 Rect/Image/Panel 布局时才考虑。 - 课堂活动:先
add_slide新建一页再调add_choice_activity_element(趣味选择)/add_match_activity_element(知识配对)/add_classify_activity_element(超级分类)/add_judge_activity_element(判断对错)——活动整页独占会覆盖背景。活动页不要再铺横幅文字。活动自带计分动画(实测界面完整可用)。 - 讲稿备注:
set_slide_notes(items: [{slideNumber, text}])一次性批量写全 10 页(此工具批量安全)。 - 截图验收(必做,不能省):逐页
get_slide_screenshot(存文件用expectedPngImageFilePath),用文件大小做初筛(空白页只有约 5KB),再目检关键页;注意检查文字被形状遮挡(z-order)问题。 - 云同步:
sync_current_courseware(waitUntilSynced=true)确认版本号递增;get_current_courseware_info可查云端 ID。 - 汇报:报告页数、每页内容、活动类型与验收截图结果;发现空白页/遮挡用
delete_elements+ 重加修复。
提示词模板(引导用户一次说清)
帮我用希沃做一份【学科+年级】《课题》课件:
一、新建云课件,标题"某某";
二、第 1 页课题加授课人;
三、第 2~N 页对照教案生成,标注每页课堂活动类型;
四、最后一页总结加课后任务;
五、做完给我截图。
把页数、风格、每页干什么说清楚就够了。
技术备忘(排错时用)
- 架构:WorkBuddy ──stdio──> scripts/bridge.js ──HTTP──> 希沃内置 MCP Server ──> 真课件
- 端口随机、随白板重启变化;bridge.js 自动发现:希沃日志
all_info.txt(权威源)→ 端口缓存 → netstat 定位 EasiNote.exe 监听端口。手动指定可设SEEWO_MCP_PORT - 协议:Streamable HTTP,端点
/mcp,会话靠Mcp-Session-Id头,桥自动维护/重建 - 61 个工具完整 schema:
references/seewo-tools-full.json;用法要点与坑:references/tool-notes.md - 桥日志:设环境变量
SEEWO_BRIDGE_DEBUG=1后 stderr 输出 - 本机代理会劫持 127.0.0.1 请求;swenserver 3123 / EasiNote 14682 是私有协议不是 MCP
- 卸载:
python "<skill目录>/scripts/uninstall_mcp.py"(零侵入,不碰希沃安装目录)