
ROBINS-I V2 MCP
com.blackswancausallabs由 blackswancausallabs.com 發布v0.1.0更新於 Oct 24, 2026
ROBINS-I V2 (not V1): risk of bias in one result of a non-randomized cohort study
發布方自己的服務:DAG Studio MCP
概覽
一個本機 MCP 伺服器,對非隨機追蹤或世代研究的某一結果執行確定性的 ROBINS-I V2 偏差風險評估。
- 可以做什麼
- 檢視 ROBINS-I V2 規格,並解析研究文件(PDF、docx、文字、補充資料)或從 Europe PMC 取得,產生雜湊與線索調查。設定綜述預先指定的混淆因素並指定結果,包括選擇領域 1 變體的 C4 問題。依領域產生並提交訊號問題答案,引文須綁定到文件位移,否則會被拒絕。依已發布演算法計算各領域與整體判定,並產出帶戳記的報告。將多次執行的紀錄匯出成一個可供 robvis 使用的 CSV。
- 適用情境
- 當你需要依 ROBINS-I V2 評估世代研究或目標試驗模擬研究中某一具體結果的偏差風險時使用;也適合需要讓判定可追溯至引文證據的多研究綜述。
- 執行需求
- 需要本機 Python 環境;以 pip 安裝 robins-i-mcp 套件或用 uvx 直接執行,然後在 MCP 用戶端註冊 robins-i-mcp 指令。研究論文未隨套件提供:需自行放入 papers 目錄,或以 ROBINS_MCP_PAPERS 環境變數指向其所在目錄。未宣告任何身分驗證。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 ROBINS-I V2 MCP,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
robins-i-mcp
An MCP server implementing ROBINS-I V2 (Risk Of Bias In Non-randomized Studies – of Interventions, follow-up/cohort variant) as a deterministic, provenanced assessment engine.
Sibling to target-mcp, which scores how
completely a target-trial-emulation study reports what the TARGET guideline
requires. This one assesses risk of bias in one specific result. The two are
complementary on the same paper.
The source is a draft. riskofbias.info presents the 20 November 2025 release of ROBINS-I V2 as still a draft, subject to change. Every report stamps that in its provenance line. See
NOTICEandTRANSCRIPTION-NOTES.md.Follow-up cohort studies. "Follow-up" and "cohort" name one structural property — a defined time zero, individuals followed forward under the contrasted strategies — so read the property, not a design label. Target trial emulations are the central use case and are cohort studies in exactly this sense; both worked examples below are TTEs. Designs with no follow-up structure are out. No variant for other designs is published yet. Note that "Variant A / Variant B" inside the tool means the two forms of Domain 1 selected by C4 — not a study design.
What makes it different from asking a model
The model's contribution is bounded at answering signalling questions from the text. It cannot compute a judgement and it cannot invent evidence.
Three rules are enforced at submission, and they are the point of the server:
- Quotes resolve or die. Every quote is matched to character offsets in the ingested bundle through a three-pass ladder (exact → hyphen-relaxed → references-stripped), and the winning pass is recorded so a loose match is never silently equated with an exact one. An unresolvable quote is rejected with the nearest actual text.
- Absence is searched, not asserted. A
manuscript_absentanswer names a cue; the server runs the search and attaches the record — terms, sections, hit count. A prose claim that you looked is refused. - Judgements are computed. No tool accepts a domain judgement as input. The six domain algorithms and the overall algorithm are explicit edge graphs traced from the published flowcharts. A human may override, with a recorded justification, and the report shows both values.
Two gates
P1 blocks domain 1. Question 1.1 asks whether all important confounding
factors were controlled, and "important" is defined by the reviewer's
prespecified list — not by the paper's covariate table. The server refuses to
score domain 1 without set_prespecified_confounders rather than silently
substituting one for the other. A list you propose is a candidate: it enters the
ratification queue until a human accepts it.
C4 selects domain 1's question set. Whether the analysis accounts for
protocol deviations picks variant A (intention-to-treat, baseline confounding
only) or variant B (per-protocol, baseline and time-varying confounding), so
specify_result requires it up front with no default. Judge it on what the
analysis does, not on the label the authors give their estimand — on the
reference paper, the protocol table says "per-protocol effect" and the analysis
is intention-to-treat.
Install
Then register it with your MCP client:
Or run it with no install at all:
Also on the MCP registry as
com.blackswancausallabs/robins-i-mcp.
Develop
Tools
Scaffolds are per domain, never one flat rubric: most signalling questions are unreachable on any given path, and which of domain 1's two sets exists at all depends on C4.
Pass the supplement. The target-trial specification that settles C1–C4, and
the analysis detail domains 1 and 4 turn on, routinely live only in the
appendix. Without it, those questions read NI when the answer was merely in a
file nobody ingested.
Many studies: the record
A review of N studies is N runs. Each assessment costs a session, and the server keeps no state between them. So each run emits a small portable record — that is the deliverable that crosses the boundary:
A record is ~4 KB of flat JSON and depends on nothing in this codebase, so any later agent can consume it. It carries its own provenance — document hash, algorithm fingerprint, spec version, ratification state — so every row in the resulting figure traces back to a document, and the export can warn when a set mixes algorithm transcriptions.
export_robvis is not a column dump. robvis's ROBINS-I template is V1:
seven domains, and V1 orders selection of participants before classification
of interventions, which V2 swaps. The default layout places each V2 judgement in
its correct V1 slot; a positional dump would parse, plot, and lie. Read the
returned losses before publishing — robvis reduces every cell to its first
initial over a five-fill palette, so the qualified low collapses to Low there
whatever string is written.
See examples/review_from_records.py.
Worked examples
- Dickerman et al., NEJM 2022 — BNT162b2 vs mRNA-1273 in US veterans. Comes out low, except for concerns about uncontrolled confounding. 24 of 41 questions never reached.
- Jabagi et al., Lancet Reg Health Eur 2026 — maternal RSVpreF vs infant RSV hospitalisation. Comes out serious, and the route is worth reading: domain 1 fails at 1.3 rather than 1.1, because gestational age at birth and birth weight are matched on despite being realised after the intervention.
The papers themselves are not in this repository — they are published
articles and not ours to redistribute. Put your own copies in papers/, or
point ROBINS_MCP_PAPERS at the directory holding them; the examples name the
files they need and fail with that message if they are absent.
Documentation
docs/STATUS.md— current state and handoff. Read this first.docs/DECISIONS.md— why things are the way they are, newest first.docs/SESSION-NOTES-*.md— per-session narrative.TRANSCRIPTION-NOTES.md— how the algorithms were obtained from raster flowcharts, the errata found in the published document, and what still needs external verification.
Licence
Apache-2.0 (LICENSE). The ROBINS-I V2 tool it implements is CC BY-NC-ND 4.0
and no part of it is reproduced here — see NOTICE for why that matters and
what the actual constraint is.
來源:README.md,提交 aee5a0b
工具
0版本歷史
1- v0.1.0最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分
其他 Blackswancausallabs 整合

DAG Studio MCP
com.blackswancausallabs官方發布者
用於因果 DAG 分析的遠端 MCP 伺服器:建構並驗證有向無環圖、尋找調整集、模擬偏誤。

NHANES (design-correct survey analysis)
com.blackswancausallabs
一個本機 MCP 伺服器,讓助理依調查設計正確分析 NHANES 資料,自動處理權重、合併週期、信賴區間與 NCHS 可靠度標記。

DAG Studio WebMCP
由 GitHub 帳號 Black-Swan-Causal-Labs 發布
透過結構化工具讀取並編輯 DAG Studio 中即時運作的因果圖,並提供分析、程式碼產生與模擬功能。

TARGET Checklist MCP
com.blackswancausallabs
依 TARGET 指引的 21 個項目,評估目標試驗模擬研究的報告完整程度,輸出逐項、附證據的檢核清單矩陣。

openFDA Regulatory Metadata
com.blackswancausallabs
一個本機 MCP 伺服器,透過 openFDA API 將 FDA 申請編號與產品名稱解析為藥品、生物製劑與醫療器材的監管中繼資料。