rootcause-mcp: Skill for Claude Code

.claude/skills/rootcause-clinical-reasoning-harness/SKILL.md

rootcause-clinical-reasoning-harness is a skill for Claude Code from u9401066/rootcause-mcp. It costs 99 tokens per session (2,273 once invoked), scanned A, original, Apache-2.0.

A workflow for analysing clinical cases with evidence from multiple sources and recording the reasoning separately from observations and hypotheses.

In plain words
What is it for?
Use it for medical-record analysis, adverse-event reviews, differential diagnosis, Fishbone or 5-Why analysis, and clinician handoffs.
Why use it?
It helps structure differential diagnoses and root-cause reviews while keeping clinical conclusions auditable and avoiding unsupported claims.

Skill for Claude Code

Written for Claude Code: installed under .claude/. Also seen: mentions Codex; built for cline.

This is u9401066/rootcause-mcp's own configuration. It tells Claude Code how to work on rootcause-mcp itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything rootcause-mcp configures →

Reuse

Borrowing it

Nothing to install: this file belongs to u9401066/rootcause-mcp. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/u9401066/rootcause-mcp/master/.claude/skills/rootcause-clinical-reasoning-harness/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/u9401066/rootcause-mcp

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for rootcause-clinical-reasoning-harness

README.md
[![agentmods](https://agentmods.dev/badge/skills/u9401066/rootcause-mcp/rootcause-clinical-reasoning-harness/github.svg)](https://agentmods.dev/skills/u9401066/rootcause-mcp/rootcause-clinical-reasoning-harness)
Your own site
<a href="https://agentmods.dev/skills/u9401066/rootcause-mcp/rootcause-clinical-reasoning-harness"><img src="https://agentmods.dev/badge/skills/u9401066/rootcause-mcp/rootcause-clinical-reasoning-harness/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for rootcause-clinical-reasoning-harness

Your own site · 80×15
<a href="https://agentmods.dev/skills/u9401066/rootcause-mcp/rootcause-clinical-reasoning-harness"><img src="https://agentmods.dev/badge/skills/u9401066/rootcause-mcp/rootcause-clinical-reasoning-harness.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 99 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,273 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00099 $0.02273
Opus 5 $0.00049 $0.01137
Sonnet 5 $0.00020 $0.00455
Haiku 4.5 $0.00010 $0.00227

Measured 11d ago against content hash a42dc2f752bb, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

rootcause-clinical-reasoning-harness scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/rootcause-clinical-reasoning-harness/SKILL.md · 62 lines

How it starts

The opening of the file, as written. The whole thing — 62 lines — stays where its author put it; the contents beside it link to each section on GitHub.

RootCause Clinical Reasoning Harness

Use RootCause MCP as an auditable reasoning ledger, not as an autonomous clinician. Keep observations, interpretations, hypotheses, and causal claims visibly separate.

Load the case contract

Read references/case-handoff.md before starting, resuming, handing off, or finalizing a case. Before writing case state, also read clinical://contracts/case-input-manifest and clinical://contracts/case-analysis-report; treat those live JSON Schemas as authoritative over copied examples.

Read references/clinician-ddx-discussion-zh-tw.md when expanding a differential or preparing clinician-facing Traditional Chinese output. It defines the bounded breadth, candidate-level reasoning, language, and quantification rules; do not load it for a code-only repository task.

Select the tool surface

  • Discover the advertised tools before acting; never call an unadvertised tool or facade action.
  • Prefer condensed for the 8-tool workflow facade or all for the complete 46-tool surface. Consult the mapping for discrete-only operations.
  • Treat clinical and rca as partial profiles. Hand off the same session_id and ledger to an agent/profile with the missing tools rather than silently skipping stages.
  • Reuse the handed-off session_id. Never create a second case because an intermediate tool returns no state.

Follow every stage in order

  1. Case/session — Start or resume one de-identified case. Record scope, analysis purpose, timezone, profile, and stable session ID.
  2. Multi-source manifest — Pass a schema-version 1.0 source_manifest to session creation. Register every supplied document with a stable ID, approved URI, whole-file SHA-256, media type, source kind, and extraction state before extracting findings.
  3. Source review — After extraction, append an authorized rc_adjudicate_source event for every registered source. Record processing status, de-identification, independence/group lineage, reviewer, and rationale without changing the pinned manifest identity or digest.
  4. Exact evidence and time — Add one atomic finding per evidence item with document ID, exact snippet, precise location, and a typed source-faithful temporal record. Only use kind=instant when the source includes an explicit offset; retain date, range, relative, or unknown without inventing order. Verify exact text when possible; retain UNVERIFIED otherwise.
  5. Differential expansion — Build the maximum reasonable mechanism-based DDx for the phenotype and time course. Choose a syndrome-appropriate framework and persist a PRIMARY breadth audit after reviewing every required framework cell; a final audit may retain REVIEWED_INSUFFICIENT_DATA with unknowns and typed discriminators but no NOT_ASSESSED. Three unique diagnoses, two non-UNKNOWN mechanisms, and one applicable must-not-miss diagnosis are deterministic finalization floors, not a clinical target or cap. Prune duplicate labels and candidates with no plausible mechanism or decision impact instead of producing an unbounded laundry list.
  6. Candidate disposition — For every active diagnosis, persist why it was considered, mechanism_category, diagnostic_role, reasoning_basis, qualitative certainty, source-linked support/refutation/neutral evidence, candidate-specific unknowns, and either genuine evidence or a typed discriminating test. A must-not-miss flag expresses safety priority, not likelihood. Use rc_select_leading_hypothesis with a reason and actor; never let numeric compatibility or array order choose the lead.
  7. Evidence testing — Link evidence using the direct applied LR. Use LR > 1 for support, LR < 1 for contradiction, and 1.0 when neutral or quantitatively unknown; neutral links do not count as support or refutation. A non-neutral LR requires both the target patient evidence and a distinct verified LITERATURE evidence record that preserves the quantitative source. Never invent or invert an LR or present an uncalibrated compatibility prior/posterior as clinical probability. When refuting evidence is pending, persist a typed planned_tests entry with purpose, expected supporting/refuting results, and PLANNED or ORDERED status.
  8. Uncertainty and bias — Treat unknowns as inputs: say which mechanisms remain open and what result would discriminate them. Keep source observation, host/clinical inference, and causal claim explicitly separate. Record concise rationale, missing data, competing explanations, disconfirming tests, and anchoring/confirmation/premature-closure risks. Do not emit hidden chain-of-thought or private scratch work.
  9. System RCA — Build Fishbone and Why structures. Persist an authorized HFACS review for every Fishbone cause as CONFIRMED with a recognized code or NOT_APPLICABLE without a code; suggestions and codes supplied while adding a cause remain unreviewed. Persist a causation-review attempt linked to every proposed root. Keep the Why/root/audit ID, exact description, and evidence ID set identical. The validator is a conservative proof-obligation audit, not clinical causal proof: omit REJECTED claims from the root-cause bucket, retain INSUFFICIENT_DATA only as PROPOSED, and label an audit pass AUDIT_OBLIGATIONS_PASSED even if a compatibility enum says VERIFIED.
  10. Readiness and review — Run conflict/readiness checks. Keep the case preliminary until named qualified humans review sources, HFACS dispositions, clinical safety, causal claims, and proposed actions. Manual evidence confirmation, source/HFACS adjudication, and finalization are valid only when the named reviewer is present in the operator-controlled ROOTCAUSE_AUTHORIZED_REVIEWERS allowlist; allowlist membership alone does not establish clinical qualification.
  11. Unified output — Produce the standardized handoff/report package in the reference. For the built-in clinician renderer, request Markdown with locale="zh-TW" and audience="clinician"; JSON/FHIR payload values and custom templates retain their original language. Preview before finalization, inspect machine-readable conformance_checks[], and identify every incomplete or unverified section. Finalization must recompute every hard check using the operator-supplied reviewer allowlist and include reviewer, timezone-aware time, and a recomputable content hash. The domain snapshot rejects nested mutation; the hash is integrity metadata, not durable WORM storage.

Read the full file on GitHub · 62 lines

Files

What ships with it

2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 11d ago First seen · 62 lines · 99 tokens per session scan A a42dc2f752bb

Subscribe to this mod's changes

rootcause-clinical-reasoning-harness is a skill published in the GitHub repository u9401066/rootcause-mcp (0 stars, last pushed 9d ago), licensed Apache-2.0. It adds 99 tokens to every session and 2,273 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

assembling-fhir-bundles

Package multiple FHIR R4 resources produced from OpenMed output into a single valid transaction Bundle ready to POST to an EHR, using OpenMed's verified bundle assembler openmed.clinical.exporters.fhir.tobundle. Covers deterministic urn:uuid fullUrls, automatic in-Bundle reference rewriting, request blocks…

maziyarpanahi/openmed · 131 tokens

auditing-part11-trails

Generates and verifies 21 CFR Part 11-style audit trails — who/what/when, electronic signatures, and tamper-evidence — for OpenMed pipelines in GxP and clinical-trial (GCP) settings. Use when the user runs OpenMed in a regulated/validated environment and needs an attributable, time-stamped, tamper-evident record of…

maziyarpanahi/openmed · 222 tokens

batch-processing-clinical-text

Run large-scale batch NER, PII extraction, or de-identification over many clinical notes on-device with OpenMed, with sharding, checkpointing, resumability, and append-only JSONL output. Use when the user needs to process a corpus or folder of notes, de-identify a dataset, run NER over thousands of documents, build a…

maziyarpanahi/openmed · 161 tokens

coding-hcc-risk-adjustment

Maps chronic conditions extracted by OpenMed to CMS-HCC V28 risk-adjustment categories and estimates a RAF (Risk Adjustment Factor) score as decision support. Use when the user wants to surface risk-adjustable diagnoses from notes, map ICD-10-CM codes to HCC categories, estimate or reconcile a patient/panel RAF, find…

maziyarpanahi/openmed · 200 tokens

detecting-pv-signals

Computes disproportionality signals — PRR, ROR, EBGM, and IC (BCPNN) — over FAERS / OpenFDA drug-event data to flag potential safety signals. Use when the user wants to mine spontaneous-report data for drug-reaction associations, build a 2x2 contingency table, compute a Proportional Reporting Ratio or Reporting Odds…

maziyarpanahi/openmed · 218 tokens

exporting-to-fhir

Convert OpenMed NER output (entities from openmed.analyzetext) into FHIR R4 resources — Condition, MedicationStatement, Observation — using OpenMed's built-in FHIR R4 export helpers in openmed.clinical.exporters. Covers the verified CodeableConcept builder (coding, codeableconcept, systemuri), deterministic fullUrl…

maziyarpanahi/openmed · 163 tokens