Skip to main content
Glama

MCP Scheduler

by RadiumGu
MIT License
3
  • Apple
  • Linux
start_with_aws_q.py2.77 kB
#!/usr/bin/env python3 # 简化版的 start_with_aws_q.py # 使用 AWS Q 模型的启动脚本 import os import sys import json import logging # 设置环境变量 os.environ["MCP_SCHEDULER_TRANSPORT"] = "stdio" os.environ["MCP_SCHEDULER_LOG_LEVEL"] = "DEBUG" os.environ["MCP_SCHEDULER_LOG_FILE"] = "/home/ec2-user/scheduler-mcp/mcp_scheduler.log" os.environ["MCP_SCHEDULER_DB_PATH"] = "/home/ec2-user/scheduler-mcp/scheduler.db" # 设置日志记录 logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', filename='/home/ec2-user/scheduler-mcp/start_with_aws_q.log') logger = logging.getLogger(__name__) # 导入原始的 main 模块 import main # 导入 Executor 类 from mcp_scheduler.executor import Executor # 保存原始的 _execute_ai_task 方法 original_execute_ai_task = Executor._execute_ai_task # 定义新的 _execute_ai_task 方法,使用 AWS Q CLI async def execute_ai_task_with_aws_q(self, prompt: str): """使用 AWS Q 模型处理 AI 任务""" import asyncio import tempfile if not prompt: return None, "No prompt specified" logger.info("Using AWS Q model for AI task") print("Using AWS Q model for AI task", file=sys.stderr) # 创建临时文件存储提示词 with tempfile.NamedTemporaryFile(mode='w+', delete=False, suffix='.txt') as f: prompt_file = f.name f.write(prompt) try: # 调用 AWS Q CLI 生成回答 process = await asyncio.create_subprocess_exec( "q", "generate", "-f", prompt_file, stdout=asyncio.subprocess.PIPE, stderr=asyncio.subprocess.PIPE ) stdout, stderr = await process.communicate() # 清理临时文件 os.unlink(prompt_file) if process.returncode != 0: error_msg = stderr.decode() if stderr else "Unknown error" logger.error(f"AWS Q CLI error: {error_msg}") return None, f"AWS Q CLI error: {error_msg}" return stdout.decode().strip(), None except Exception as e: # 清理临时文件 if os.path.exists(prompt_file): os.unlink(prompt_file) logger.exception("Error using AWS Q model") return None, f"AWS Q model error: {str(e)}" # 替换 Executor 类的 _execute_ai_task 方法 Executor._execute_ai_task = execute_ai_task_with_aws_q # 打印确认信息 print("AWS Q 模型补丁已应用 - 已修改 Executor 类以支持 AWS Q 模型", file=sys.stderr) # 运行原始的 main 函数 if __name__ == "__main__": print("启动 MCP Scheduler (使用 AWS Q 模型)...", file=sys.stderr) main.main()

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/RadiumGu/Q-scheduler-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server