aigroup-econ-mcp 0.1.0__py3-none-any.whl → 0.1.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.
@@ -10,7 +10,7 @@ AIGroup 计量经济学 MCP 服务
10
10
  - 模型诊断
11
11
  """
12
12
 
13
- __version__ = "0.1.0"
13
+ __version__ = "0.1.1"
14
14
  __author__ = "AIGroup"
15
15
  __description__ = "专业计量经济学MCP工具 - 让大模型直接进行数据分析"
16
16
 
aigroup_econ_mcp/cli.py CHANGED
@@ -2,21 +2,32 @@
2
2
  AIGroup 计量经济学 MCP 服务命令行入口
3
3
  """
4
4
 
5
+ import sys
5
6
  import click
6
- import uvicorn
7
7
  from .server import create_mcp_server
8
8
 
9
9
 
10
10
  @click.command()
11
11
  @click.option('--port', default=8000, help='服务器端口')
12
12
  @click.option('--host', default='127.0.0.1', help='服务器地址')
13
- @click.option('--transport', default='streamable-http',
13
+ @click.option('--transport', default='stdio',
14
14
  type=click.Choice(['stdio', 'streamable-http', 'sse']),
15
- help='传输协议')
15
+ help='传输协议 (默认: stdio)')
16
16
  @click.option('--debug', is_flag=True, help='启用调试模式')
17
17
  @click.option('--mount-path', default=None, help='挂载路径')
18
- def main(port: int, host: str, transport: str, debug: bool, mount_path: str):
19
- """启动aigroup-econ-mcp服务器"""
18
+ @click.option('--version', is_flag=True, help='显示版本信息')
19
+ def cli(port: int, host: str, transport: str, debug: bool, mount_path: str, version: bool):
20
+ """AIGroup 计量经济学 MCP 工具
21
+
22
+ 默认以stdio模式启动MCP服务器,适用于MCP客户端集成。
23
+ """
24
+
25
+ # 处理版本标志
26
+ if version:
27
+ click.echo("aigroup-econ-mcp v0.1.0", err=True)
28
+ click.echo("Professional econometrics MCP tool", err=True)
29
+ click.echo("Author: AIGroup", err=True)
30
+ sys.exit(0)
20
31
 
21
32
  # 创建MCP服务器
22
33
  mcp_server = create_mcp_server()
@@ -24,29 +35,41 @@ def main(port: int, host: str, transport: str, debug: bool, mount_path: str):
24
35
  # 设置调试模式
25
36
  if debug:
26
37
  mcp_server.settings.debug = True
27
- click.echo(f"[DEBUG] 调试模式已启用")
28
-
29
- click.echo(f"[INFO] Starting aigroup-econ-mcp server")
30
- click.echo(f"[INFO] Professional econometrics MCP tool for AI data analysis")
31
- click.echo(f"[INFO] Transport protocol: {transport}")
32
- click.echo(f"[INFO] Service address: http://{host}:{port}")
33
- if mount_path:
34
- click.echo(f"[INFO] Mount path: {mount_path}")
38
+ click.echo(f"[DEBUG] 调试模式已启用", err=True)
35
39
 
36
40
  # 根据传输协议启动服务器
37
41
  if transport == 'stdio':
38
- # stdio模式直接运行
42
+ # stdio模式直接运行,不输出任何日志到stdout(MCP协议通信)
43
+ # 所有日志输出到stderr
44
+ if debug:
45
+ click.echo(f"[DEBUG] Starting in stdio mode", err=True)
39
46
  mcp_server.run(transport='stdio')
47
+
40
48
  elif transport == 'streamable-http':
41
49
  # Streamable HTTP模式
50
+ click.echo(f"[INFO] Starting aigroup-econ-mcp server", err=True)
51
+ click.echo(f"[INFO] Professional econometrics MCP tool for AI data analysis", err=True)
52
+ click.echo(f"[INFO] Transport protocol: {transport}", err=True)
53
+ click.echo(f"[INFO] Service address: http://{host}:{port}", err=True)
54
+ if mount_path:
55
+ click.echo(f"[INFO] Mount path: {mount_path}", err=True)
56
+
42
57
  mcp_server.run(
43
58
  transport='streamable-http',
44
59
  host=host,
45
60
  port=port,
46
61
  mount_path=mount_path or '/mcp'
47
62
  )
63
+
48
64
  elif transport == 'sse':
49
65
  # SSE模式
66
+ click.echo(f"[INFO] Starting aigroup-econ-mcp server", err=True)
67
+ click.echo(f"[INFO] Professional econometrics MCP tool for AI data analysis", err=True)
68
+ click.echo(f"[INFO] Transport protocol: {transport}", err=True)
69
+ click.echo(f"[INFO] Service address: http://{host}:{port}", err=True)
70
+ if mount_path:
71
+ click.echo(f"[INFO] Mount path: {mount_path}", err=True)
72
+
50
73
  mcp_server.run(
51
74
  transport='sse',
52
75
  host=host,
@@ -55,24 +78,5 @@ def main(port: int, host: str, transport: str, debug: bool, mount_path: str):
55
78
  )
56
79
 
57
80
 
58
- @click.command()
59
- def version():
60
- """Show version information"""
61
- click.echo("aigroup-econ-mcp v0.1.0")
62
- click.echo("Professional econometrics MCP tool")
63
- click.echo("Author: AIGroup")
64
-
65
-
66
- @click.group()
67
- def cli():
68
- """AIGroup 计量经济学 MCP 工具"""
69
- pass
70
-
71
-
72
- # 添加子命令
73
- cli.add_command(main)
74
- cli.add_command(version)
75
-
76
-
77
81
  if __name__ == "__main__":
78
82
  cli()
@@ -11,6 +11,7 @@ from dataclasses import dataclass
11
11
  import pandas as pd
12
12
  import numpy as np
13
13
  import statsmodels.api as sm
14
+ from statsmodels.tsa import stattools
14
15
  from scipy import stats
15
16
  from pydantic import BaseModel, Field
16
17
 
@@ -320,7 +321,7 @@ async def hypothesis_testing(
320
321
 
321
322
  elif test_type == "adf":
322
323
  # ADF单位根检验
323
- result = statsmodels.tsa.stattools.adfuller(data1)
324
+ result = stattools.adfuller(data1)
324
325
  test_result = HypothesisTestResult(
325
326
  test_type="adf",
326
327
  statistic=result[0],
@@ -370,11 +371,11 @@ async def time_series_analysis(
370
371
 
371
372
  try:
372
373
  # ADF单位根检验
373
- adf_result = statsmodels.tsa.stattools.adfuller(data)
374
+ adf_result = stattools.adfuller(data)
374
375
 
375
376
  # 自相关和偏自相关函数
376
- acf_values = statsmodels.tsa.stattools.acf(data, nlags=min(20, len(data)-1))
377
- pacf_values = statsmodels.tsa.stattools.pacf(data, nlags=min(20, len(data)-1))
377
+ acf_values = stattools.acf(data, nlags=min(20, len(data)-1))
378
+ pacf_values = stattools.pacf(data, nlags=min(20, len(data)-1))
378
379
 
379
380
  result = TimeSeriesStatsResult(
380
381
  adf_statistic=adf_result[0],
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aigroup-econ-mcp
3
- Version: 0.1.0
3
+ Version: 0.1.1
4
4
  Summary: 专业计量经济学MCP工具 - 让大模型直接进行数据分析
5
5
  Project-URL: Homepage, https://github.com/aigroup/aigroup-econ-mcp
6
6
  Project-URL: Repository, https://github.com/aigroup/aigroup-econ-mcp.git
@@ -0,0 +1,12 @@
1
+ aigroup_econ_mcp/__init__.py,sha256=JX9x6D6f8r4vFb51i_kN9LmCp57GIpPG6MfiMEQ3bf0,472
2
+ aigroup_econ_mcp/cli.py,sha256=QEQjK6Y7TpgLHpdd8QqQhCjATkJ3-BjYjiXaB4HbJMk,2972
3
+ aigroup_econ_mcp/server.py,sha256=2g8qZBCu3Sed5Wlqp1IDqBBl8R_WA4H8nvLO5V8p7RM,14892
4
+ aigroup_econ_mcp/tools/__init__.py,sha256=o_mAyxeUVxh-xBrggUzS5Yg0uO9FjKvroLXQhFO6ezg,141
5
+ aigroup_econ_mcp/tools/regression.py,sha256=d-WiOSRSPIw5p7nFE6JE34ktQrBBXmZp6eQPfHXTFvA,6230
6
+ aigroup_econ_mcp/tools/statistics.py,sha256=arw5ahGBH4d4pS-wRHh_5z35Yf4LMpiUblR_TLZSbZ0,3415
7
+ aigroup_econ_mcp/tools/time_series.py,sha256=YFGBsKKA1a1FIH3x6gphw4bhVjgw8c-72ibJ4wOeDEM,8122
8
+ aigroup_econ_mcp-0.1.1.dist-info/METADATA,sha256=Mph1KsWcJn39HcX37cBi5ovWmsz7-FH8ClFShDUsC98,5333
9
+ aigroup_econ_mcp-0.1.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
10
+ aigroup_econ_mcp-0.1.1.dist-info/entry_points.txt,sha256=j5ZJYOc4lAZV-X3XkAuGhzHtIRcJtZ6Gz8ZKPY_QTrM,62
11
+ aigroup_econ_mcp-0.1.1.dist-info/licenses/LICENSE,sha256=x4onvmayh9xPtyeLWVwM9av5hlduofabbcq2z45BbPY,1063
12
+ aigroup_econ_mcp-0.1.1.dist-info/RECORD,,
@@ -1,12 +0,0 @@
1
- aigroup_econ_mcp/__init__.py,sha256=z14iciYc9LvvPliqwqkOx4lOuAcJFQL9iIQeHo9JF5Y,472
2
- aigroup_econ_mcp/cli.py,sha256=3Cq2W9GMMcv3lsHwQkRcNJv5GbJo8pQZylopXyQPOF4,2193
3
- aigroup_econ_mcp/server.py,sha256=jBPJNUP5rAGsE0EuPBLglNaXt5eIsDjWzFMbwZSfMiQ,14918
4
- aigroup_econ_mcp/tools/__init__.py,sha256=o_mAyxeUVxh-xBrggUzS5Yg0uO9FjKvroLXQhFO6ezg,141
5
- aigroup_econ_mcp/tools/regression.py,sha256=d-WiOSRSPIw5p7nFE6JE34ktQrBBXmZp6eQPfHXTFvA,6230
6
- aigroup_econ_mcp/tools/statistics.py,sha256=arw5ahGBH4d4pS-wRHh_5z35Yf4LMpiUblR_TLZSbZ0,3415
7
- aigroup_econ_mcp/tools/time_series.py,sha256=YFGBsKKA1a1FIH3x6gphw4bhVjgw8c-72ibJ4wOeDEM,8122
8
- aigroup_econ_mcp-0.1.0.dist-info/METADATA,sha256=gSaDlcS73fcUcJJcX-AVlyZkfvC4XGG-v7a0W-HGbiw,5333
9
- aigroup_econ_mcp-0.1.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
10
- aigroup_econ_mcp-0.1.0.dist-info/entry_points.txt,sha256=j5ZJYOc4lAZV-X3XkAuGhzHtIRcJtZ6Gz8ZKPY_QTrM,62
11
- aigroup_econ_mcp-0.1.0.dist-info/licenses/LICENSE,sha256=x4onvmayh9xPtyeLWVwM9av5hlduofabbcq2z45BbPY,1063
12
- aigroup_econ_mcp-0.1.0.dist-info/RECORD,,