{
  "markdown": "# cron-mcp\n\nAn [MCP (Model Context Protocol)](https://modelcontextprotocol.io) server that lets AI coding agents — **Claude, Cursor, Copilot, Cline** — parse, validate, explain, and preview cron expressions.\n\nBuilt to catch **silent cron bugs** (impossible schedules, OR-semantics gotchas, midnight spikes) *before* a job is deployed — a class of mistake that's easy to make and hard to notice until a critical job silently fails to fire.\n\n## Why\n\nCron expressions are deceptively tricky. Common silent failures:\n\n- `0 0 30 2 *` → **never runs** (February has no 30th). Syntactically valid, semantically dead.\n- `0 0 1,15 * 1` → fires on **the 1st OR 15th OR Monday**, not \"the 1st and 15th if Monday\" (the classic dom+dow OR-semantics trap).\n- `*/7 * * * *` → uneven step; intervals drift (`:00, :07, :14, …, :56, :00` — not \"every 7 minutes\" cleanly).\n- `0 0 * * *` → **midnight spike**; every job in the system competes at 00:00.\n\n`cron-mcp` surfaces these as warnings, observations, and suggestions that the AI agent can act on — *before* you ship the schedule.\n\n## Tools exposed\n\n| Tool | Description |\n|------|-------------|\n| `parse_cron` | Parse a cron expression → plain-English description of when it fires. Supports 5-field standard cron + `L` (last), `W` (nearest weekday), `#` (nth weekday), named months/days. |\n| `validate_cron` | Deep validation: impossible schedules, OR-semantics, midnight spikes, uneven steps, leap-year edges, frequency estimate (~runs/year). |\n| `next_runs` | Compute the next N fire times as ISO-8601 + relative offsets. |\n| `cron_presets` | Library of common, proven schedules (every 5 min, hourly, weekdays 9am, monthly, quarterly, …). |\n\n## Install\n\n```bash\nnpm install -g cron-mcp-server\n```\n\n## Published links\n\n- [npm package](https://www.npmjs.com/package/cron-mcp-server) — installable release `0.1.2`\n- [Official MCP Registry](https://registry.modelcontextprotocol.io/v0.1/servers/io.github.takeaseatventure%2Fcron-mcp/versions/0.1.2) — registry record\n- [GitHub release](https://github.com/takeaseatventure/cron-mcp/releases/tag/v0.1.2) — downloadable source checkpoint\n\n## Configure\n\n### Claude Desktop\n\nAdd to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or the equivalent on your OS:\n\n```json\n{\n  \"mcpServers\": {\n    \"cron\": {\n      \"command\": \"cron-mcp-server\",\n      \"args\": []\n    }\n  }\n}\n```\n\n### Cursor\n\nAdd to `.cursor/mcp.json` (or `~/.cursor/mcp.json` for global):\n\n```json\n{\n  \"mcpServers\": {\n    \"cron\": {\n      \"command\": \"cron-mcp-server\"\n    }\n  }\n}\n```\n\n### VS Code (Copilot)\n\n```json\n{\n  \"mcp.servers\": {\n    \"cron\": {\n      \"type\": \"stdio\",\n      \"command\": \"cron-mcp-server\"\n    }\n  }\n}\n```\n\n### Direct (no install)\n\n```bash\nnpx cron-mcp-server\n```\n\n## Example usage\n\nOnce connected, just ask the agent in natural language:\n\n- *\"Validate this cron: `0 0 30 2 *`\"*\n- *\"When does `*/5 * * * *` next fire?\"*\n- *\"Give me a cron for every weekday at 9am\"*\n- *\"Is there anything risky about `0 0 1,15 * 1`?\"*\n\nThe agent calls the tools and returns structured, actionable results.\n\n## Engine\n\nThe cron engine is battle-tested: 638 lines, zero dependencies, originally extracted from a browser-based cron generator and hardened with 69 unit tests. This MCP server is a thin tool wrapper around it.\n\n## License\n\nMIT © [takeaseatventure](https://github.com/takeaseatventure)\n",
  "bytes": 3363,
  "sha": "962e769c610dc2eaf97a6b7bbc89b720c3f22925d91c4989ae73ac650e8dab7d",
  "repo_slug": "takeaseatventure/cron-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_takeaseatventure_cron_mcp_61b122fc/readme"
}