KICCO_AI_IMAGE/mcp_server/run.py

56 lines
1.7 KiB
Python
Raw Normal View History

2025-04-24 19:25:29 +08:00
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
MCP服务器启动脚本
--------------
通过命令行启动MCP服务器
"""
import argparse
import logging
import sys
from mcp_server import run
def main():
"""主函数,解析命令行参数并启动服务器"""
# 配置命令行参数解析
parser = argparse.ArgumentParser(description='启动Model Context Protocol (MCP)服务器')
# 服务器配置参数
parser.add_argument('--name', type=str, default='ComfyUI-MCP',
help='服务器名称 (默认: ComfyUI-MCP)')
parser.add_argument('--host', type=str, default='127.0.0.1',
help='服务器监听地址 (默认: 127.0.0.1)')
parser.add_argument('--port', type=int, default=8189,
help='服务器监听端口 (默认: 8189)')
parser.add_argument('--verbose', action='store_true',
help='启用详细日志输出')
# 解析命令行参数
args = parser.parse_args()
# 配置日志级别
log_level = logging.DEBUG if args.verbose else logging.INFO
logging.basicConfig(
level=log_level,
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s'
)
# 记录启动信息
logging.info(f"正在启动MCP服务器 '{args.name}'{args.host}:{args.port}")
try:
# 启动服务器
run(server_name=args.name, host=args.host, port=args.port)
except KeyboardInterrupt:
logging.info("服务器被用户中断")
return 0
except Exception as e:
logging.error(f"服务器启动失败: {str(e)}")
return 1
return 0
if __name__ == "__main__":
sys.exit(main())