关于 DAG Studio WebMCP
DAG Studio WebMCP 通过浏览器原生工具,将 AI Agent 接入研究者正在使用的因果 DAG 画布。研究者可查看或撤销 Agent 的编辑,现有因果引擎则分析图结构的影响。
主要功能
- 01读取和编辑实时 DAG
- 02拒绝循环或无效的边
- 03分析路径和调整集
- 04生成 R 或 Python 代码
- 05模拟当前 DAG 的数据
- 06可见且可撤销的 Agent 编辑
适用场景
- 01与 Agent 一起检查因果图
- 02在共享画布上提出并审核图的修改
- 03检查后门路径和调整集
- 04比较不同 DAG 假设的模拟影响
MCP 相关
注册九个 WebMCP 工具,用于读取和修改实时画布、分析图、生成代码及模拟。可选的远程 MCP 桥接可让其他 MCP 客户端连接同一浏览器画布。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://dag-studio-webmcp-bridge.jdiazdecaro.workers.dev/mcpclaude mcp add --transport http black-swan-causal-labs-dag-studio-webmcp https://dag-studio-webmcp-bridge.jdiazdecaro.workers.dev/mcp{"mcpServers":{"black-swan-causal-labs-dag-studio-webmcp":{"type":"http","url":"https://dag-studio-webmcp-bridge.jdiazdecaro.workers.dev/mcp"}}}在 Cursor 中打开{"servers":{"black-swan-causal-labs-dag-studio-webmcp":{"type":"http","url":"https://dag-studio-webmcp-bridge.jdiazdecaro.workers.dev/mcp"}}}在 VS Code 中打开{"mcpServers":{"black-swan-causal-labs-dag-studio-webmcp":{"type":"http","url":"https://dag-studio-webmcp-bridge.jdiazdecaro.workers.dev/mcp"}}}{"mcpServers":{"black-swan-causal-labs-dag-studio-webmcp":{"serverUrl":"https://dag-studio-webmcp-bridge.jdiazdecaro.workers.dev/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
https://dag-studio-webmcp-bridge.jdiazdecaro.workers.dev/mcp需要授权工具
详细介绍
DAG Studio WebMCP
面向 OpenAI 2026 WebMCP Challenge 的人机因果 DAG 工作区。
AI 提出建议。研究人员作出决定。引擎负责验证。
HTTPS 在线沙盒 · 原版 DAG Studio · Apache 2.0 许可证
问题
因果有向无环图编码了科学假设:哪些变量导致哪些变量,哪些是测量变量或潜在变量,以及哪些路径可能使效应估计产生偏差。这些决策需要领域专业知识和科学责任。通用 Agent 可以帮助研究人员检查和编辑图,但可视化浏览器自动化速度慢、含义模糊,且与应用的因果语义脱节。
DAG Studio WebMCP 将现有 DAG Studio 界面改造为共享工作区。研究人员可以直接编辑画布,同时 Agent 通过结构化的浏览器原生工具读取和更新完全相同的图。Agent 的每次修改都可见且可撤销。因果引擎会检查图的含义;引擎和 Agent 都不会声称能够判定科学真相。
WebMCP 的重要意义
没有 WebMCP 时,Agent 必须根据像素和 DOM 结构推断节点身份、边的方向和分析控件。有了 WebMCP,DAG Studio 会明确提供安全且专用的操作,例如 add_node、add_edge 和 analyze_current_dag。
这样就能实现以往难以做到的双向协作:
- Agent 无需抓取界面即可读取实时图。
- Agent 可以提出精准且标明来源的修改。
- 研究人员可以立即查看、移动、编辑、接受或撤销修改。
- 画布上的人工编辑会立即对 Agent 可见。
- 现有因果引擎会验证后门路径和调整的影响。
- Agent 可以根据相互竞争的 DAG 假设模拟可复现的数据,并比较其结构和统计影响。
在线演示
在支持 WebMCP 的 ChatGPT 浏览器中打开沙盒,或在启用了 chrome://flags/#enable-webmcp-testing 的 Chrome 中打开。工具可用时,标题栏会显示 WebMCP 已连接。
建议提示词:
读取当前 DAG。提出将吸烟状态作为一个可能的混杂因素,将其添加为指向 Treatment 和 Outcome 的箭头,然后分析该图。请将新增内容视为待我审核的假设,不要进行任何其他更改。
图会在原处更新。手动移动新节点,然后让 Agent 再次读取图,以展示双方共享同一状态。
WebMCP 工具
| 工具 | 行为 |
|---|---|
get_current_dag | 读取实时节点、角色、位置、有向边、暴露变量和结局变量。 |
add_node | 向可见画布添加一个可供研究人员审核的变量。 |
remove_node | 移除一个节点及其相连的边。 |
add_edge | 添加一项有向因果主张;重复边、自环边和成环边均会被拒绝。 |
remove_edge | 移除一项有向因果主张。 |
analyze_current_dag | 返回开放的后门路径、最小充分调整集、可识别性和诊断信息。 |
check_adjustment_set | 根据编码的后门路径检查建议的集合。 |
generate_analysis_code | 为实时图生成 R/dagitty 或 Python/NetworkX 代码。 |
simulate_current_dag | 使用现有线性高斯 SEM 对实时图运行模拟,打开可见的模拟结果,并返回有界摘要、相关性、效应估计和 10 行预览。 |
此集成优先使用当前的 document.modelContext API,并为实现早期 WebMCP 草案的宿主提供临时的 navigator.modelContext 回退。
架构
Researcher edits canvas ─┐
├─ React state + synchronous refs ─ DAG Studio engine
Agent calls WebMCP tools ┘ │
├─ paths and adjustment sets
├─ diagnostics
├─ R/Python generation
└─ reproducible simulation summaries
index.html包含现有的 React DAG Studio 界面。webmcp-tools.js通过依赖注入访问画布的状态引用、变更包装器和现有仿真引擎,从而定义并注册九个工具。dag-engine.js和dag-engine.d.ts是现有 DAG Studio 因果引擎及类型声明。Challenge 工作会调用该引擎,不会重写其因果算法。- 图、分析、撤销历史和 WebMCP 操作均在客户端运行。
- 静态构建通过 Cloudflare Pages 托管,并使用 HTTPS。
人工控制与安全
因果结构是一种断言,而不是软件发现的事实。因此,工具描述和响应会将变更表述为供研究人员审查的提案。Agent 的变更:
- 会显示在供人工编辑的同一画布上;
- 会收到可见的 Agent 变更通知;
- 会进入与人工变更相同的撤销历史;
- 会拒绝有向图中的环和无效节点引用;并且
- 会明确提示结果取决于所编码的假设。
示例与更广泛的界面
继承自 DAG Studio 的界面包含混杂、中介、碰撞偏倚和 M 偏倚的经典结构,以及:
- 拖放式 DAG 编辑和类型化变量;
- 暴露与结局指定;
- 突出显示因果路径和后门路径;
- 最小调整指导和结构角色诊断;
- R 和 Python 代码生成,以及从代码到画布的工作流;
- 客户端数据仿真;以及
- 图像、PDF、PowerPoint 和代码导出。
2026 年 8 月 25 日之前已有的内容
Challenge 之前的基线是公开的 Black-Swan-Causal-Labs/dag-studio 应用,其提交为 31cc431612ba18a8bce1ab0841a88a0bb8b815f3,日期为 2026 年 7 月 8 日。它已经包含可视化 DAG 编辑器、因果推断引擎、教学示例、分析面板、代码控制台、仿真、导出和响应式 UI。
原始应用并未公开 WebMCP 工具、标记 Agent 图编辑,也未测试人工和 Agent 对同一图状态的访问。
专为 WebMCP Challenge 构建
在 2026 年 8 月 25 日之后的 Challenge 提交期间,新增了以下内容:
- 九个 WebMCP 工具,包括对实时 DAG 进行可复现仿真;
- 将这些工具直接连接到画布现有的共享状态;
- WebMCP 连接诊断以及对当前和早期 API 的兼容支持;
- 可见且可撤销的 Agent 变更归属标记;
- 自动化测试,覆盖工具注册、Agent 变更、人工到 Agent 的状态可见性、边和节点移除、环检测、引擎分析、调整检查、代码生成、仿真可复现性、结果范围限制和输入验证;
- 一个不会更改生产版 DAG Studio 的独立 HTTPS 沙盒;以及
- Challenge 专用文档和演示说明。
本地运行
git clone https://github.com/Black-Swan-Causal-Labs/dag-studio-webmcp.git
cd dag-studio-webmcp
npm install
npm run dev
打开输出的 Vite URL。若要在 Chrome 中启用原生 WebMCP,请开启 chrome://flags/#enable-webmcp-testing 并重新启动 Chrome。
测试与构建
npm test
npm run build
测试命令会同时运行原始 DAG 引擎一致性测试套件和 WebMCP/共享状态测试套件。生产构建会生成静态 dist/ 目录,可部署到任意 HTTPS 静态主机。
科学依据
因果引擎实现了基于 Pearl(2009)、Greenland、Pearl 和 Robins(1999)以及 Textor 等人(2016)的 d-分离和调整逻辑。效应修饰分类遵循 VanderWeele 和 Robins(2007)以及 Weinberg(2007)。详情请参阅应用内的 About 和 Education 部分。
作者与许可证
John D. Diaz-Decaro,博士,理学硕士 · Black Swan Causal Labs
Apache License 2.0 © 2026 John D. Diaz-Decaro、Black Swan Causal Labs, LLC。请参阅 LICENSE。
复用的 dag-engine.js 和 dag-engine.d.ts 文件源自 DAG Studio,
并与 dagstudio-mcp 共享。
这三个项目均依据 Apache License 2.0 分发该引擎;WebMCP
Challenge 项目调用该引擎,但不会重写其因果算法。
远程 MCP 客户端
可选的远程 MCP 桥接可将其他 MCP 客户端连接到同一个实时浏览器画布。打开应用,选择 Connect MCP,然后启用临时连接。无需配对即可继续使用原生 WebMCP。注册表元数据位于 server.json。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。