Token导航 LogoToken导航TokenDH.com
MCP Cron logo
开发工具stdio官方级别未说明来源级核验

MCP Cron

MCP Server

mcp-cron

MCP Server that schedule command or AI prompt

工具数

11

提示词数

0

GitHub Stars

18

资源数

0
GoClaude开发工具ClaudeCursorClaude Desktop

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

jolks

提供方

jolks

最后核验

2026/5/18 02:53

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx -y mcp-cron

详细介绍

MCP Cron

模型上下文协议(MCP)服务器,用于通过标准化的API调度和管理任务。服务器提供任务调度功能,支持shell命令和AI驱动的任务,所有这些都可以通过MCP协议访问。

特性

  • 使用cron表达式将shell命令或提示符安排给AI任务
  • AI可以访问MCP服务器
  • 管理任务 通过MCP协议
  • 通过命令输出捕获执行任务
  • 跨重启的任务持久性(SQLite)
  • 多实例安全——多个实例可以共享同一个数据库,而不会重复执行
  • 支持多个具有不同类型的隔离实例 --db-path

安装

npm(推荐)

npx -y mcp-cron

克劳德代码

claude mcp add mcp-cron -- npx -y mcp-cron

光标/克劳德桌面

{
  "mcpServers": {
    "mcp-cron": {
      "command": "npx",
      "args": ["-y", "mcp-cron", "--transport", "stdio"]
    }
  }
}

推荐配置

与AI提供商、模型选择和睡眠预防进行更完整的设置:

{
  "mcpServers": {
    "mcp-cron": {
      "command": "npx",
      "args": [
        "-y", "mcp-cron",
        "--transport", "stdio",
        "--prevent-sleep",
        "--ai-provider", "anthropic",
        "--ai-model", "claude-sonnet-4-5-20250929"
      ],
      "env": {
        "ANTHROPIC_API_KEY": "your-api-key"
      }
    }
  }
}

使用LiteLLM

通过以下方式路由AI任务 轻量级LLM 代理:

{
  "mcpServers": {
    "mcp-cron": {
      "command": "npx",
      "args": [
        "-y", "mcp-cron",
        "--transport", "stdio",
        "--prevent-sleep",
        "--ai-base-url", "https://litellm.yourcompany.com",
        "--ai-model", "claude-sonnet-4-5-20250929"
      ],
      "env": {
        "MCP_CRON_AI_API_KEY": "sk-your-litellm-key"
      }
    }
  }
}
--ai-model 值应与LiteLLM代理配置中的模型名称匹配。LiteLLM公开了一个与OpenAI兼容的API,因此 --ai-provider 可以省略(默认为 openai).当设置自定义基本URL时,mcp-cron会自动使用Chat Completions API而不是Responses API。响应API仅用于直接OpenAI(api.openai.com)Azure OpenAI(*.openai.azure.com)端点。
命令行参数环境变量 所有可用选项。

从源头构建

先决条件

  • 达到1.24.0或更高
# Clone the repository
git clone https://github.com/jolks/mcp-cron.git
cd mcp-cron

# Build the application as mcp-cron binary
go build -o mcp-cron cmd/mcp-cron/main.go

用法

服务器支持两种传输模式:

  • HTTP(流式HTTP):浏览器和网络客户端的默认基于HTTP的传输
  • 标准:直接管道和过程间通信的标准输入/输出传输
客户端配置文件位置
光标~/.cursor/mcp.json
克劳德台式机(Mac)~/Library/Application Support/Claude/claude_desktop_config.json
克劳德桌面(Windows)%APPDATA%\Claude\claude_desktop_config.json

HTTP(流式HTTP)

# Start the server with Streamable HTTP transport (default mode)
# Default to localhost:8080
./mcp-cron

# Start with custom address and port
./mcp-cron --address 127.0.0.1 --port 9090

配置文件示例

{
  "mcpServers": {
    "mcp-cron": {
      "url": "http://localhost:8080"
    }
  }
}

标准

stdio传输对于以下情况特别有用:

  • 与其他工艺直接管道连接
  • 与CLI工具集成
  • 在没有HTTP的环境中进行测试
  • Docker容器集成

启动Cursor IDE和Claude Desktop后,它将 自动地 启动服务器

配置文件示例

{
  "mcpServers": {
    "mcp-cron": {
      "command": "
/mcp-cron",
      "args": ["--transport", "stdio"]
    }
  }
}

命令行参数

支持以下命令行参数:

参数描述默认值
--address将服务器绑定到的地址localhost
--port将服务器绑定到的端口8080
--transport运输方式: httpstdiohttp
--log-level日志记录级别: debug, info, warn, error, fatalinfo
--log-file日志文件路径stdout
--version显示版本信息并退出false
--ai-provider人工智能提供商: openaianthropicopenai
--ai-base-urlOpenAI兼容端点的自定义基本URL(例如Ollama、vLLM、Groq、LiteLLM)未设置
--ai-model用于AI任务的AI模型gpt-4o
--ai-max-iterations支持工具的AI任务的最大迭代次数20
--mcp-config-pathMCP配置文件的路径~/.cursor/mcp.json
--db-path结果历史记录的SQLite数据库路径~/.mcp-cron/results.db
--prevent-sleep防止系统在mcp-cron运行时休眠(macOS和Windows)false
--poll-interval多久检查一次到期任务1s

环境变量

支持以下环境变量:

环境变量描述默认值
MCP_CRON_SERVER_ADDRESS将服务器绑定到的地址localhost
MCP_CRON_SERVER_PORT将服务器绑定到的端口8080
MCP_CRON_SERVER_TRANSPORT运输方式: httpstdiohttp
MCP_CRON_SERVER_NAME已弃用 --忽视;服务器名称是固定的,以确保自引用检测正常工作-
MCP_CRON_SERVER_VERSION已弃用 --忽视;版本在构建时通过ldflags设置-
MCP_CRON_SCHEDULER_DEFAULT_TIMEOUT任务执行的默认超时10m
MCP_CRON_LOGGING_LEVEL日志记录级别: debug, info, warn, error, fatalinfo
MCP_CRON_LOGGING_FILE日志文件路径stdout
MCP_CRON_AI_PROVIDER人工智能提供商: openaianthropicopenai
MCP_CRON_AI_BASE_URLOpenAI兼容端点的自定义基本URL(例如Ollama、vLLM、Groq、LiteLLM)未设置
MCP_CRON_AI_API_KEY通用回退API密钥(未设置特定于提供程序的密钥时使用)未设置
OPENAI_API_KEY用于AI任务的OpenAI API密钥未设置
ANTHROPIC_API_KEY人工智能任务的Anthropic API键未设置
MCP_CRON_ENABLE_OPENAI_TESTS启用OpenAI集成测试false
MCP_CRON_AI_MODEL用于AI任务的LLM模型gpt-4o
MCP_CRON_AI_MAX_TOOL_ITERATIONS启用工具的任务的最大迭代次数20
MCP_CRON_MCP_CONFIG_FILE_PATHMCP配置文件的路径~/.cursor/mcp.json
MCP_CRON_STORE_DB_PATH结果历史记录的SQLite数据库路径~/.mcp-cron/results.db
MCP_CRON_PREVENT_SLEEP防止系统在mcp-cron运行时休眠(macOS和Windows)false
MCP_CRON_POLL_INTERVAL多久检查一次到期任务(Go工期格式)1s

睡眠预防

在笔记本电脑上,系统可能会进入睡眠状态,并阻止计划任务按时运行。使用 --prevent-sleep 用于在mcp-cron运行时保持系统唤醒的标志:

mcp-cron --prevent-sleep --transport stdio

或者通过环境变量:

MCP_CRON_PREVENT_SLEEP=true mcp-cron --transport stdio
平台机制注释
macOScaffeinate防止闲置睡眠;出口时自动清理
窗户SetThreadExecutionState防止闲置睡眠;出口时自动清理
Linux不支持Linux服务器通常不会自动休眠
注: 这只能防止空闲睡眠。它不会阻止睡眠关闭笔记本电脑盖或按下电源按钮。

日志记录

当使用默认HTTP传输运行时,日志会输出到控制台。

当使用stdio传输运行时,日志会被重定向到 mcp-cron.log 日志文件,以防止对JSON-RPC协议的干扰:

  • 日志文件位置:与相同的位置 mcp-cron 二元的。
  • 任务输出、执行细节和服务器诊断将写入此文件。
  • stdout/stderr流仅对协议消息保持干净。

可用的MCP工具

服务器通过MCP协议公开了几个工具:

  1. list_tasks -列出所有任务(计划任务和按需任务)
  2. get_task -按ID获取特定任务
  3. add_task -添加新的shell命令任务(提供 schedule 用于重复,或按需省略)
  4. add_ai_task -添加带有提示的新AI(LLM)任务(提供 schedule 用于重复,或按需省略)
  5. update_task -更新现有任务
  6. remove_task -按ID删除任务
  7. run_task -按ID执行任务,等待完成,并返回结果(对于按需任务或计划任务的临时运行)
  8. enable_task -启用任务,使其按计划运行或可通过以下方式触发 run_task
  9. disable_task -禁用任务,使其停止运行且无法触发
  10. get_task_result -获取任务的执行结果(默认情况下为最新结果,或具有以下参数的最近历史记录 limit)
  11. query_task_result -对数据库运行只读SQL查询(仅限SELECT,最多1000行)

任务格式

任务具有以下结构:

{
  "id": "task_a3f7b2c9e1d04f68",
  "name": "Example Task",
  "schedule": "0 */5 * * * *",
  "command": "echo 'Task executed!'",
  "prompt": "Analyze yesterday's sales data and provide a summary",
  "type": "shell_command",
  "description": "An example task that runs every 5 minutes",
  "enabled": true,
  "lastRun": "2025-01-01T12:00:00Z",
  "nextRun": "2025-01-01T12:05:00Z",
  "status": "completed",
  "createdAt": "2025-01-01T00:00:00Z",
  "updatedAt": "2025-01-01T12:00:00Z"
}

对于shell命令任务,请使用 command 字段指定要执行的命令。 对于AI任务,请使用 prompt 字段指定AI应该做什么。 这 type 字段可以是 shell_command (默认)或 AI.

计划任务与按需任务:

  • 预定:提供 schedule (cron表达式)--任务按照该计划自动运行。
  • 手动扫描:省略 schedule --任务处于空闲状态,直到通过触发 run_task.

run_task 还处理计划任务,以便在正常时间表之外临时执行。执行后,计划任务恢复正常进度;按需任务返回空闲状态。

任务状态

任务可以具有以下状态值:

  • pending -任务尚未运行
  • running -任务当前正在运行
  • completed -任务已成功完成
  • failed -任务在执行过程中失败
  • disabled -任务已禁用,无法按计划运行

Cron表达式格式

Cron表达式对于计划任务是必需的,对于按需任务则省略。调度器使用 用于解析的库。格式包括秒:

┌───────────── second (0 - 59) (Optional)
│ ┌───────────── minute (0 - 59)
│ │ ┌───────────── hour (0 - 23)
│ │ │ ┌───────────── day of the month (1 - 31)
│ │ │ │ ┌───────────── month (1 - 12)
│ │ │ │ │ ┌───────────── day of the week (0 - 6) (Sunday to Saturday)
│ │ │ │ │ │
│ │ │ │ │ │
* * * * * *

示例:

  • 0 */5 * * * * -每5分钟(0秒)
  • 0 0 * * * * -每小时
  • 0 0 0 * * * -每天午夜
  • 0 0 12 * * MON-FRI -每个工作日中午

发展

建筑

go build -o mcp-cron cmd/mcp-cron/main.go

测试

docs/testing.md 完整的测试指南,包括集成测试和AI任务测试。

致谢

目录标签

目录标签

GoClaude开发工具developer-toolsautomationcronmcpopenaicursormcp-server任务调度本地部署AI任务管理cron表达式多实例安全SQLite持久化

支持客户端

ClaudeCursorClaude Desktop

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

mcp-cron

工具数量(toolCount,工具数)

11

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP