プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

Stata MCP Server

作者:aliveranmeバージョン 1.0.10i★ –iパソコンで動く
レジストリ名io.github.aliveranme/stata-mcp

インストール

概要

作者による説明(英語の原文)

通过 pystata 驱动真实 Stata 的 MCP 服务器:数据加载/清洗/建模/诊断/图形导出,75 个工具覆盖完整计量工作流。

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンで動く
  • トランスポート: stdio
  • カテゴリ: その他
  • 入力が必要なもの:STATA_HOME

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

  • 基本チェック:1項目中1項目に合格
  • あなたのパソコンで、あなたのユーザーと同じ権限(ファイル、ネットワーク、アプリ)で動きます。
  • 自分で入力するもの: STATA_HOME, STATA_EDITION, STATA_ALLOWED_ROOTS

必要なもの

  • npmNode.jsのインストール(npxコマンドに必要)

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます

{
  "mcpServers": {
    "stata": {
      "command": "npx",
      "args": [
        "-y",
        "@aliveranme/stata-mcp"
      ],
      "env": {
        "STATA_HOME": "your-value",
        "STATA_EDITION": "your-value",
        "STATA_ALLOWED_ROOTS": "your-value"
      }
    }
  }
}

ターミナルでこれを実行します

claude mcp add stata --env STATA_HOME=your-value --env STATA_EDITION=your-value --env STATA_ALLOWED_ROOTS=your-value -- npx -y @aliveranme/stata-mcp

動かす前に、空欄の値を入力してください。

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "stata": {
      "command": "npx",
      "args": [
        "-y",
        "@aliveranme/stata-mcp"
      ],
      "env": {
        "STATA_HOME": "your-value",
        "STATA_EDITION": "your-value",
        "STATA_ALLOWED_ROOTS": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "stata": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@aliveranme/stata-mcp"
      ],
      "env": {
        "STATA_HOME": "your-value",
        "STATA_EDITION": "your-value",
        "STATA_ALLOWED_ROOTS": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

自分で入力する値

  • STATA_HOME 必須 env
    Stata 安装目录(含 utilities/pystata),如 /Applications/StataNow
  • STATA_EDITION env
    Stata 版本 mp|se|be
  • STATA_ALLOWED_ROOTS env
    路径沙箱白名单(分号分隔);可选

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月10日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント aliveranme で確認済みです

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

その他のほかのサーバーとの比較i

  • このカテゴリのほかの18902件のうち0%よりスターが多い
  • このカテゴリのほかの18902件のうち21%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの18902件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

Stata MCP Serverは安全ですか?

当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

入力が必要なもの:STATA_HOME

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(1.0.10)がレジストリに届いたのは3 か月前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。

代わりに使えるものは?

同じカテゴリには:Spec Driven Development, Remote Desktop Commander, SDD Vault

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Spec Driven Development

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

作者:formulahendry初期↓ 66/週★ 44014 か月前更新

パソコンで動く

Remote Desktop Commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

作者:desktop-commander成長中★ 2114 日前更新

クラウドで動く✓ desktopcommander.app

SDD Vault

Spec Driven Development store: constitution, specs, plans and tasks your agents read and write.

作者:sddvault.comとても新しい今日更新

クラウドで動く✓ sddvault.com

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

在 Claude Code 里用自然语言做 Stata 分析。你描述要什么,Agent 自己写命令、执行、 读结果、继续下一步 —— 加载数据、清洗、建模、诊断、导出,全在一个持久的 Stata 会话里完成,数据不用反复载入。

一句话,跑完整个分析

你: 加载 auto.dta,用 weight 和 mpg 回归 price,并检查异方差

Agent 自动完成(无需你写任何 Stata 命令):

stata_use_dataset("auto.dta")          →  74 obs, 12 vars 已载入

stata_regress("price", "weight mpg") → R² = 0.293 ; weight 1.75 (p=0.008) stata_run("estat hettest") → Breusch–Pagan χ² 检验异方差 stata_graph("rvfplot", export="…png") → 残差图导出为文件

数据从第一步起就留在内存里,后面每一步都接着用 —— 这正是 stata_run("regress …") 之外还值得有一个 MCP Server 的原因。

这是什么

两部分组成,一起装进 Claude Code:

  • 执行层(MCP Server) —— 经 pystata 直接调用 Stata 的运行时,把 75 个工具 暴露给 Agent。stata_run 执行任意命令、stata_help 查任意命令的官方语法,二者 合起来即「全量内置命令支持」;其余专用工具(回归 / 面板 / IV / 生成变量 / 数据 清洗 / 后估计 / 文件资源 / 后台任务 …)是给高频命令加结构化参数与校验的便利层。
  • 知识层(Skill) —— 一份 Stata 编程指南:语法要点、分析模板、常见陷阱、命令 地图与常用外置包。Agent 据此知道该用什么命令,而不是靠猜。

为什么是 pystata,而不是 subprocess

pystata 通过 ctypes 在进程内加载 Stata 运行时,而非每条命令起一个子进程:

  • 真会话持久 —— Stata 在 MCP Server 启动时初始化一次,数据集、估计结果、局部 宏在所有工具调用之间保持。多步分析(加载 → 清洗 → 回归 → 诊断)就是自然的对话。
  • 低延迟 —— 无进程启动开销,单条命令约 12ms。
  • 输出可控 —— 直接读 Stata 输出缓冲;大输出自动分页(stata_more 翻页), 硬上限 120K 字符防止撑爆 MCP 通道;长命令有 60s 超时看门狗(可显式调大)。

架构

快速开始

前置条件
  • Stata:StataNow 19 或 Stata 18+(MP / SE / BE 均可)——需含 utilities/pystata
  • Python 3.10+(推荐 3.12+)
  • Claude Code 最新版
  • 操作系统:Windows 或 macOS(见下方「兼容性」)
一键安装
git clone https://gitea.aliveranme.space/aliveranme/stata-mcp.git

cd stata-mcp python setup.py

装在非标准位置(如外置卷 /Volumes/xxx/Applications/StataNow)时自动检测会失败 ——

先 export STATA_HOME=/你的/Stata路径 再跑 setup.py 即可。

setup.py 会:检测 Stata 安装(常见路径 + STATA_HOME 环境变量,跨平台)→ 创建虚拟环境并安装 fastmcp → 生成 .mcp.json(保留你已有的其他 MCP Server 配置) → 验证 Server 可启动。

手动安装(自动检测失败时)

# 1. 指定 Stata 路径(替换为你本机实际路径)

export STATA_HOME="C:/Program Files/StataNow/StataNow19" # Windows

export STATA_HOME="/Applications/Stata" # macOS

export STATA_EDITION=mp # mp / se / be

2. 建虚拟环境并装依赖

cd mcp-stata-server uv venv source .venv/Scripts/activate # Windows Git Bash

source .venv/bin/activate # macOS / Linux

uv pip install "fastmcp>=3.2.0"

3. 生成配置

cd .. cp .mcp.json.example .mcp.json # 编辑其中的

</details>
通过 npm 安装(无需 clone 仓库)

若你已有 Node.js ≥ 18 与 uv(无 uv 时需 Python 3.10+ 且已装 fastmcp>=3.2.0),可直接使用已发布的 npm 包 @aliveranme/stata-mcp:

export STATA_HOME="/你的/Stata路径"     # 含 utilities/pystata

export STATA_EDITION=mp

直接跑通(首次启动经 uv 拉取 fastmcp,请给客户端 90s 超时)

npx -y @aliveranme/stata-mcp

Claude Code .mcp.json 配置:

{

"mcpServers": { "stata": { "command": "npx", "args": ["-y", "@aliveranme/stata-mcp"], "env": { "STATA_HOME": "/Applications/StataNow", "STATA_EDITION": "mp" } } } }

npx @aliveranme/stata-mcp 与 npx stata-mcp-server(bin 名)等价,二者都触发同一个启动器。

连接并验证

重启 Claude Code(或 /reload-plugins),.mcp.json 里的 stata Server 会自动连接。 然后在对话里直接说:

帮我加载 auto.dta 并做描述统计

Agent 会自动走 stata_use_dataset → stata_describe → stata_summarize。

各 Agent 安装教程

除 Claude Code 外,本 MCP 可接入所有支持 MCP 的客户端/Agent。逐平台教程见 docs/agent-setup/:

Agent / 客户端配置位置教程
Claude Code.mcp.json / claude mcp addclaude-code.md
Claude Desktopclaude_desktop_config.jsonclaude-desktop.md
Cursor.cursor/mcp.jsoncursor.md
Cline / Roo Code / Continue / Zed / Windsurf通用 mcpServers schema(Zed 用 context_servers)other-clients.md

插件 / 扩展市场分发(Claude Code 插件、Cursor 扩展、Claude Desktop .mcpb)的可行性

评估见 plugin-distribution.md。

MCP 工具(75 个)

能力边界不在工具数量上:stata_run + stata_help 已覆盖全部内置命令。下面的

专用工具是给高频命令加结构化参数与校验的便利层。

类别工具
核心执行stata_run(任意命令,含危险前缀拦截;save_output= 完整输出落盘并登记为资源)· stata_run_do_file(执行前自动拆出 ssc install 单独安装,已装跳过)
数据管理stata_use_dataset · stata_import(excel/csv/sas/spss/dbase/parquet)· stata_use_example(sysuse/webuse)· stata_save_dataset · stata_set_cwd · stata_generate · stata_egen · stata_xtset(面板/时序声明)
数据重构 / 校验stata_merge · stata_append · stata_reshape · stata_collapse · stata_frame(多数据集)· stata_verify(count/assert/duplicates/isid/missing)· stata_replace · stata_drop · stata_keep · stata_rename · stata_recode · stata_destring
数据探索stata_describe · stata_codebook · stata_summarize · stata_list · stata_tabulate · stata_correlate · stata_display
估计stata_regress · stata_logistic · stata_probit · stata_poisson · stata_ttest · stata_xtreg · stata_ivregress · stata_logit · stata_mlogit · stata_nbreg · stata_qreg · stata_mixed
后估计stata_margins · stata_test · stata_predict · stata_estat(vif/hettest/ovtest/ic)· stata_estimates(存取与并排比较)· stata_lincom · stata_nlcom · stata_hausman · stata_return_list
图形 / 导出stata_graph(导出即验证文件写入)· stata_scheme(主题)· stata_export_excel · stata_export_delimited · stata_etable(回归表直出 Word/Excel)
文件资源回传stata_list_resources · stata_read_file(info/base64)· stata_register_file —— 导出产物经资源协议(resources/read 读 stata-file:///)取回二进制
包管理与帮助stata_help(查任意命令帮助)· stata_install_package · stata_uninstall_package · stata_describe_package · stata_find_package · stata_list_packages
会话生命周期stata_clear(scope 重置)· stata_snapshot(save/list/restore/erase)· stata_more(翻页)· stata_status · stata_ping
长任务控制stata_background(后台执行,单块上限 3600s)· stata_task_status · stata_task_cancel · stata_task_result · stata_task_list
服务器日志stata_read_log(tail/path)

各工具的参数与说明

数据管理 — stata_use_dataset 加载 .dta(可只载入子集);stata_import 覆盖官方 import 命令族,按扩展名推断格式;stata_save_dataset 保存;stata_set_cwd 改工作目录; stata_generate / stata_egen 创建变量(支持官方 [type] 存储类型与 [if] [in]); stata_xtset 声明面板 / 时序结构 —— 它是 stata_xtreg 的前提。

数据探索 — stata_summarize / stata_codebook / stata_list / stata_tabulate 均支持 condition;stata_correlate 可选 pairwise 走 pwcorr;stata_display 算表达式 / 看返回值。

估计 — stata_regress(OLS)、stata_logistic、stata_probit(可选 marginal_effects)、stata_poisson(可选 irr)、stata_ttest(可按组)、 stata_xtreg(effects = fe/re/be/mle/pa,需先 xtset)、stata_ivregress (2sls/liml/gmm)。扩展族:stata_logit(报告原始系数,OR 用 logistic)、 stata_mlogit(多分类,baseoutcome 定基准)、stata_nbreg(负二项)、 stata_qreg(分位,quantile 默认 0.5)、stata_mixed(多水平,random="|| id:")。

数据清洗 — stata_replace 覆盖变量值、stata_drop/stata_keep 删/留变量或观测 (两种形态二选一)、stata_rename 重命名(单个或批量)、stata_recode 重编码 (values="(1=0) (2/4=1)" 官方规则组)、stata_destring 字符串转数值(必须 replace=True 或 generate())。

后估计(须先跑估计命令)— stata_margins(dydx / at)、stata_test (Wald 检验)、stata_predict(预测值 / 残差,会创建变量)、stata_lincom / stata_nlcom(线性 / 非线性组合检验)、stata_hausman(模型比较,需先 stata_estimates action="store" 存两个模型)。

图形 / 导出 — stata_graph 把 graph 与 export 原子执行,以文件是否真被写入判定 成败。导出选项按格式自动适配官方边界:尺寸单位(位图与 svg 用像素、pdf 用英寸、 eps/ps/emf 不支持)、quality(仅 jpg)、mag(仅 pdf/eps/ps)、fontface (仅矢量格式)—— 不适用的选项被丢弃并在返回信息中说明,而非让 Stata 静默失败。 stata_scheme 列出 / 查询 / 设置主题(不传 scheme 时不会改动你当前的主题)。 stata_export_excel 导数据为 .xlsx(支持 sheet_mode / cell / firstrow / if-in 筛选);stata_export_delimited 导 CSV / TSV / 自定义分隔符。 回归表用 stata_etable(官方 etable,Stata 17+,无第三方依赖): estimates="m1 m2 m3" 并排多模型,直出 .docx / .xlsx / .pdf / .tex / .html / .md, 并以文件是否真被写入判定成败 —— etable 会先把表打印出来再报导出错误,只看输出 很容易把失败当成功。

包管理与帮助 — stata_help("命令") 查任意内置 / 已装外置命令的官方语法; stata_find_package 走 net search 联网找包;stata_install_package 装(ssc 或 URL); stata_uninstall_package 卸载(ado uninstall,纯本地);stata_describe_package 查包详情(默认本地 ado describe,source="ssc" 走联网 ssc describe 供装前了解); stata_list_packages 列已装。

会话 — stata_more 翻上一条命令的完整输出;stata_status 一次给出数据集、工作目录、 frame、面板/时序设定、已存与活跃的估计结果、内存 —— 即 Agent 调 xtreg / margins / predict 前需要确认的全部前提;stata_ping 心跳。stata_clear 按 scope 重置会话(data/estimates/graphs/panels/all);stata_snapshot 用 Stata 原生快照在数据 阶段间快速回退(save/list/restore/erase)。

文件资源回传 — 导出工具(stata_graph / stata_export_* / stata_etable / stata_save_dataset / stata_run save_output=)成功后把文件登记为 MCP 资源。远程 客户端经 resources/read 读 stata-file:///<路径> 取回图表 / Excel / CSV / dta 的 二进制,或 stata_read_file 取 base64 / 元信息;stata_list_resources 列出全部登记 文件,stata_register_file 登记已有的磁盘文件。安全边界:只读登记过的文件。

长任务控制 — stata_background 把耗时长命令放到后台(立即返回任务号,单块超时 上限 3600s,运行期间其他调用会等待共享的 _stata_lock);stata_task_status 查进度、 stata_task_cancel 显式取消、stata_task_result 取结果、stata_task_list 列全部。 stata_read_log 读本服务器运行日志排查问题。

Stata 知识 Skill

.claude/skills/stata/SKILL.md 是 Agent 的 Stata 编程参考:

模块内容
核心原则分析前先探数据、变量名大小写、路径规范、返回值检查
语法要点命令结构、if 条件陷阱、因子变量、循环与条件块、egen 函数
命令地图3500+ 内置命令按族归类,语法一律指向 stata_help
分析模板数据探索、OLS / Logit、面板、工具变量、DID —— 均经真实 Stata 验证
外置命令表reghdfe / ivreg2 / estout / coefplot / did / rdrobust … 按计量方向组织
常见陷阱变量名冲突、缺失值、字符串转换、路径、do 文件

兼容性

组件要求
StataStataNow 19 / Stata 18(MP / SE / BE),需含 utilities/pystata
Python3.10+
Claude Code最新版(支持 MCP stdio)
操作系统Windows、macOS(setup.py 跨平台检测;Linux 亦受 setup.py 支持但未实测)

pystata 是 Stata 官方的 Python 集成,随 Stata 一同分发,Windows / macOS / Linux

均提供。本项目在 Windows 与 macOS(StataNow 19.5 MP)上均实测可用。

配置

环境变量

变量默认值说明
STATA_HOMEC:\Program Files\StataNow\StataNow19Stata 安装目录。环境变量优先级最高;未设置时由 setup.py 自动检测。
STATA_EDITIONmpStata 版本(mp / se / be)
STATA_ALLOWED_ROOTS未设置路径沙箱白名单,分号分隔(例 C:/data;D:/projects)。两重限制:未设置时不限制绝对路径;设置后既校验工具的路径参数,也审计 stata_run / stata_run_do_file / stata_background 自由文本命令里的引号路径(use "越界路径" 同样被拒)。宏路径 fail-open,未配置白名单时不启用。
STATA_ALLOW_UNC未设置设为 1 允许 UNC 网络路径,默认拒绝。
JAVA_TOOL_OPTIONS自动追加 -Djava.awt.headless=trueMCP 无 GUI 会话时自动启用 Java headless,避免图形导出触发 AWT 渲染错误。若已显式设置 -Djava.awt.headless=true/false,则保留原值。

开发 / 调试

# 调试模式启动 Server

cd mcp-stata-server source .venv/bin/activate # 或 .venv/Scripts/activate (Windows) python server.py

单元测试(无需 Stata)

python -m pytest tests/ -q

端到端测试(需真实 Stata;未检测到安装时整目录跳过;网络用例需可访问 Stata 官网)

必须与 tests/ 分开跑:tests/conftest.py 会把 pystata 换成 mock,同进程内换不回来

STATA_HOME=/path/to/StataNow python -m pytest tests_e2e/ -q

#

冒頭だけを表示しています。続きはリポジトリで読めます

PopNxに聞く