mcpField
K
Knowledge Graph & Causal Discovery

Knowledge Graph & Causal Discovery

リモート
ryanclinton--knowledge-graph-causal-discovery-mcp.apify.actorメモリ・ナレッジ032 週間前に更新

Knowledge Graph & Causal Discovery について

Knowledge Graph & Causal Discoveryは、研究者やデータサイエンティスト、AIエージェント向けのMCPサーバーで、複数分野の研究データから因果構造を分析します。公開データを統合し、専門的な因果推論ツールで根拠付きの構造化結果を返します。

主な機能

  1. 01複数分野の因果ナレッジグラフ構築
  2. 02有向因果構造の発見
  3. 03介入効果と処置効果の推定
  4. 04反事実のシミュレーション
  5. 05文献中の主張の抽出と分類

活用シーン

  1. 01医薬品の安全性シグナルの特定
  2. 02政策が経済指標に与える影響の評価
  3. 03研究論文の因果的主張の統合
  4. 04責任問題における反事実の評価

MCP 対応

MCPクライアントに8種類の因果推論ツールを公開し、スコアと根拠を含む構造化JSONを返します。クライアントはApify APIトークンを使ってリモートエンドポイントに接続します。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://ryanclinton--knowledge-graph-causal-discovery-mcp.apify.actor/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

ナレッジグラフ因果発見 MCP サーバー

ApifyForge で見る | Apify Store で使う


クイックスタート

MCP クライアント(Claude Desktop、Cursor、Windsurf)に追加します:

{
  "mcpServers": {
    "knowledge-graph-causal-discovery-mcp": {
      "url": "https://ryanclinton--knowledge-graph-causal-discovery-mcp.apify.actor/mcp"
    }
  }
}

複数分野の研究データを対象とするナレッジグラフの因果発見を、単一の Model Context Protocol インターフェースを通じて提供します。この MCP サーバーは、相関関係を超えて、公開された文献や公開データセットから有向因果構造を発見し、処置効果を推定し、反事実について推論する必要がある研究者、データサイエンティスト、AI エージェント向けに構築されています。

このサーバーは、学術、生物医学、規制、経済、安全の5つのソース領域で17の Apify アクターを並列にオーケストレーションし、結果を統合された因果ナレッジグラフにまとめます。その後、8つの専門ツールが、FCI スケルトン学習、BIC スコアリングによる GES、ID アルゴリズムを使った Pearl の do 計算、双子ネットワークによる反事実、TMLE 推定、RotatE ナレッジグラフ埋め込み、層コホモロジー整合性チェック、Shapley ソース帰属といった厳密な因果推論アルゴリズムを適用します。各ツール呼び出しは、数学的スコアと裏付けとなる証拠を含む構造化 JSON を返します。

⬇️ アクセスできるデータ

データ項目ソース対象範囲
📄 学術論文と引用OpenAlex, Semantic Scholar, Crossref引用グラフを含む2億5,000万件以上の学術研究成果
📑 プレプリントとオープンアクセスarXiv, CORE物理学、コンピューターサイエンス、定量生物学、数学
🧬 生物医学文献PubMedMeSH インデックス付きの3,600万件以上の引用
🏥 臨床試験ClinicalTrials.govプロトコルデータを含む45万件以上の登録済み研究
💊 医薬品の有害事象報告OpenFDAFDA FAERS ファーマコビジランスデータベース
🔬 NIH 研究助成金NIH Reporter現在および過去に資金提供を受けたプロジェクト
📜 連邦規制Federal Register米国の規制措置と規則案
🏛️ 議会の立法Congress.gov法案、決議、修正案
🗂️ 政府データセットData.gov30万件以上の連邦オープンデータ資産
📈 経済時系列データFRED連邦準備制度の GDP、インフレ、雇用データ
🌍 世界開発指標World Bank200か国以上の開発指標
⚠️ 製品リコール通知CPSC消費者製品安全リコールデータベース
💬 消費者からの苦情CFPB消費者金融保護に関する苦情記録
📖 百科事典の背景情報Wikipedia背景知識と概念の曖昧さの解消

Knowledge Graph Causal Discovery MCP を使う理由

因果推論パイプラインをゼロから構築するには、十数ものデータソースを統合し、グラフ構築ロジックを実装し、30年にわたる学術文献にまたがるアルゴリズムをコード化する必要があります。一般的な研究チームが1週間かけて取り組んでも、最終的に対応できるのはせいぜい2、3のデータ領域です。

この MCP サーバーは、17のデータソースを対象に、査読済みの因果アルゴリズムを10種類適用し、数秒で構造化された結果を返します。Claude、Cursor、Windsurf、または MCP 対応 AI クライアントから直接利用できます。

  • 常に最新のデータ — すべてのツール呼び出しでソース API から最新の結果を取得します。古いスナップショットやキャッシュ済みインデックスは使用しません
  • 並列実行 — クエリごとに最大17のアクターを順次ではなく同時に実行するため、応答時間は各ソースの処理時間の合計ではなく、最も遅いソースの処理時間に左右されます
  • スタンバイモード — 呼び出しの合間もサーバーが起動状態を保つため、対話型の調査セッションでコールドスタートの遅延を解消します
  • 従量課金 — 月額サブスクリプションは不要です。各ツールの料金は0.035~0.050ドルで、8つのツールをすべて使うパイプラインでも0.35ドル未満です
  • MCP ネイティブ — Claude Desktop、Cursor、Windsurf、Cline、および Model Context Protocol に対応するすべてのクライアントで動作します

⬆️ MCP ツール

ツール価格アルゴリズム最適な用途
discover_causal_structure$0.045FCI + GES + 加法ノイズモデル観察データから初期の因果グラフ構造を推定
compute_interventional_effects$0.050Pearl の do 計算 + ID アルゴリズム + Balke-Pearl LP政策評価、治療計画、介入設計
simulate_counterfactuals$0.045双子ネットワーク法 + Tian-Pearl 境界「もしも」の分析、法的因果関係、必要性/十分性
extract_causal_claims_literature$0.035NLP パターンマッチング + エビデンス分類システマティックレビュー、エビデンスの統合、主張の監査
embed_causal_knowledge_graph$0.040RotatE 複素数値埋め込みリンク予測、エンティティの類似性、経路の発見
estimate_causal_effect_tmle$0.050TMLE + Super Learner アンサンブル + 影響関数 CI二重頑健な CI を用いたセミパラメトリック ATE 推定
check_graph_consistency$0.035層コホモロジー H¹(G,F)因果仮定の検証、識別可能性の確認
attribute_source_contribution$0.040シャープレイ値 + ニュークリオラス + コア安定性データソースの優先順位付け、予算配分

ナレッジグラフによる因果発見のユースケース

医薬品安全性シグナルの検出

ファーマコビジランスチームは、PubMed の生物医学文献、ClinicalTrials.gov のアウトカムデータ、FDA の有害事象報告を単一の因果グラフに統合します。discover_causal_structure ツールは、化合物と有害なアウトカムの間の有向エッジを特定します。compute_interventional_effects ツールは、NIH の助成金データと OpenAlex の引用情報から得た交絡因子についてバックドア調整を行い、P(有害事象 | do(医薬品を処方)) を推定します。

政策の影響評価

政策アナリストは、Federal Register の規則、FRED の経済時系列データ、World Bank の開発指標を組み合わせ、規制介入が経済的アウトカムに及ぼす因果効果を推定します。estimate_causal_effect_tmle ツールは、Super Learner を用いた TMLE を適用し、介入関数による 95% 信頼区間を伴う、二重頑健な平均処置効果の推定値を算出します。これにより、単純な介入前後の比較を超えた分析が可能になります。

システマティックレビューとエビデンスの統合

文献レビュー担当者は、extract_causal_claims_literature を使用して、OpenAlex、Semantic Scholar、Crossref、arXiv、CORE にまたがる数千件の学術論文を一度にスキャンします。主張は強度(強/中/弱/相関)とエビデンスレベル(RCT/観察研究/ケーススタディ/レビュー)で分類されます。情報源間で相反する主張には自動的にフラグが付けられ、数週間に及ぶ手作業でのスクリーニングに代わります。

法的・規制上の因果関係における反事実的推論

製造物責任や医薬品による被害の事案で因果関係を評価する法務チームや規制当局は、simulate_counterfactuals を使用して、双子ネットワーク法により必要性の確率(PN = P(Y_x'=0 | X=x, Y=y))と十分性の確率(PS = P(Y_x=1 | X=x', Y=0))を計算します。反事実確率を制約するため、Tian-Pearl の単調性境界も検証されます。

生物医学 AI におけるナレッジグラフの補完

AI 研究チームは、embed_causal_knowledge_graph を使用して RotatE の複素数値エンティティ埋め込みを生成します。この方式では、関係は複素空間における絶対値 1 の回転(t = h · r, |r_i| = 1)として表されます。MRR と Hits@10 のリンク予測指標により、欠落している医薬品と疾患、または遺伝子と経路のエッジを特定します。マージン gamma を用いた自己敵対的負例サンプリングにより、グラフが疎な領域でも高品質な埋め込みを実現します。

データ取得の優先順位付け

予算が限られているリサーチ運用チームは、attribute_source_contributionを使用して、各データドメイン(学術、生物医学、規制、経済、安全性)のシャープレイ値を計算します。シャープレイ配分 phi_i は、すべての部分集合にわたる因果グラフの品質に対する各ソースの限界貢献度を定量化します。データサブスクリプションを契約する前に、核の計算とコアの非空性チェックによって、配分の安定性を確認します。

この MCP サーバーへの接続方法

Claude Desktop

claude_desktop_config.jsonに追加します:

{
  "mcpServers": {
    "knowledge-graph-causal-discovery": {
      "url": "https://knowledge-graph-causal-discovery-mcp.apify.actor/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_APIFY_TOKEN"
      }
    }
  }
}
Cursor / Windsurf / Cline

エディターの MCP 設定パネルに MCP エンドポイントを追加します:

  • エンドポイント URL:https://knowledge-graph-causal-discovery-mcp.apify.actor/mcp
  • 認証:Apify API トークンを使用したベアラートークン
Python(MCP クライアント)
import anthropic

client = anthropic.Anthropic()

# The MCP server exposes 8 tools — ask Claude to use them
response = client.messages.create(
    model="claude-opus-4-5",
    max_tokens=4096,
    tools=[{
        "type": "custom",
        "name": "discover_causal_structure",
        # Claude resolves this via the connected MCP server
    }],
    messages=[{
        "role": "user",
        "content": "Discover the causal structure linking smoking exposure to lung cancer outcomes using academic and biomedical sources."
    }],
    mcp_servers=[{
        "url": "https://knowledge-graph-causal-discovery-mcp.apify.actor/mcp",
        "authorization_token": "YOUR_APIFY_TOKEN"
    }]
)
print(response.content)
cURL による直接接続
# Discover causal structure
curl -X POST "https://knowledge-graph-causal-discovery-mcp.apify.actor/mcp" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_APIFY_TOKEN" \
  -d '{
    "jsonrpc": "2.0",
    "method": "tools/call",
    "params": {
      "name": "discover_causal_structure",
      "arguments": {
        "query": "smoking lung cancer mortality",
        "sources": ["academic", "biomedical"]
      }
    },
    "id": 1
  }'

# Estimate treatment effect via TMLE
curl -X POST "https://knowledge-graph-causal-discovery-mcp.apify.actor/mcp" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_APIFY_TOKEN" \
  -d '{
    "jsonrpc": "2.0",
    "method": "tools/call",
    "params": {
      "name": "estimate_causal_effect_tmle",
      "arguments": {
        "query": "statin therapy cardiovascular mortality reduction",
        "sources": ["academic", "biomedical", "regulatory"]
      }
    },
    "id": 2
  }'

ツールリファレンス

discover_causal_structure

3つのアルゴリズムを組み合わせて、観測データから因果グラフ構造を発見します:

  1. FCI(高速因果推論) — カーネル条件付き独立性(KCI)検定による制約ベースの骨格発見で、潜在交絡因子に対応します。隠れた共通原因を表す双方向エッジを含む CPDAG(完成部分有向非巡回グラフ)を構築します。
  2. GES(貪欲同値探索) — BIC(ベイズ情報量基準)を使用したスコアベースの改良により、マルコフ同値類を探索します。BIC = log(likelihood) − (k/2) · log(N) で、k は自由パラメーター数です。
  3. 加法ノイズモデル — 残差と原因の間の HSIC(ヒルベルト・シュミット独立性基準)によってエッジの向きを決定します。HSIC(e, X) < HSIC(e, Y) の場合、モデルは X → Y の向きを設定します。

戻り値:有向エッジと双方向エッジ、マルコフ同値類のサイズ、BIC スコア、各エッジの p 値。

料金:1回あたり $0.045。academic と biomedical のソースについて、最大10件のアクターを呼び出します。


compute_interventional_effects

パールの do 計算を用いて、P(Y | do(X)) — X への介入下における Y の分布 — を計算します:

  • ルール1 — 観測の挿入/削除
  • ルール2 — 行為と観測の交換
  • ルール3 — 行為の挿入/削除
  • ID アルゴリズム — 半マルコフモデルにおける介入クエリの識別可能性を体系的に検定
  • バックドア基準 — 観測された交絡因子を調整
  • フロントドア基準 — 交絡因子が観測されない場合に、媒介変数を通じて調整
  • バルケ・パール LP 境界 — do 計算では識別できない効果について、観測可能な分布による制約を用いて線形計画法で境界を算出

戻り値:調整集合を含む do 効果、識別可能性フラグ、LP 境界区間。

料金:1回あたり $0.050。


simulate_counterfactuals

構造的ツインネットワーク法を用いて、反実仮想の結果をシミュレーションします:

  • 事実世界(X=x、Y=y を観測)と反実仮想世界(X=x' に介入)を構築します
  • 両方の世界は同じ外生変数 U を共有します(これがツインネットワークの主要な特性です)
  • 必要性確率(PN)を計算します:P(Y_{x'}=0 | X=x, Y=y)
  • 十分性確率(PS)を計算します:P(Y_x=1 | X=x', Y=0)
  • ティアン・パールの単調性境界を検証します:PN ≤ P(Y=y|X=x)、PS ≤ P(Y=0|X=x')

戻り値:結果ペアごとの PN と PS、ツインネットワークのサイズ、単調性チェックの結果。

料金:1回あたり $0.045。


extract_causal_claims_literature

NLP のパターンマッチングを用いて、学術文献から因果関係の主張を抽出し、分類します。

  • 主張の強さの分類:動詞とヘッジ表現のパターンに基づき、強/中程度/弱/相関的に分類します
  • エビデンスレベルの分類:タイトルと要旨に含まれる研究デザインのシグナルに基づき、RCT/観察研究/ケーススタディ/レビューに分類します
  • 矛盾の検出:同じ原因と結果の組み合わせについて、相反する主張を行う情報源のペアにフラグを付けます

選択した情報源に応じて、OpenAlex、Semantic Scholar、Crossref、arXiv、CORE(学術系)、PubMed、ClinicalTrials.gov、NIH Grants、OpenFDA(生物医学系)を利用します。

返却内容:引用情報付きの分類済み主張リスト、強さとエビデンスレベル別の件数、矛盾する主張のペア。

料金:1 回の呼び出しにつき $0.035。


embed_causal_knowledge_graph

複素数値の知識グラフ埋め込みモデルである RotatE を使用して、因果ナレッジグラフを埋め込みます。

  • 関係は複素空間での回転です:各成分が |r_i| = 1(単位法制約)を満たす t = h · r
  • スコア関数:f(h, r, t) = −||h · r − t||(複素残差の L1 ノルム)
  • 自己敵対的負例サンプリング — 現在のスコアに比例する確率で負のトリプルをサンプリングし、ソフトマックス温度で重み付けします
  • マージン γ を用いた損失により、正のトリプルと負のトリプルのスコアを分離します
  • エンティティ埋め込みのノルムに対する k-means によるクラスタ割り当て

返却内容:ノルムと最近傍を含むエンティティ埋め込み、MRR(平均逆順位)、Hits@10、クラスタラベル、位相範囲。

料金:1 回の呼び出しにつき $0.040。


estimate_causal_effect_tmle

セミパラメトリック効率性のパイプラインに従い、TMLE(Targeted Maximum Likelihood Estimation)によって平均処置効果を推定します。

  1. 初期推定値 Super Learner アンサンブル(交差検証による学習器の重み付き組み合わせ)を用いた Q⁰(A, W)
  2. 傾向スコア g(A | W)。処置がほぼ決定論的になるのを防ぐため、[0.01, 0.99] で陽性を打ち切ります
  3. クレバー共変量 H(A, W) = A/g(1|W) − (1−A)/g(0|W)
  4. ターゲティングステップ — H を指標とするロジスティックモデルの MLE によりイプシロンを適合し、Q⁰ を更新します
  5. 更新後の推定値 Q*(A, W) = expit(logit(Q⁰) + epsilon · H)
  6. ATE = E[Q*(1, W)] − E[Q*(0, W)](ターゲティング後の適合値によるプラグイン推定量)
  7. 影響関数 IC(O) による 95% Wald 信頼区間:ATE ± 1.96 · SE(IC)

返却内容:処置とアウトカムのペアごとの ATE、標準誤差、95% 信頼区間、影響関数ノルム、交差検証リスク、Super Learner の重み。

料金:1 回の呼び出しにつき $0.050。


check_graph_consistency

グラフ構造上の層コホモロジーを用いて、因果グラフの整合性を確認します。

  • グラフ G 上の層 F は、頂点にベクトル空間 F(v)、辺に線形写像 F(e) を割り当てます
  • コバウンダリー作用素:(δ₀s)(e) = F(e)(s(v)) − s(w) により、局所切断の不一致を測定します
  • H¹(G, F) = ker(δ₁) / im(δ₀) — 第 1 コホモロジー群の次元により、大域的整合性を妨げる障害を測定します
  • 個別のチェック:非巡回性(有向サイクルがないこと)、忠実性(余計な独立性がないこと)、因果的十分性(隠れた共通原因がないこと)、操作変数の妥当性(除外制約)、陽性(処置の重なり)、マルコフ適合性(観測された独立性がグラフと一致すること)

返却内容:各チェックの合否と違反件数、H¹ コホモロジー次元、大域切断の存在フラグ。

料金:1 回の呼び出しにつき $0.035。


attribute_source_contribution

協力ゲーム理論を用いて、各データソースが因果グラフの品質にどれだけ貢献するかを評価します。

  • 各データ領域(学術、生物医学、規制、経済、安全性)が連合ゲームのプレイヤーとなります
  • 価値関数 v(S) = 連合 S のソースのみを使った因果グラフの品質(ノード数 · エッジ密度 · エッジの平均重み)
  • シャープレイ値 phi_i = Σ_S [|S|!(n−|S|−1)!/n!] · [v(S ∪ {i}) − v(S)] — 公正な限界貢献度
  • ニュークリオラス — 最大超過を辞書式に最小化し、最も安定した利得配分を求めます
  • コア非空性チェック — シャープレイ値による配分が、すべての連合による逸脱に対して安定しているかを検証します

連合全体の空間にわたって有意義な貢献度を評価するには、5 つすべてのソースカテゴリを使用するのが最適です。

戻り値:ソースごとのシャープレイ値、限界貢献度、ニュークリオラスによる配分、コアの安定性フラグ。

価格:1 回の呼び出しにつき $0.040。

出力例

discover_causal_structure — 喫煙と肺がん
{
  "nodeCount": 94,
  "edgeCount": 187,
  "relations": [
    {
      "cause": "Cigarette smoking and lung adenocarcinoma risk: a pooled analysis",
      "effect": "Lung cancer incidence in never-smokers vs. ever-smokers cohort",
      "edgeType": "causes",
      "strength": 0.74,
      "pValue": 0.003,
      "method": "FCI-KCI"
    },
    {
      "cause": "KRAS mutation frequency in tobacco-exposed lung tissue",
      "effect": "Non-small-cell lung carcinoma progression",
      "edgeType": "causes",
      "strength": 0.61,
      "pValue": 0.011,
      "method": "GES-BIC"
    },
    {
      "cause": "Secondhand smoke exposure biomarker cotinine",
      "effect": "Lung cancer incidence in never-smokers vs. ever-smokers cohort",
      "edgeType": "bidirectional",
      "strength": 0.43,
      "pValue": 0.048,
      "method": "additive-noise-HSIC"
    }
  ],
  "totalEdges": 187,
  "directedEdges": 141,
  "bidirectionalEdges": 46,
  "markovEquivalenceSize": 12,
  "bicScore": -4823.7
}
estimate_causal_effect_tmle — スタチン療法と心血管死亡率
{
  "nodeCount": 112,
  "estimates": [
    {
      "treatment": "High-intensity statin therapy (atorvastatin 40-80mg)",
      "outcome": "Major adverse cardiovascular events at 5 years",
      "ate": -0.082,
      "standardError": 0.019,
      "confidenceInterval": [-0.119, -0.045],
      "influenceFunctionNorm": 0.041
    },
    {
      "treatment": "High-intensity statin therapy (atorvastatin 40-80mg)",
      "outcome": "All-cause mortality",
      "ate": -0.031,
      "standardError": 0.014,
      "confidenceInterval": [-0.058, -0.004],
      "influenceFunctionNorm": 0.028
    }
  ],
  "significantCount": 2,
  "averageATE": -0.056,
  "crossValidatedRisk": 0.113,
  "superLearnerWeights": {
    "logistic": 0.34,
    "randomForest": 0.41,
    "xgboost": 0.25
  }
}
simulate_counterfactuals — 治療の必要性と十分性
{
  "nodeCount": 87,
  "outcomes": [
    {
      "factual": "Patient received antihypertensive therapy (X=1), experienced stroke (Y=1)",
      "counterfactual": "Patient did not receive antihypertensive therapy (X=0)",
      "factualValue": 1.0,
      "counterfactualValue": 0.0,
      "probabilityOfNecessity": 0.71,
      "probabilityOfSufficiency": 0.38
    }
  ],
  "twinNetworkSize": 174,
  "averagePN": 0.71,
  "averagePS": 0.38,
  "monotonicityHolds": true
}
check_graph_consistency — 因果的仮定の検証
{
  "nodeCount": 94,
  "edgeCount": 187,
  "checks": [
    { "check": "acyclicity", "passed": true, "violationCount": 0, "details": "No directed cycles detected" },
    { "check": "faithfulness", "passed": true, "violationCount": 2, "details": "2 near-cancelling paths detected" },
    { "check": "causal_sufficiency", "passed": false, "violationCount": 7, "details": "7 bidirectional edges suggest latent confounders" },
    { "check": "instrument_validity", "passed": true, "violationCount": 0, "details": "NIH grant instruments satisfy exclusion restriction" },
    { "check": "positivity", "passed": true, "violationCount": 0, "details": "Propensity scores in [0.04, 0.96]" },
    { "check": "markov_compatibility", "passed": true, "violationCount": 1, "details": "1 d-separation violation" }
  ],
  "totalChecks": 6,
  "passedChecks": 5,
  "sheafCohomologyDim": 3,
  "globalSectionExists": false
}

Knowledge Graph Causal Discovery MCP の利用料金はいくらですか?

この MCP はイベントごとの従量課金制で、ツールを呼び出したときにのみ料金が発生します。プラットフォームのコンピューティング料金も含まれます。

ツール1 回あたりの料金10 回50 回
discover_causal_structure$0.045$0.45$2.25
compute_interventional_effects$0.050$0.50$2.50
simulate_counterfactuals$0.045$0.45$2.25
extract_causal_claims_literature$0.035$0.35$1.75
embed_causal_knowledge_graph$0.040$0.40$2.00
estimate_causal_effect_tmle$0.050$0.50$2.50
check_graph_consistency$0.035$0.35$1.75
attribute_source_contribution$0.040$0.40$2.00

クエリあたりの 8 ツール完全パイプライン:$0.34。因果発見パイプライン全体を毎日 1 か月実行した場合の費用は、約 $10 です。

Apify の無料プランには、毎月 $5 分のプラットフォームクレジットが含まれており、完全なパイプラインを約 14 回、無料で実行できます。

予期しない請求を防ぐため、Apify アカウントでセッションごとの最大利用額を設定できます。イベントの上限に達すると、MCP サーバーは課金を停止し、エラーメッセージを返します。

Knowledge Graph Causal Discovery MCP の仕組み

フェーズ 1 — データの並列取り込み

ツールが呼び出されると、サーバーは要求されたソースカテゴリ(academic、biomedical、regulatory、economic、safety)を特定し、最大 17 件のアクター呼び出しリストを作成します。

  • 学術(6 アクター):OpenAlex(30 件)、Semantic Scholar(30 件)、Crossref(20 件)、arXiv(20 件)、CORE(20 件)、Wikipedia(15 件)
  • 生物医学(4 アクター):PubMed(30 件)、ClinicalTrials.gov(20 件)、NIH Grants(15 件)、OpenFDA(20 件)
  • 規制(3 アクター):Federal Register(20 件)、Congress Bills(15 件)、Data.gov(15 件)
  • 経済(2 アクター):FRED(20 件)、World Bank(15 件)
  • 安全性(2 アクター):CPSC Recalls(15 件)、CFPB Complaints(15 件)

すべてのアクターは Promise.all を使って並列に実行され、逐次実行ではありません。各アクターには 180 秒のタイムアウトが設定されています。アクターが失敗した場合は、リクエスト全体を失敗させるのではなく空の配列を返すため、常に部分的な結果が返されます。

フェーズ 2 — 因果グラフの構築

すべてのアクターの結果を統合し、型付き因果グラフ(CausalGraph)を構築します。ノードはドメインのシグナルに基づいて分類されます。

  • "trial"、"treatment"、"therapy"、または "drug" を含む生物医学的な結果 → intervention ノード
  • その他の生物医学的な結果 → outcome ノード
  • Wikipedia の記事 → confounder ノード(背景知識)
  • NIH の助成金 → instrument ノード(操作変数としての資金提供)
  • 臨床試験の記録 → intervention ノード
  • 規制関連および経済関連の結果 → それぞれ confounder ノードと variable ノード

エッジはドメインのヒューリスティックに基づいて構築されます。介入は因果重みを付けてアウトカムに接続し、交絡因子は介入とアウトカムの両方に接続します。操作変数は、その介入対象に接続します。変数間のエッジは加法ノイズモデルによって向き付けられます。HSIC(residual, X) と HSIC(residual, Y) を比較して方向を決定します。

フェーズ 3 — アルゴリズムの適用

要求されたアルゴリズムを、構築したグラフに適用します。

  • FCI は KCI 検定からスケルトンを構築し、その後、V 構造の向き付けルールと Meek の伝播ルールを適用して CPDAG を生成します。GES は BIC スコアに基づく前進・後退・反転フェーズで精緻化します。加法ノイズモデルは HSIC を用いて、向きが未確定の残りのエッジを解決します。
  • Do-calculus はルール 1~3 を反復適用し、グラフのトポロジーに照らしてバックドア基準とフロントドア基準を検定します。ID アルゴリズムが識別可能性を判定します。識別不能な効果については、Balke-Pearl LP 境界を計算します。
  • Twin network はグラフを複製し、共有する外生ノードを接続した後、両方のコピーに構造方程式を伝播させて PN と PS を計算します。
  • TMLE は Super Learner を用いて Q⁰ を初期化し、切り詰めを行って傾向スコアを推定し、賢い共変量 H を構築し、ロジスティック回帰でイプシロンを適合させ、ターゲット化された Q* から ATE を計算します。
  • RotatE はエンティティ埋め込みを初期化し、自己敵対的負例サンプリングによる単位絶対値の回転更新を適用して、MRR と Hits@10 を報告します。
  • Sheaf cohomology はグラフの接続構造から余境界行列 δ₀ と δ₁ を構築し、ker(δ₁)/im(δ₀) を計算して、違反を特定の因果的仮定の失敗に対応付けます。
  • Shapley はソース連合の 2^n 個すべての部分集合を列挙し、それぞれのグラフ品質を計算して、Shapley の公式を適用します。Nucleolus は辞書式ミニマックス超過最適化によって求めます。
フェーズ 4 — 構造化された応答

結果は JSON にシリアライズされ、MCP プロトコルを介して返されます。すべての応答には、構築したグラフの nodeCount と edgeCount に加え、アルゴリズム固有のメトリクスが含まれます。

最良の結果を得るためのヒント

  1. 介入ツールを使う前に、discover_causal_structure を実行してください。 FCI/GES による構造の出力から、do-calculus で有効な調整セットが分かります。グラフ構造を把握せずに compute_interventional_effects を実行すると、交絡因子の調整を誤るリスクがあります。

  2. academic と biomedical のソースをベースラインとして使用してください。 この2つのカテゴリでは10のアクターが起動し、最も豊富なエビデンスベースがカバーされます。政策に関する質問では regulatory を、マクロ経済分析では economic を、製品による被害や金融上の不正行為に関する質問では safety を追加してください。

  3. 反事実や法的因果関係を扱う場合は、まず check_graph_consistency を実行してください。 シーフコホモロジーによる検証で、グラフが因果的十分性と操作変数の妥当性を満たしているかを確認できます。この2つは、妥当な PN/PS 推定値を得るために simulate_counterfactuals が前提とする仮定です。

  4. 有意義なシャープレイ値を得るには、5つすべてのソースを指定して attribute_source_contribution を実行してください。 ソースが3つ未満の場合、連合ゲームの部分集合が少なすぎるため、安定した限界貢献度を算出できません。ヌクレオラスの計算には、少なくとも3つの有効なプレイヤーが必要です。

  5. システマティックレビューでは、academic と biomedical を指定した extract_causal_claims_literature が、1回あたり $0.035 で最も費用対効果の高い入口です。 返された相反する主張のペアを使って、どの関係について、より詳しい構造の発見や TMLE 推定が必要かを特定してください。

  6. 最良のグラフを構築するには、クエリを領域と変数のペアとして表現してください。「does smoking cause cancer?」ではなく、「smoking lung cancer」とします。 グラフビルダーは検索結果のタイトルから因果ノードを特定するため、具体的なエンティティ名を使うとノードをより明確に分類できます。

  7. 希少なトピックやニッチなトピックでは、academic を追加し、学術ソースをすべて選択して arXiv/CORE を含めてください。 変化の速い研究分野では、プレプリントサーバーに、索引化された学術誌よりも早い因果関係のエビデンスが掲載されていることがよくあります。

  8. 包括的な因果分析を行うには、ツールをパイプラインで組み合わせてください:discover_causal_structure → check_graph_consistency → compute_interventional_effects → estimate_causal_effect_tmle。パイプライン全体の費用は、分析1回あたり $0.18 です。

他の Apify MCP サーバーとの組み合わせ

MCP サーバー組み合わせ方
ryanclinton/market-microstructure-manipulation-mcp因果構造の出力を市場マイクロストラクチャー分析に入力します。この MCP のグレンジャー因果性は、ここでのパール流 do-calculus を補完します
ryanclinton/litigation-intelligence-mcp反事実の PN/PS スコアを訴訟前のリスクスコアリングへの入力として使用します。必要因果確率は、法的に重要な基準です
ryanclinton/open-source-supply-chain-risk-mcp因果構造の発見を使って、どの OSS 依存関係が脆弱性を因果的に伝播させているか、またどれが単に相関しているかを特定します
ryanclinton/esg-risk-assessment-mcp規制に関する因果グラフを ESG リスクスコアリングと組み合わせ、因果的な規制エクスポージャーと業界内の相関による影響を区別します
ryanclinton/drug-pipeline-intelligence-mcpTMLE による治療効果の推定値を創薬パイプライン分析に入力し、試験データを観察データに基づく因果エビデンスで補完します

制限事項

  • 一次データにはアクセスできません。 このサーバーは公開された文献、臨床試験登録情報、政府データベースを分析します。患者単位の生データ、非公開のバイオバンク記録、購読料が必要な学術誌のコンテンツにはアクセスしません。
  • グラフの構築には、正解データに基づくオントロジーマッピングではなく、ヒューリスティックなノード分類を使用します。 ノードの種類(介入、アウトカム、交絡因子)はタイトルのテキストパターンから推定されるため、曖昧なエンティティが誤分類される場合があります。
  • 因果アルゴリズムは、元の数値データではなく、構築された代理グラフを対象に動作します。 FCI、GES、TMLE などのアルゴリズムは、一次観測データからの推定値ではなく、グラフ構造に合わせて較正された相対的な推定値を出力します。
  • TMLE が意味のある Super Learner の推定値を出力するには、十分なノード密度が必要です。 20 ノード未満の結果を返すクエリでは、信頼区間が広くなる場合があります。
  • RotatE の埋め込みは呼び出しごとに新規初期化されます。繰り返しのクエリによって時間とともに改善される、永続的なナレッジグラフはありません。埋め込みの品質はノード数に応じて向上し、疎なグラフでは MRR が低くなります。
  • シーフコホモロジーの結果は、双方向エッジの出現率に左右されます。 隠れた交絡因子を示すエッジが多いグラフ(観察研究の文献ではよく見られます)では、十分に研究された分野であっても H¹ 次元が正になります。
  • ソースが常に利用可能とは限りません。 17 個すべての上流アクターが、公開 API にリアルタイムでアクセスします。ソース側で停止、レート制限、一時的な API 変更が発生すると、エラーではなく空の配列が返されます。その結果、グラフ密度は低下しますが、リクエスト自体は失敗しません。
  • 規制および経済関連のソースは米国中心です。 Federal Register、Congress Bills、FRED、CPSC は米国の機関を対象としています。国際的な規制の因果分析には、世界規模をカバーする academic および biomedical ソースを利用してください。

インテグレーション

  • Apify API — Apify Actor API を使用して、Python、JavaScript、または任意の HTTP クライアントからプログラムで MCP サーバーを呼び出します。
  • Webhooks — 因果分析の完了時に、後続のワークフロー(Slack アラート、データベースへの書き込み、レポート生成)をトリガーします。
  • Zapier — コードを使わずに、因果関係の発見結果を Google Sheets、HubSpot、Notion、その他 6,000 を超える Zapier アプリに接続します。
  • Make — 因果関係の発見に、データエンリッチメント、通知、CRM の更新を連鎖させる複数ステップの自動化シナリオを構築します。
  • LangChain / LlamaIndex — MCP サーバーを、RAG パイプラインや自律型エージェントフレームワーク内の因果推論ツールとして使用します。

❓ よくある質問

1 回の因果関係発見クエリでは、いくつのデータソースにアクセスしますか? 選択したソースカテゴリに応じて、最大 17 個のアクターが並行して実行されます。academic カテゴリでは 6 個のアクター(OpenAlex、Semantic Scholar、Crossref、arXiv、CORE、Wikipedia)が実行されます。biomedical では 4 個(PubMed、ClinicalTrials.gov、NIH Grants、OpenFDA)、regulatory では 3 個、economic では 2 個、safety では 2 個が実行されます。5 つすべてのカテゴリを選択すると、17 個すべてのアクターが同時に実行されます。

一般的な文献レビュー用ツールや RAG パイプラインとは、どのように異なりますか? 一般的な文献レビュー用ツールは、順位付けされた文書を返します。このサーバーは、それらの文書から型付き因果グラフを構築し、形式的な因果推論アルゴリズム(FCI、do 計算、双子ネットワーク、TMLE)を適用して、単なる関連性ではなく、方向性を持つ因果関係を抽出します。出力されるのは、検索されたテキストではなく、数学的な因果構造です。

返されるデータはどのくらい新しいですか? すべてのデータは、クエリの実行時に各ソース API からリアルタイムで取得されます。キャッシュされたインデックスはありません。結果には、呼び出し時点での OpenAlex、PubMed、FRED、その他のデータベースの最新状況が反映されます。 コストを抑えるために、1つか2つのソースカテゴリだけを使用できますか? はい。すべてのツールで、academic、biomedical、regulatory、economic、safetyを任意に組み合わせたsources配列を指定できます。ほとんどの研究上の質問にはacademic + biomedicalだけで十分です。attribute_source_contributionを除くすべてのツールでは、これがデフォルトです。

biomedicalソースのShapley値が0.4とは、どういう意味ですか? 生物医学データソース(PubMed、ClinicalTrials.gov、NIH Grants、OpenFDA)が、因果グラフ全体の品質の40%に貢献しているという意味です。これは、5つのソースカテゴリのあらゆる組み合わせにおける、そのデータドメインの平均限界貢献度として測定されます。

これらのソースのデータを使用することは合法ですか? 17のソースはすべて、一般公開されているAPIと政府のオープンデータベースです。PubMed、ClinicalTrials.gov、FDA、FRED、World Bankなどは、無料で利用できる公開リソースです。ウェブスクレイピングの合法性に関するApifyのガイドをご覧ください。

このツールでランダム化比較試験を代替できますか? いいえ。TMLEとdo-calculusは観察データに基づく因果推論を行いますが、その推論は、データだけでは検証できない仮定(未測定の交絡がないこと、正値性、一貫性)に依存します。このツールは因果関係の仮説を特定し、観察データに基づいて効果量を推定するものであり、実験的証拠を生み出すものではありません。check_graph_consistencyツールは、因果的十分性などの重要な仮定への違反を明示的に指摘します。

一般的なツール呼び出しには、どのくらい時間がかかりますか? ほとんどのツール呼び出しは20~60秒で完了します。所要時間は選択したソースカテゴリによって異なります。academic + biomedical(10アクター)では通常25~45秒、5つすべてのカテゴリ(17アクター)では45~90秒かかる場合があります。アクターごとのタイムアウトは、ソースあたり180秒に設定されています。

カスタムのMCPクライアントやエージェントフレームワークで使用できますか? はい。このサーバーは、/mcpで標準のMCPプロトコルを実装しています。Cursor、Windsurf、Cline、カスタムのPython MCPクライアント、LangChainエージェントフレームワークなど、MCPをサポートするクライアントであれば、https://knowledge-graph-causal-discovery-mcp.apify.actor/mcpに接続できます。

データソースが一時的に利用できない場合はどうなりますか? 個々のアクターで障害が発生した場合、エラーを伝播する代わりに空の配列が返されます。利用可能なソースからグラフが構築され、縮小されたグラフに対して因果アルゴリズムが実行されます。レスポンスには常にnodeCountとedgeCountが含まれるため、グラフの密度を確認し、必要に応じて別のソースを指定して再実行できます。

同じクエリで構造の発見とTMLE推定を実行し、結果を相互検証できますか? はい。重要度の高い分析では、このワークフローを推奨します。discover_causal_structureはグラフのトポロジーと調整集合を特定します。estimate_causal_effect_tmleはそのトポロジーを使って、Super Learnerと傾向スコアモデルに適切な交絡因子を選択します。両方を実行した場合の費用は$0.095です。

長時間かかるクエリに対するストリーミングレスポンスをサーバーはサポートしていますか? サーバーはMCP SDKのStreamable HTTPトランスポートを使用しており、ストリーミングをサポートしています。Claude Desktopを含む、ストリーミングを実装したMCPクライアントでは、時間のかかるアクター呼び出し中に更新を段階的に受け取れます。

改善にご協力ください

予期しない結果やエラーが発生した場合は、問題をより早く診断できるよう、実行情報の共有を有効にしてください。

  1. アカウント設定 > プライバシーに移動します
  2. 実行情報を公開Actor作成者と共有するを有効にします

これにより、問題が発生した際に実行の詳細を確認できます。データを閲覧できるのはアクターの開発者のみで、公開されることはありません。

サポート

バグを見つけた場合や機能が必要な場合は、このアクターのページにあるIssuesタブでIssueを作成してください。カスタムの因果推論設定、ドメイン固有のオントロジー統合、またはエンタープライズ向けの導入については、Apifyプラットフォームを通じてお問い合わせください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。