项目简介
Cronicorn MCP 服务器是 Model Context Protocol (MCP) 标准的实现,旨在将 Cronicorn 的强大自适应任务调度能力暴露给大型语言模型 (LLM) 客户端。它允许 AI 助手以标准化的方式管理、监控和交互 Cronicorn 中定义的作业和端点,实现智能化的任务自动化。
主要功能点
- 资源管理: 托管 Cronicorn 的文档作为可供 LLM 查阅的资源,帮助 AI 理解 Cronicorn 的概念和使用方式。
- 工具调用: 提供一系列工具,允许 LLM 执行以下操作:
- 创建、获取、列出、更新、归档、暂停和恢复任务作业。
- 为现有作业添加、更新、删除、获取和列出执行端点。
- 对端点应用自适应调度提示(如调整执行间隔、安排单次运行、暂停/恢复)。
- 清除端点上的所有 AI 提示,或重置失败计数。
- 获取端点运行历史、详细运行日志和健康摘要。
- 获取聚合的仪表盘统计数据。
- 安全认证: 通过 OAuth 2.0 Device Authorization Grant 机制与 Cronicorn API 进行安全认证,确保只有授权的 AI 助手才能访问和管理任务。
- 标准通信: 支持 Stdio 传输协议,通过 JSON-RPC 与 MCP 客户端通信,提供稳定的交互框架。
安装步骤
在本地运行 Cronicorn MCP 服务器,您需要先确保已安装 Node.js 和 pnpm。
- 克隆仓库:
git clone https://github.com/weskerllc/cronicorn.git cd cronicorn - 安装依赖:
pnpm install - 构建 MCP 服务器:
pnpm build --filter=@cronicorn/mcp-server - 启动 Cronicorn API 服务器 (可选,推荐):
如果您希望 MCP 服务器能够与完整的 Cronicorn 应用程序交互,您需要启动 Cronicorn API 和相关服务:
API 服务器默认运行在 'http://localhost:3333'。pnpm db # 启动数据库 pnpm db:migrate # 运行数据库迁移 pnpm dev # 启动 Cronicorn Web 和 API 服务 - 运行 MCP 服务器:
首次运行时,MCP 服务器会提示您进行 OAuth 设备授权流程。您需要在浏览器中访问一个URL并输入提供的用户代码进行确认,以便 MCP 服务器获取访问 Cronicorn API 的权限。pnpm start --filter=@cronicorn/mcp-server
服务器配置
MCP 客户端需要以下 JSON 格式的配置信息才能连接到 Cronicorn MCP 服务器:
{ "server": { "name": "cronicorn", "command": "pnpm", "args": ["start", "--filter=@cronicorn/mcp-server"], "description": "Cronicorn MCP 服务器,提供智能任务调度和管理功能。" }, "authentication": { "type": "oauth2_device_flow" } }
- 'server.name': MCP 服务器的唯一名称,用于客户端识别。
- 'server.command': 用于启动 MCP 服务器的命令行可执行文件(例如,'pnpm')。
- 'server.args': 传递给 'command' 的参数列表,用于启动 Cronicorn MCP 服务器。这些参数告诉 'pnpm' 运行哪个项目('start --filter=@cronicorn/mcp-server')。
- 'server.description': MCP 服务器的简要描述,供客户端或用户参考。
- 'authentication.type': 指示认证类型为 OAuth 2.0 设备流,服务器启动时会引导用户完成认证过程。
基本使用方法
启动 Cronicorn MCP 服务器并完成认证后,它将通过标准输入输出 (Stdio) 接口等待 MCP 客户端的连接和请求。MCP 客户端(例如 AI 助手或专门的工具)可以通过 JSON-RPC 协议与服务器通信,执行以下操作:
- 发现能力: 客户端可以请求服务器声明其支持的所有工具和资源,了解 Cronicorn 提供的功能。
- 调用工具: AI 助手可以根据需要调用 Cronicorn 的工具。例如,为了创建一个新的自适应 HTTP 作业,AI 可以调用 'POST_jobs' 工具并提供作业名称和描述。之后,可以调用 'POST_jobs_jobId_endpoints' 来为该作业添加具体的执行端点。
- 获取资源: 客户端可以请求 Cronicorn 的文档资源,以获取关于如何使用各项功能的详细说明或特定概念的解释。
- 智能交互: AI 可以根据系统状态或用户指令,调用自适应调度工具,如 'POST_endpoints_id_hints_interval' 来调整端点的执行频率以应对高负载,或 'POST_endpoints_id_pause' 来暂停某个端点进行维护。
信息
分类
AI与计算