{"ok":true,"site":{"host":"dag-studio-webmcp-sandbox.pages.dev","url":"https://dag-studio-webmcp-sandbox.pages.dev/","type":"live","desc":"DAG Studio","tools":[{"name":"get_current_dag","kind":"answer","impl":"imperative","description":"Read the exact causal DAG currently visible in DAG Studio, including node roles, canvas positions, edges, exposure, and outcome.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"add_node","kind":"act","impl":"imperative","description":"Add a researcher-reviewable variable to the live DAG Studio canvas. Use unclassified when the scientific role is uncertain. The change is visibly attributed to the agent and can be undone.","inputSchema":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"type":{"type":"string","enum":["exposure","outcome","confounder","mediator","collider","latent","variable","unclassified"]},"x":{"type":"number"},"y":{"type":"number"}},"required":["id","label"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"remove_node","kind":"act","impl":"imperative","description":"Remove a variable and its incident edges from the live canvas. The agent change is visible and undoable.","inputSchema":{"type":"object","properties":{"id":{"type":"string"}},"required":["id"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"add_edge","kind":"act","impl":"imperative","description":"Add a directed causal claim to the live DAG. Duplicate and cyclic edges are rejected. The visible change is undoable.","inputSchema":{"type":"object","properties":{"source":{"type":"string"},"target":{"type":"string"}},"required":["source","target"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"remove_edge","kind":"act","impl":"imperative","description":"Remove one directed edge from the live DAG. The visible change is undoable.","inputSchema":{"type":"object","properties":{"source":{"type":"string"},"target":{"type":"string"}},"required":["source","target"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"analyze_current_dag","kind":"act","impl":"imperative","description":"Verify the current DAG with the existing DAG Studio causal engine. Results are conditional on the researcher-authored structure.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"check_adjustment_set","kind":"answer","impl":"imperative","description":"Check whether proposed node ids block every encoded backdoor path without deciding whether adjustment is scientifically appropriate.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"adjustment_set":{"type":"array","items":{"type":"string"}}},"required":["adjustment_set"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"generate_analysis_code","kind":"act","impl":"imperative","description":"Generate R or Python code for the exact current canvas using the existing DAG Studio engine.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"language":{"type":"string","enum":["r","python"]}},"required":["language"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"simulate_current_dag","kind":"act","impl":"imperative","description":"Simulate reproducible data from the exact current canvas using DAG Studio's existing linear Gaussian SEM, show the result in the visible simulation panel, and return bounded summaries for comparing causal hypotheses. Results describe implications of the encoded model, not evidence that the model is scientifically correct.","inputSchema":{"type":"object","properties":{"run_label":{"type":"string","description":"A short label used to distinguish this result from another hypothesis, for example \"Hypothesis A\"."},"sample_size":{"type":"integer","enum":[100,500,1000,2500,5000,10000],"description":"Number of observations to simulate. Defaults to 1000."},"seed":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Reproducible random seed. Defaults to 42."},"edge_coefficients":{"type":"object","description":"Optional coefficient overrides keyed by exact node-id edge strings such as \"exposure->outcome\". Unspecified edges use 0.5.","additionalProperties":{"type":"number"}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"category":"Health & Education","apiSurface":"spec","toolCount":9}}