Cron Tools について
Cron Toolsは、Vixie形式の5フィールドcron式を解析、説明、検証し、実行時刻を計算するstdio専用のMCPサーバーです。ネットワークポートを開かず、タイムゾーンと夏時間の移行を考慮します。
主な機能
- 01cronフィールドとマクロの解析
- 02式の意味を平易な英語で説明
- 03構文検証と注意点の提示
- 04次回・過去の実行時刻の列挙
- 05タイムゾーンを考慮した時刻計算
活用シーン
- 01デプロイ前にcron式を確認する
- 02スケジュールの意味を把握する
- 03指定タイムゾーンで次回実行を確認する
- 04夏時間の切り替わり前後の実行履歴を調べる
MCP 対応
stdio経由で、cronの解析、説明、検証、実行時刻計算ツールをMCPクライアントに提供します。ネットワークポートは開きません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
docker run -i --rm ghcr.io/basitalisandhu/mcp-cron-tools:0.3.0ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ghcr.io/basitalisandhu/mcp-cron-tools:0.3.0stdioツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
cron-tools MCP サーバー
Vixie cron 方言(Linux crontab、GitHub Actions、ほとんどのスケジューラー)の5フィールドの cron 式を解析、説明、検証し、スケジュールします。リスト、範囲、ステップ、月名と曜日名、日曜日を表す0または7、@hourly から @yearly までのマクロに対応しています。タイムゾーンの計算には Intl のみを使用し、MCP SDK と zod 以外の依存関係はありません。
dev-mcp-servers の一部です。stdio トランスポートのみを使用し、サーバーがポートを開くことはありません。
ツール
| ツール | 入力 | 返される内容 |
|---|---|---|
parse_cron | expression | 各フィールドの生テキスト、ワイルドカードフラグ、受け付けるすべての値のほか、正規化された式とマクロの展開結果。 |
explain_cron | expression | 英語の1文です。たとえば */15 9-17 * * 1-5 は「月曜日から金曜日まで、9時から17時までの毎時、15分ごとに実行」となります。 |
validate_cron | expression | valid、エラー、警告。両方の曜日フィールドが制限されている場合(OR セマンティクス)、選択した月には発生しない日、日曜日を表す 7、? の表記、マクロの展開結果が含まれます。 |
next_runs | expression、count?(1~100)、timezone?(IANA)、from?(ISO 8601) | 現地時刻(オフセット付き)とUTCでの次回実行時刻。夏時間への移行で飛ばされる壁時計時刻はその日に実行されず、重複する1時間は2回実行されます。10年後で停止します。 |
previous_runs | next_runs と同じ入力 | from より厳密に前の実行時刻を、新しい順に現地時刻(オフセット付き)とUTCで返します。同じ夏時間のセマンティクスと10年間の範囲を使用します。 |
インストール
Claude Code:
claude mcp add cron-tools -- docker run --rm -i ghcr.io/basitalisandhu/mcp-cron-tools:0.2.2
すべてのプロジェクトで利用できるようにするには、-s user を追加します。.mcp.json を読み取るクライアント(Claude Code、Claude Desktop、Cursor)では、次のようにします。
{
"mcpServers": {
"cron-tools": {
"command": "docker",
"args": ["run", "--rm", "-i", "ghcr.io/basitalisandhu/mcp-cron-tools:0.2.2"]
}
}
}
エディターで実行される内容が、気付かないうちに更新によって変わらないよう、ここに示すバージョンを固定してください。パッケージはまだ npmjs.com に公開されていないため、npx は動作しません。GitHub Packages npm についてはリポジトリの README を参照してください。チェックアウトしたリポジトリのルートで npm install && npm run build を実行した後、"command": "node", "args": ["<path>/packages/cron-tools/dist/index.js"] を使用してください。
影響範囲
- ネットワーク:なし。
- ローカルファイル:なし。
- テレメトリー:なし。
注意事項
- 秒フィールド(6フィールドの Quartz)と
L、W、#は、説明を付けて拒否されます。 - 日と曜日の両方が制限されている場合、Vixie cron と同様に、いずれかの条件を満たす日が一致します。
ビルドとテスト
npm install # at the repository root
npm run build -w @basitalisandhu/mcp-cron-tools
npm test -w @basitalisandhu/mcp-cron-tools
テストでは node:test と SDK のインメモリトランスポートを使用し、ネットワークには接続しません。
ライセンス
MIT。LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。