mcpField
C
Cron Tools

Cron Tools

ローカル
basitalisandhu.github.io開発ツール12 日前に更新

Cron Tools について

Cron Toolsは、Vixie形式の5フィールドcron式を解析、説明、検証し、実行時刻を計算するstdio専用のMCPサーバーです。ネットワークポートを開かず、タイムゾーンと夏時間の移行を考慮します。

主な機能

  1. 01cronフィールドとマクロの解析
  2. 02式の意味を平易な英語で説明
  3. 03構文検証と注意点の提示
  4. 04次回・過去の実行時刻の列挙
  5. 05タイムゾーンを考慮した時刻計算

活用シーン

  1. 01デプロイ前にcron式を確認する
  2. 02スケジュールの意味を把握する
  3. 03指定タイムゾーンで次回実行を確認する
  4. 04夏時間の切り替わり前後の実行履歴を調べる

MCP 対応

stdio経由で、cronの解析、説明、検証、実行時刻計算ツールをMCPクライアントに提供します。ネットワークポートは開きません。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"basitalisandhu-mcp-cron-tools": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/basitalisandhu/mcp-cron-tools:0.3.0"
]
}
}
}
起動コマンドdocker run -i --rm ghcr.io/basitalisandhu/mcp-cron-tools:0.3.0

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocighcr.io/basitalisandhu/mcp-cron-tools:0.3.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

cron-tools MCP サーバー

Vixie cron 方言(Linux crontab、GitHub Actions、ほとんどのスケジューラー)の5フィールドの cron 式を解析、説明、検証し、スケジュールします。リスト、範囲、ステップ、月名と曜日名、日曜日を表す0または7、@hourly から @yearly までのマクロに対応しています。タイムゾーンの計算には Intl のみを使用し、MCP SDK と zod 以外の依存関係はありません。

dev-mcp-servers の一部です。stdio トランスポートのみを使用し、サーバーがポートを開くことはありません。

ツール

ツール入力返される内容
parse_cronexpression各フィールドの生テキスト、ワイルドカードフラグ、受け付けるすべての値のほか、正規化された式とマクロの展開結果。
explain_cronexpression英語の1文です。たとえば */15 9-17 * * 1-5 は「月曜日から金曜日まで、9時から17時までの毎時、15分ごとに実行」となります。
validate_cronexpressionvalid、エラー、警告。両方の曜日フィールドが制限されている場合(OR セマンティクス)、選択した月には発生しない日、日曜日を表す 7、? の表記、マクロの展開結果が含まれます。
next_runsexpression、count?(1~100)、timezone?(IANA)、from?(ISO 8601)現地時刻(オフセット付き)とUTCでの次回実行時刻。夏時間への移行で飛ばされる壁時計時刻はその日に実行されず、重複する1時間は2回実行されます。10年後で停止します。
previous_runsnext_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 を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。