美国国际集团经济公司
  ](https://github.com/jackdark425/aigroup-econ-mcp) 
计量经济学MCP服务器,用于回归、因果推理、时间序列、面板数据、机器学习和更广泛的统计分析工作流程。
概述
aigroup-econ-mcp 是一个面向计量经济学的专业MCP服务器,旨在帮助AI助手和MCP客户端进行结构化定量分析。
它包括:
- 参数估计与回归分析
- 因果推理工作流程
- 微观计量经济学和面板数据
- 时间序列和波动率模型
- 计量经济学任务的机器学习
- 空间计量经济学、分解和推理工具
亮点
- 66个专业工具 跨核心计量经济学领域
- 多种输入格式 包括CSV、JSON、TXT和Excel
- 多种输出格式 包括JSON、Markdown和文本
- 支持MCP客户端 例如RooCode、与Claude兼容的工具和其他MCP主机
- 方法覆盖范围广 从OLS和IV到ARIMA、GARCH、GAM和因果林
- 专为研究和应用分析而设计 而不是狭隘的单任务工作流
工具组
服务器目前将其66个工具分为以下类别:
- 基本参数估计 --OLS、MLE、GMM
- 因果推断 --DID、IV、PSM、固定/随机效应、RDD、综合控制、事件研究等
- 分解分析 --Oaxaca Blinder,方差分析,时间序列分解
- 机器学习 --随机林、梯度增强、SVM、神经网络、聚类、DML、因果林
- 个体经济计量学 --logit、probit、多项式logit、泊松、负二项式、Tobit、Heckman
- 缺失数据处理 --简单插补与MICE
- 模型诊断和稳健推理 --规范测试、GLS、WLS、鲁棒误差、正则化、联立方程
- 无母数方法 --核回归、分位数回归、样条回归、GAM
- 空间计量经济学 --权重矩阵、莫兰I、吉尔里C、LISA、空间回归、GWR
- 统计推断 --引导和置换测试
- 时间序列和面板数据 --ARIMA、指数平滑、GARCH、单位根检验、VAR/SVAR、协整、动态面板、面板VAR、结构断裂、时变参数模型
快速开始
需求
- Python>=3.10
uvx建议使用最简单,或pip
用uvx跑步
uvx aigroup-econ-mcp如果 uvx 继续使用较旧的缓存版本:
uvx --no-cache aigroup-econ-mcp使用pip安装
pip install aigroup-econ-mcp
aigroup-econ-mcpmacOS用户:为XGBoost支持的工具安装libomp
机器学习工具的一个子集链接到 xgboost,这需要 OpenMP运行时(libomp.dylib)在进口时。没有它,这四个工具 返回一个 tool_unavailable payload,即使服务器本身启动良好:
ml_kmeans_clusteringml_hierarchical_clusteringml_double_machine_learningml_causal_forest
使用Homebrew安装一次:
brew install libompLinux/Windows用户不受影响——xgboost wheels捆绑或定位 自动打开MP。
MCP客户端配置
兼容Claude的MCP客户端/RooCode/类似工具
{
"mcpServers": {
"aigroup-econ-mcp": {
"command": "uvx",
"args": ["aigroup-econ-mcp"]
}
}
}输入和输出支持
支持的输入格式
- CSV文件
- JSON
- TXT
- Excel(
.xlsx,.xls)
典型使用模式:
- 直接结构化数据输入
- 原始文件内容输入
- 本地文件路径输入
支持的输出格式
json(默认值--结构化Pydantic结果序列化)markdown(人类可读的表格和系数星)text(紧凑型str(model.model_dump())回退)
示例用例
- OLS与广义回归建模
- 差异中的差异与工具变量分析
- 匹配和回归不连续工作流程
- 随机森林/梯度增强/因果森林分析
- ARIMA、GARCH、VAR和协整建模
- 面板诊断和动态面板估计
调用工具
每个工具都接受参数 内联 (直接名单)或 从一个 文件 通过 file_path服务器返回一个JSON字符串;关于失败 有效载荷具有均匀性 {"ok": false, "error": {...}} 形状。
内联:OLS回归
{
"name": "basic_parametric_estimation_ols",
"arguments": {
"y_data": [1.0, 2.1, 2.9, 4.1, 5.0, 5.9, 7.1, 8.0, 8.9, 10.1],
"x_data": [[1.0], [2.0], [3.0], [4.0], [5.0],
[6.0], [7.0], [8.0], [9.0], [10.0]],
"output_format": "json"
}
}基于文件:CSV的因果DID
CSV的第一列是因变量(y_data),其余的是 协变量(x_data).对于特定于域的密钥,如 treatment, time_period, outcome,供应a .json 文件:
// policy.json
{"treatment": [0,0,1,1,0,0,1,1],
"time_period": [0,1,0,1,0,1,0,1],
"outcome": [4.1,4.8,3.9,5.6,4.0,4.7,3.8,5.5]}{
"name": "causal_difference_in_differences",
"arguments": {"file_path": "policy.json", "output_format": "markdown"}
}时间序列:ARIMA预测
{
"name": "time_series_arima_model",
"arguments": {
"data": [/* monthly observations */],
"order": [1, 1, 1],
"forecast_steps": 6,
"output_format": "markdown"
}
}口译 fit_warnings
几个型号返回一个 fit_warnings 阵列。非空值表示 统计数据是一个备用占位符——用 护理。例如,具有奇异Hessian的Cox回归:
{
"coefficients": [...],
"std_errors": [1.0, 1.0, 1.0],
"p_values": [1.0, 1.0, 1.0],
"fit_warnings": [
"Hessian inversion failed; std_errors are placeholder 1.0 — Z/p values below are not real"
]
}看见 p=1.0 没有警告意味着“不重要”;与a相同 警告意味着“无法计算”。
调试模式
集 AIGROUP_ECON_MCP_DEBUG=1 在启动服务器之前,包括 Python在结构化错误负载内进行回溯——在以下情况下很有用 开发新的MCP客户端。
项目结构
aigroup-econ-mcp/
├── aigroup_econ_mcp/ # MCP server + CLI
│ ├── cli.py # argparse entry point
│ ├── server.py # FastMCP wire-up
│ ├── registry.py # ToolSpec registry
│ ├── _registrations.py # all 66 tools registered here
│ └── errors.py
├── tools/ # adapter layer (I/O + formatting)
├── econometrics/ # algorithms
├── resources/
├── prompts/
├── docs/
│ ├── ARCHITECTURE.md
│ ├── PUBLISHING.md
│ └── TESTING.md
├── tests/
├── CHANGELOG.md
└── pyproject.toml看 docs/ARCHITECTURE.md 对于层边界以及如何 添加新工具。
发展
uv sync
uv run pytest # full suite, ~12 s (271 tests)
uv run pytest -m "not slow" # fast iteration, ~1.5 s (264 tests)
uv run ruff check .
uv run ruff format .所有66个注册工具都包含在一个四层测试金字塔中: 注册形状→ 烟→ 数学正确性(已知DGP)→ 真正的MCP stdio协议。看 docs/VERIFICATION.md 对于测试范式、地面真实DGP、容差理论基础,以及 这种方法已经出现了9个真正的错误记录。看 docs/TESTING.md 用于快速运行命令和 测试文件布局。
故障排除
uvx解析旧版本
uvx 每个版本都有缓存,因此如果未获取已发布的版本:
uvx --refresh aigroup-econ-mcp
# or
uv cache clean许可和使用
该项目发布于 MIT许可证.
您可以使用、复制、修改、合并、发布、分发、再许可和销售本软件的副本,包括在学术、研究、内部和商业环境中,前提是保留原始版权声明和许可文本。
请记住:
- 软件已提供 “原样”,不提供任何形式的保证
- 您必须在软件的副本或大部分中保留相关的版权和许可声明
- 统计结果仍然取决于数据质量、假设和用户正确的方法选择
请参阅全文 许可证.
致谢
核心科学生态系统
- 状态模型 --统计建模基础
- 熊猫 --数据操作和表格工作流程
- scikit学习 --机器学习组件
- 线性模型 --面板数据与计量经济学建模支持
- 拱门 --波动率与ARCH/GARCH模型
社区与协议生态系统
- 模型上下文协议 --MCP集成模型
- 更广泛的计量经济学和开源科学计算社区
支持
- 问题:https://github.com/jackdark425/aigroup-econ-mcp/issues
- 存储库:https://github.com/jackdark425/aigroup-econ-mcp
- PyPI出版指南: PYPI_PUBLISH_GUIDE.md
