用途:在 PostHog 内管理 Streamlit Python 数据应用的全生命周期,通过 streamlit-apps-* MCP 工具完成创建到删除的操作。
主要流程:先用 streamlit-apps-create 创建应用(可指定 name,可选 description、cpu_cores 0.25–8、memory_gb 0.5–16,默认 0.5/1);再用 streamlit-apps-set-source 以单个字符串提供完整 app.py 源码,可通过 files 附带文本文件、assets 附带 base64 二进制文件,这会创建并激活版本 1;然后 streamlit-apps-start 启动,沙箱异步启动,轮询 streamlit-apps-status 直到 running;最后通过返回的 _posthogUrl(/streamlit-apps/{short_id})分享,查看者需登录 PostHog 并具有项目权限,无公开 URL。
数据权限:应用查询以活跃版本作者的权限运行,能查看应用的人会看到那些数据;若版本作者已被删除,应用无法启动,需上传新版本。
更新代码:先 streamlit-apps-get-source 读取活跃版本(返回 version_number、文件清单与文本内容,二进制无内容),再用 streamlit-apps-edit-source 配合 base_version 做精确替换(file_edits)、新增(create_files)、删除(delete_files);若活跃版本已变更会返回 409 及 current_version,应基于其重做。set-source 用于新建或整体重写。更新后沙箱会被停止,需再次 start。版本不可变,仅保留最新 50 个,非活跃版本超 30 天删除,无回滚工具。
停止与删除:streamlit-apps-stop 停止沙箱但不影响代码;空闲沙箱会自动停止,属正常现象;streamlit-apps-delete 软删除应用。
排错:start 失败可重试一次;403 提示功能未开放为组织灰度限制;查询失败属应用代码问题(桥接限制 30 秒执行、每查询 256 MB 内存);set-source 后显示旧代码是漏了 start。重命名与调整资源用 streamlit-apps-update,新规格在下次启动生效。默认配置适合常规仪表板,仅当应用自身占用大内存时才调高 memory_gb。