The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Cron MCP listing page.
Cron-as-a-service MCP. Schedule any prompt on any cron expression; when it fires we POST the job to your callback URL. No LLM in our stack.
Your agent (Claude Desktop, Cursor, a custom script) does the thinking. We just:
X-Cron-SignatureThat's it. Perfect for daily briefings, hourly polls, weekly digests, or anything else that repeats on a fixed schedule and needs to run through an LLM.
Hosted at cron.regiq.in or self-host with the Docker Compose below.
Visit https://cron.regiq.in, sign in with Google or GitHub.
Generate an MCP API key on the dashboard, copy it.
Add to Claude Desktop's claude_desktop_config.json (or Cursor / any MCP client):
Have your agent call schedule_job with a cron expression, a prompt, and the URL you want us to POST to when it fires.
| Tool | Purpose |
|---|---|
schedule_job(name, cron, prompt, callbackUrl, ...) | Create a scheduled prompt. |
list_jobs() | Return every job owned by the calling key. |
get_job(id) | One job + the last 20 fire attempts. |
update_job(id, ...) | Partial update. Set isActive: false to pause. |
delete_job(id) | Permanent delete. |
When a job fires, we POST:
Verify the signature by re-hashing the raw body with your shared signing secret (env CRON_WEBHOOK_SIGNING_SECRET) and comparing to the X-Cron-Signature header. Return any 2xx to mark the fire as ok — anything else is logged as a failure and the schedule still advances (so a failing callback won't stop future runs).
You'll need:
openid, email, profile. Redirect: <PUBLIC_BASE_URL>/api/auth/callback/googlengrok http 3015 locally)No LLM key required. Your callback is where inference happens.
MIT. See LICENSE.