项目简介

MCP计划任务与自动化是一个基于Model Context Protocol (MCP) 的服务器端应用,它允许用户通过标准化的MCP接口来安排和管理定时任务,支持执行传统的Shell命令和AI驱动的任务。

主要功能点

  • 任务计划: 使用灵活的Cron表达式来安排Shell命令或AI任务的执行时间。
  • 自动化执行: 支持定时运行预设的Shell命令,或向AI模型发送Prompt以执行AI任务(如数据分析、报告生成等)。
  • MCP任务管理: 通过MCP协议提供的工具(Tools)来远程管理任务,包括添加、查看、更新、删除、启用和禁用任务。
  • 执行结果: 捕获并存储任务的执行输出和状态。
  • 多种传输模式: 支持SSE (Server-Sent Events) 和 Stdio 两种传输协议与MCP客户端通信。
  • AI能力集成: AI任务可以被配置为调用其他MCP服务器提供的工具。

安装步骤

  1. 确保您的系统安装了Go编程环境,版本要求1.23.0或更高。
  2. 打开终端或命令提示符,克隆仓库:
    git clone https://github.com/jolks/mcp-cron.git
    cd mcp-cron
  3. 编译项目生成可执行文件:
    go build -o mcp-cron cmd/mcp-cron/main.go
    这将在当前目录下生成名为 'mcp-cron' 的可执行文件。

服务器配置 (用于MCP客户端)

MCP客户端(如Cursor、Claude Desktop等)需要配置如何连接到此服务器。通常在客户端的配置文件中进行设置(具体位置参考客户端文档,例如 ~/.cursor/mcp.json)。配置为一个JSON对象,示例如下:

{
  "mcpServers": {
    "mcp-cron": { // 您为此MCP服务器定义的名称
      "url": "http://localhost:8080/sse" // 如果使用SSE模式,指定服务器监听的URL
    }
  }
}

或者,如果您希望客户端自动启动Stdio模式的服务器:

{
  "mcpServers": {
    "mcp-cron": { // 您为此MCP服务器定义的名称
      "command": "<path to where mcp-cron binary is located>/mcp-cron", // 指定mcp-cron可执行文件的完整路径
      "args": ["--transport", "stdio"] // 启动时传递的参数,指定使用stdio模式
    }
  }
}

请将 '<path to where mcp-cron binary is located>' 替换为实际的可执行文件路径。您还可以根据需要添加其他命令行参数,例如 '--log-level info'。

基本使用方法

  1. 启动服务器:
    • SSE模式 (默认): 在终端运行 './mcp-cron'。服务器将监听配置的地址和端口(默认是 'localhost:8080')。您可以使用 '--address' 和 '--port' 参数自定义。
    • Stdio模式: 在终端运行 './mcp-cron --transport stdio'。如果您的MCP客户端配置了以Stdio模式启动此服务器,客户端通常会在需要时自动运行此命令。
  2. 连接客户端: 根据上述“服务器配置”部分说明,在您的MCP客户端中配置此服务器的连接信息。
  3. 管理任务: 在连接成功的MCP客户端中,您将能够发现并调用mcp-cron提供的任务管理工具(Tool),通过客户端界面或直接调用来列出、添加、获取、更新、移除、启用或禁用任务。

日志输出:在使用stdio模式时,日志信息默认会写入到可执行文件同目录下的 'mcp-cron.log' 文件中,以便stdout/stderr通道保持干净用于MCP协议通信。

信息

分类

开发者工具