start_server.py1.64 kB
#!/usr/bin/env python3
"""
股票分析MCP服务器启动脚本
"""
import sys
import os
import logging
from pathlib import Path
# 添加当前目录到Python路径
current_dir = Path(__file__).parent
sys.path.insert(0, str(current_dir))
from config import LOGGING_CONFIG, MCP_SERVER_CONFIG
from stock_mcp_server import mcp
def setup_logging():
"""设置日志配置"""
logging.basicConfig(
level=getattr(logging, LOGGING_CONFIG["level"]),
format=LOGGING_CONFIG["format"],
handlers=[
logging.FileHandler(LOGGING_CONFIG["file"], encoding='utf-8'),
logging.StreamHandler(sys.stdout)
]
)
def main():
"""主函数"""
try:
# 设置日志
setup_logging()
logger = logging.getLogger(__name__)
logger.info(f"启动 {MCP_SERVER_CONFIG['name']} v{MCP_SERVER_CONFIG['version']}")
logger.info(f"描述: {MCP_SERVER_CONFIG['description']}")
# 检查依赖
try:
import akshare
import pandas
import fastmcp
logger.info("所有依赖包检查通过")
except ImportError as e:
logger.error(f"缺少依赖包: {e}")
logger.error("请运行: pip install -r requirements.txt")
sys.exit(1)
# 启动MCP服务器
logger.info("正在启动MCP服务器...")
mcp.run()
except KeyboardInterrupt:
logger.info("服务器已停止")
except Exception as e:
logger.error(f"服务器启动失败: {e}")
sys.exit(1)
if __name__ == "__main__":
main()