aigroup-econ-mcp 0.3.8__py3-none-any.whl → 0.4.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of aigroup-econ-mcp might be problematic. Click here for more details.
- aigroup_econ_mcp/__init__.py +18 -18
- aigroup_econ_mcp/cli.py +81 -86
- aigroup_econ_mcp/server.py +284 -3291
- aigroup_econ_mcp/tools/__init__.py +3 -2
- aigroup_econ_mcp/tools/data_loader.py +171 -0
- aigroup_econ_mcp/tools/decorators.py +178 -0
- aigroup_econ_mcp/tools/file_input_handler.py +268 -0
- aigroup_econ_mcp/tools/file_parser.py +560 -0
- aigroup_econ_mcp/tools/machine_learning.py +14 -14
- aigroup_econ_mcp/tools/panel_data.py +10 -6
- aigroup_econ_mcp/tools/time_series.py +54 -127
- aigroup_econ_mcp/tools/tool_handlers.py +378 -0
- aigroup_econ_mcp/tools/tool_registry.py +170 -0
- aigroup_econ_mcp-0.4.1.dist-info/METADATA +360 -0
- aigroup_econ_mcp-0.4.1.dist-info/RECORD +27 -0
- aigroup_econ_mcp-0.3.8.dist-info/METADATA +0 -453
- aigroup_econ_mcp-0.3.8.dist-info/RECORD +0 -21
- {aigroup_econ_mcp-0.3.8.dist-info → aigroup_econ_mcp-0.4.1.dist-info}/WHEEL +0 -0
- {aigroup_econ_mcp-0.3.8.dist-info → aigroup_econ_mcp-0.4.1.dist-info}/entry_points.txt +0 -0
- {aigroup_econ_mcp-0.3.8.dist-info → aigroup_econ_mcp-0.4.1.dist-info}/licenses/LICENSE +0 -0
aigroup_econ_mcp/__init__.py
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
"""
|
|
2
|
-
AIGroup 计量经济学 MCP 服务
|
|
3
|
-
专业计量经济学MCP工具 - 让大模型直接进行数据分析
|
|
4
|
-
|
|
5
|
-
提供:
|
|
6
|
-
- 描述性统计分析
|
|
7
|
-
- OLS回归分析
|
|
8
|
-
- 时间序列分析
|
|
9
|
-
- 假设检验
|
|
10
|
-
- 模型诊断
|
|
11
|
-
"""
|
|
12
|
-
|
|
13
|
-
__version__ = "0.
|
|
14
|
-
__author__ = "AIGroup"
|
|
15
|
-
__description__ = "专业计量经济学MCP工具 - 让大模型直接进行数据分析"
|
|
16
|
-
|
|
17
|
-
from .server import create_mcp_server
|
|
18
|
-
|
|
1
|
+
"""
|
|
2
|
+
AIGroup 计量经济学 MCP 服务
|
|
3
|
+
专业计量经济学MCP工具 - 让大模型直接进行数据分析
|
|
4
|
+
|
|
5
|
+
提供:
|
|
6
|
+
- 描述性统计分析
|
|
7
|
+
- OLS回归分析
|
|
8
|
+
- 时间序列分析
|
|
9
|
+
- 假设检验
|
|
10
|
+
- 模型诊断
|
|
11
|
+
"""
|
|
12
|
+
|
|
13
|
+
__version__ = "0.4.1"
|
|
14
|
+
__author__ = "AIGroup"
|
|
15
|
+
__description__ = "专业计量经济学MCP工具 - 让大模型直接进行数据分析"
|
|
16
|
+
|
|
17
|
+
from .server import create_mcp_server
|
|
18
|
+
|
|
19
19
|
__all__ = ["create_mcp_server", "__version__", "__author__", "__description__"]
|
aigroup_econ_mcp/cli.py
CHANGED
|
@@ -1,87 +1,82 @@
|
|
|
1
|
-
"""
|
|
2
|
-
AIGroup 计量经济学 MCP 服务命令行入口
|
|
3
|
-
"""
|
|
4
|
-
|
|
5
|
-
import sys
|
|
6
|
-
import click
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
@click.
|
|
12
|
-
@click.option('--
|
|
13
|
-
@click.option('--
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
@click.option('--
|
|
18
|
-
@click.option('--
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
click.echo("
|
|
30
|
-
click.echo("
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
#
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
click.echo(f"[INFO]
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
click.echo(f"[INFO]
|
|
57
|
-
click.echo(f"[INFO]
|
|
58
|
-
click.echo(f"[INFO]
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
click.echo(f"[INFO]
|
|
72
|
-
click.echo(f"[INFO]
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
mount_path=mount_path or '/sse'
|
|
83
|
-
)
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
if __name__ == "__main__":
|
|
1
|
+
"""
|
|
2
|
+
AIGroup 计量经济学 MCP 服务命令行入口
|
|
3
|
+
"""
|
|
4
|
+
|
|
5
|
+
import sys
|
|
6
|
+
import click
|
|
7
|
+
import uvicorn
|
|
8
|
+
from .server import create_mcp_server
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@click.command()
|
|
12
|
+
@click.option('--port', default=8000, help='服务器端口')
|
|
13
|
+
@click.option('--host', default='127.0.0.1', help='服务器地址')
|
|
14
|
+
@click.option('--transport', default='stdio',
|
|
15
|
+
type=click.Choice(['stdio', 'streamable-http', 'sse']),
|
|
16
|
+
help='传输协议 (默认: stdio)')
|
|
17
|
+
@click.option('--debug', is_flag=True, help='启用调试模式')
|
|
18
|
+
@click.option('--mount-path', default=None, help='挂载路径')
|
|
19
|
+
@click.option('--version', is_flag=True, help='显示版本信息')
|
|
20
|
+
def cli(port: int, host: str, transport: str, debug: bool, mount_path: str, version: bool):
|
|
21
|
+
"""AIGroup 计量经济学 MCP 工具
|
|
22
|
+
|
|
23
|
+
默认以stdio模式启动MCP服务器,适用于MCP客户端集成。
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
# 处理版本标志
|
|
27
|
+
if version:
|
|
28
|
+
from . import __version__
|
|
29
|
+
click.echo(f"aigroup-econ-mcp v{__version__}", err=True)
|
|
30
|
+
click.echo("Professional econometrics MCP tool", err=True)
|
|
31
|
+
click.echo("Author: AIGroup", err=True)
|
|
32
|
+
sys.exit(0)
|
|
33
|
+
|
|
34
|
+
# 创建MCP服务器
|
|
35
|
+
mcp_server = create_mcp_server()
|
|
36
|
+
|
|
37
|
+
# 设置调试模式
|
|
38
|
+
if debug:
|
|
39
|
+
mcp_server.settings.debug = True
|
|
40
|
+
click.echo(f"[DEBUG] 调试模式已启用", err=True)
|
|
41
|
+
|
|
42
|
+
# 根据传输协议启动服务器
|
|
43
|
+
if transport == 'stdio':
|
|
44
|
+
# stdio模式直接运行,不输出任何日志到stdout(MCP协议通信)
|
|
45
|
+
# 所有日志输出到stderr
|
|
46
|
+
from . import __version__
|
|
47
|
+
click.echo(f"[INFO] aigroup-econ-mcp v{__version__} starting...", err=True)
|
|
48
|
+
click.echo(f"[INFO] Transport: stdio (MCP protocol)", err=True)
|
|
49
|
+
if debug:
|
|
50
|
+
click.echo(f"[DEBUG] Debug mode enabled", err=True)
|
|
51
|
+
click.echo(f"[INFO] Server ready. Waiting for MCP client connection...", err=True)
|
|
52
|
+
mcp_server.run(transport='stdio')
|
|
53
|
+
|
|
54
|
+
elif transport == 'streamable-http':
|
|
55
|
+
# Streamable HTTP模式 - 使用uvicorn手动启动
|
|
56
|
+
click.echo(f"[INFO] Starting aigroup-econ-mcp server", err=True)
|
|
57
|
+
click.echo(f"[INFO] Professional econometrics MCP tool for AI data analysis", err=True)
|
|
58
|
+
click.echo(f"[INFO] Transport protocol: {transport}", err=True)
|
|
59
|
+
click.echo(f"[INFO] Service address: http://{host}:{port}", err=True)
|
|
60
|
+
if mount_path:
|
|
61
|
+
click.echo(f"[INFO] Mount path: {mount_path}", err=True)
|
|
62
|
+
|
|
63
|
+
# 获取Starlette应用并启动uvicorn服务器
|
|
64
|
+
app = mcp_server.streamable_http_app()
|
|
65
|
+
uvicorn.run(app, host=host, port=port, log_level="info")
|
|
66
|
+
|
|
67
|
+
elif transport == 'sse':
|
|
68
|
+
# SSE模式 - 使用uvicorn手动启动
|
|
69
|
+
click.echo(f"[INFO] Starting aigroup-econ-mcp server", err=True)
|
|
70
|
+
click.echo(f"[INFO] Professional econometrics MCP tool for AI data analysis", err=True)
|
|
71
|
+
click.echo(f"[INFO] Transport protocol: {transport}", err=True)
|
|
72
|
+
click.echo(f"[INFO] Service address: http://{host}:{port}", err=True)
|
|
73
|
+
if mount_path:
|
|
74
|
+
click.echo(f"[INFO] Mount path: {mount_path}", err=True)
|
|
75
|
+
|
|
76
|
+
# 获取Starlette应用并启动uvicorn服务器
|
|
77
|
+
app = mcp_server.sse_app()
|
|
78
|
+
uvicorn.run(app, host=host, port=port, log_level="info")
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
if __name__ == "__main__":
|
|
87
82
|
cli()
|