/ ディレクトリ / プレイグラウンド / Stata MCP
● コミュニティ SepineTam 🔑 自分のキーが必要

Stata MCP

作者 SepineTam · SepineTam/stata-mcp

StataをMCPとして — .dtaファイルを読み込み、回帰を実行し、Claudeで係数を解釈。真の因果推論が求められる計量経済学ワークフロー向けに構築。

stata-mcpはローカルのStataインストールをシェルアウトし、データ読み込み、回帰、結果解析をMCPツールとして公開します。Claudeの経済学的推論と組み合わせることで、reg y xから実際の識別論証 — 固定効果、IV、DiD、RDD — まで進められます。ローカルのStataライセンスが必要です。

なぜ使うのか

主な機能

ライブデモ

実際の動作

stata-mcp.replay ▶ 準備完了
0/0

インストール

クライアントを選択

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "stata-mcp": {
      "command": "uvx",
      "args": [
        "stata-mcp"
      ],
      "env": {
        "STATA_MCP_CWD": "/path/to/your/project"
      }
    }
  }
}

Claude Desktop → Settings → Developer → Edit Config を開く。保存後、アプリを再起動。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "stata-mcp": {
      "command": "uvx",
      "args": [
        "stata-mcp"
      ],
      "env": {
        "STATA_MCP_CWD": "/path/to/your/project"
      }
    }
  }
}

Cursor は Claude Desktop と同じ mcpServers スキーマを使用。プロジェクト設定はグローバルより優先。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "stata-mcp": {
      "command": "uvx",
      "args": [
        "stata-mcp"
      ],
      "env": {
        "STATA_MCP_CWD": "/path/to/your/project"
      }
    }
  }
}

Cline サイドバーの MCP Servers アイコンをクリックし、"Edit Configuration" を選択。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "stata-mcp": {
      "command": "uvx",
      "args": [
        "stata-mcp"
      ],
      "env": {
        "STATA_MCP_CWD": "/path/to/your/project"
      }
    }
  }
}

Claude Desktop と同じ形式。Windsurf を再起動して反映。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "stata-mcp",
      "command": "uvx",
      "args": [
        "stata-mcp"
      ]
    }
  ]
}

Continue はマップではなくサーバーオブジェクトの配列を使用。

~/.config/zed/settings.json
{
  "context_servers": {
    "stata-mcp": {
      "command": {
        "path": "uvx",
        "args": [
          "stata-mcp"
        ]
      }
    }
  }
}

context_servers に追加。保存時に Zed がホットリロード。

claude mcp add stata-mcp -- uvx stata-mcp

ワンライナー。claude mcp list で確認、claude mcp remove で削除。

ユースケース

実用的な使い方: Stata MCP

パネルデータセットの初期分析

👤 応用計量経済学/ファイナンス研究者 ⏱ ~60 min intermediate

使うタイミング: 新しいデータセットを受け取り、識別戦略を設計する前に基本的なパターンを把握したい場合。

前提条件
  • Stata 17以上がライセンス済みでPATHに追加されている — Stataのインストーラーを使用;stata-mp -hで確認
  • データファイルにアクセス可能 — STATA_MCP_CWDをプロジェクトルートに設定
フロー
  1. 確認
    Use stata-mcp. Load panel.dta. Summarize all numeric variables and check for missingness.✓ コピーしました
    → サマリーテーブル;欠損パターンの診断
  2. プロット
    Plot the dependent variable over time, grouped by treatment status.✓ コピーしました
    → Twowayプロットがエクスポートされる
  3. 最初のモデル
    Run a fixed-effects regression: outcome on treatment, controls FE_unit FE_time. Cluster SEs by unit. Interpret.✓ コピーしました
    → 係数表 + 平易な言葉による解釈

結果: 半日ではなく1時間で防御可能な初期分析が完成。

注意点
  • FEモデルはユニット内の変動のみから識別する — Claudeがこれを指摘する;処置が段階的な場合はDiDを検討する
組み合わせ: filesystem

データに適した識別戦略を議論する

👤 OLS、DiD、RDD、IVの間で迷っている研究者 ⏱ ~45 min advanced

使うタイミング: 観察データがあり、因果的主張をしたい場合。

フロー
  1. 状況の説明
    Here's my setting (treatment, outcome, available variation). Which identification strategies are plausible? Trade-offs?✓ コピーしました
    → 戦略ごとの比較推論
  2. 仮定のテスト
    Run parallel-trends pre-trends test for DiD. Plot.✓ コピーしました
    → 事前トレンドテスト結果

結果: 明示的にテストされた仮定を持つ識別戦略。

注意点
  • Claudeは仮定が疑わしい場合でもテストを実行してしまう — 「この仮定は防御可能か?」を別途確認する

出版可能な係数表をレンダリングする

👤 投稿間際の著者 ⏱ ~20 min intermediate

使うタイミング: 表をLaTeX形式で有意水準の星付き、ロバスト標準誤差、コントロール変数省略で出力する必要がある場合。

フロー
  1. 全スペックを実行
    Run 5 specs (no controls, +basic, +full, +FE, +FE+cluster). Save each as e(b).✓ コピーしました
    → 5つの推定結果が保存される
  2. レンダリング
    Use esttab to produce a LaTeX table. Stars at 1/5/10. Robust SEs in parentheses.✓ コピーしました
    → LaTeX形式の表ファイルが書き込まれる

結果: 論文にそのまま貼り付けられる表。

注意点
  • esttabのオプションがジャーナルによって異なる — ジャーナルの推奨フォーマットを明示的に指定する
組み合わせ: overleaf-mcp

組み合わせ

他のMCPと組み合わせて10倍の力を

stata-mcp + filesystem

データファイルの読み込みと出力の保存

Load /data/panel.dta and save the regression table to /tables/reg1.tex.✓ コピーしました
stata-mcp + overleaf-mcp

生成した表を直接論文にプッシュ

Generate the spec table and have Overleaf MCP commit it as tables/main.tex.✓ コピーしました

ツール

このMCPが提供する機能

ツール入力呼び出すタイミングコスト
load_data path .dtaを開くとき free
summarize vars? 最初の概観 free
regress formula, options? モデルを実行するとき free
stata_command command: str ラップされていないコマンド(esttab、twowayなど)に使用 free

コストと制限

運用コスト

APIクォータ
なし — ローカルStata
呼び出しあたりのトークン
200〜4000 token
金額
MCPは無料;Stataのライセンスが必要
ヒント
stata-mpが使えるなら活用 — マルチコア回帰は大幅に速い

セキュリティ

権限、シークレット、影響範囲

最小スコープ: プロジェクトディレクトリのローカルファイル読み書き
認証情報の保管: なし
データ送信先: なし — 完全ローカル
絶対に付与しない: Stataの`shell`アクセスが不要な場合は付与しない

トラブルシューティング

よくあるエラーと対処法

Stataが見つからない

StataがPATHにあることを確認;非標準インストールの場合はSTATA_MCP_BINを設定

確認: ターミナルから`stata-mp -h`を実行
多重共線性の警告が無視される

Claudeがフラグを立てる;係数を信頼する前にVIFを調べる

確認: 回帰後に`vif`を実行
ライセンスエラー

Stataのライセンスはユーザー/ホストに紐付いている;インストールを確認

代替案

Stata MCP 他との比較

代替案代わりに使う場面トレードオフ
R / tidyverse + fixestStataのライセンスがない場合エコシステムが異なる;一部のStataコマンドにRの代替がない
Python statsmodels / linearmodelsPandasネイティブなワークフロー計量経済学固有のテストがStataより貧弱

その他

リソース

📖 GitHub の公式 README を読む

🐙 オープンな issue を見る

🔍 400以上のMCPサーバーとSkillsを見る