#!/usr/bin/env python3
"""
主入口文件
用于启动 Dify MCP 服务器，并配置命令行参数
"""
import os
import sys

# Mock 配置参数
def setup_mock_arguments():
    """
    设置模拟命令行参数
    这些参数可以根据实际需求进行修改
    """
    # 默认配置
    default_config = {
        "base_url": "http://192.168.2.236:3001/v1",
        "app_sks": ["app-YFHByB4whARWVqXN2LcuPudq"],
        "mode_type": "workflow",
        "transport": "stdio"
    }
    
    # 如果没有提供命令行参数，则添加默认参数
    if len(sys.argv) == 1:
        sys.argv.extend([
            "--base-url", default_config["base_url"],
            "--app-sks", *default_config["app_sks"],
            "--mode-type", default_config["mode_type"]
        ])
    
    return default_config


def main():
    """
    主函数：设置命令行参数并启动服务器
    """
    # 设置模拟命令行参数
    config = setup_mock_arguments()
    
    # 导入并运行 MCP 服务器
    try:
        from src.create_mcp import run_main
        
        # 获取传输模式
        transport_mode = config.get("transport", "stdio")
        
        # 运行服务器（不输出额外信息，避免干扰 STDIO 通信）
        run_main(transport=transport_mode)
        
    except ImportError as e:
        print(f"[ERROR] 导入错误: {e}", file=sys.stderr)
        print("请确保已正确安装所有依赖包", file=sys.stderr)
        sys.exit(1)
    except Exception as e:
        print(f"[ERROR] 运行错误: {e}", file=sys.stderr)
        sys.exit(1)


if __name__ == "__main__":
    main()
