silentwatch-mcp
silentwatch-mcp
監視ツールが検知できないcronの失敗をキャッチします。 スケジュール済みジョブの状態(実行状況、期限切れジョブ、終了コード0だが有用な出力がないサイレント障害)をClaudeやMCP対応エージェントに提供するMCPサーバーです。OpenClawスケジューラー、システムcron、systemdタイマーでそのまま動作します。
機能
スケジュール済みジョブを運用するチームなら、少なくとも一度は以下のような経験があるはずです:
サイレント障害 — ジョブは実行され、終了コード0を返したが、有用な出力がなかった(Web検索cronが空の結果を返す、バックアップが0バイトのファイルを書き込む、本文に
<no rows>と書かれたダイジェストメールが送信されるなど)。従来の監視ツールでは「正常」と判定されますが、データは壊れたままです。アラートなしの期限切れ — ジョブが3日間停止していたが、誰も監視していなかったため気づかなかった。
最終成功のドリフト — 1時間ごとに実行されるジョブが、過去12回の試行のうち1回しか成功していない。直近の実行が正常だったため、全員が健全だと誤認している。
監査証跡の欠落 — コンプライアンスチェックのために特定のジョブが最後に完了した日時を知る必要があるが、唯一の「ログ」である
journalctlの出力が先週ローテーションされて消えてしまった。
silentwatch-mcp は、この可視性をAIエージェントが直接クエリできるMCPツールとして公開します。メトリクスパイプラインも、個別のダッシュボードも、SaaSのサブスクリプションも不要です。
> claude: which of my cron jobs have silent failures in the last 24 hours?
[MCP tool: find_silent_failures]
3 jobs flagged:
• web-search-refresh — ran 12× successfully but output empty in 8 (66% silent fail rate)
• daily-summary — ran 1× successfully (24× expected); output normal
• audit-snapshot — last success 5 days ago, all subsequent runs returned exit 0 with empty bodysilentwatch-mcp を選ぶ理由
既存のツール(Cronitor、Healthchecks.io、Datadog、Prometheus)が対応していない3つの機能を提供します:
終了コードだけでなく、サイレント障害を検出。 従来のcron監視は
終了コード0 = 成功と見なします。私たちは設定可能なルールに基づいて 出力 をチェックします:空の出力、過去の中央値と比較した長さの異常、終了コード0にもかかわらずstdoutに含まれるエラーキーワード、実行時間の異常など。「正常に実行された」はずなのに有用な結果を返さないジョブ、これこそが数週間も隠れ続ける障害モードです。私たちはこれをキャッチします。MCPネイティブ、統合レイヤー不要。 Claude Desktop、Cline、Continue、OpenClawエージェントなど、MCP対応クライアントであれば直接クエリ可能です。Grafanaプラグインも、APIラッパーも、手動で解析するJSONも不要です。
標準でマルチソース対応。 OpenClawネイティブのJSONLログ、システムcrontab (
/etc/crontab+/etc/cron.d/*+ ユーザーごとのcrontab -l)、systemdタイマー (systemctl list-timers+journalctl) — これら4つのバックエンドがv0.3から同梱されているため、お使いのスケジューラーに関わらずsilentwatch-mcpを実行できます。ベンダーロックインはありません。
Datadogでは過剰で、「月額0ドルのオープンソースMCP」が適正価格であるような、40ドルのVPSで運用するSMBセルフホストユーザー向けに構築されています。もちろん、エンタープライズ環境でもサイレント障害検出の価値は同様です。
ツール一覧
サーバーは以下のMCPツールを登録します(詳細は SPEC.md を参照):
ツール | 機能 |
| 既知のすべてのcronジョブと最終実行サマリーを列挙 |
| 特定ジョブの詳細ステータス:最終実行、最終成功、期間内の成功率 |
| タイミング、ステータス、出力スニペットを含む最近の実行履歴 |
| スケジュール上は実行されるべきだが実行されていないジョブ |
| 「正常」に実行されたが、出力が疑わしいジョブ |
| 特定ジョブの最近のログ出力 |
リソース:
cron://jobs— すべてのジョブのリスト(マニフェスト)cron://job/{id}— 個別のジョブマニフェスト + 最近の実行履歴cron://run/{id}— 完全な出力を含む個別の実行インスタンス
プロンプト:
diagnose-overdue— 期限切れジョブの診断プロンプトテンプレートsummarize-cron-health— cronアクティビティと異常のデイリーダイジェスト
クイックスタート
v0.3 beta — 4つのバックエンドすべてを同梱 + cron-schedule解析 (croniter) によるリアルな期限切れ検出。 Mock、OpenClaw JSONL、crontab、systemdバックエンドはすべて本番環境対応済みです。74のテストを通過。v1.0に向けて仕上げの段階です:PyPIリリース、GitHub Actions CI、MCPレジストリへの登録。
インストール
pip install silentwatch-mcp # not yet on PyPI; install from source for now:
pip install -e .Claude Desktopの設定
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) または %APPDATA%\Claude\claude_desktop_config.json (Windows) に追加してください:
{
"mcpServers": {
"silentwatch": {
"command": "python",
"args": ["-m", "silentwatch_mcp"],
"env": {
"SILENTWATCH_BACKEND": "mock"
}
}
}
}バックエンド(v0.3時点で4つすべて同梱):
SILENTWATCH_BACKEND=mock— サンプルデータを返します(開発時のデフォルト)SILENTWATCH_BACKEND=openclaw-jsonl— OpenClawのネイティブcron実行JSONLファイルを解析します(SILENTWATCH_OPENCLAW_LOGSにディレクトリを指定、デフォルトは~/.openclaw/cron-runs/)。最もリッチなデータ(完全な実行履歴 + サイレント障害検出)が得られます。SILENTWATCH_BACKEND=crontab—/etc/crontab+/etc/cron.d/*+ ユーザーcrontab (crontab -l) を解析します。最終実行は/var/log/syslogまたは/var/log/cronから推測されます(SILENTWATCH_SYSLOGで上書き可能)。SILENTWATCH_BACKEND=systemd—systemctl list-timers --all --output=json+journalctl -u <unit>を解析して実行履歴を取得します。OnCalendar=をスケジュールフィールドに反映します。
Mock以外のバックエンドは、基盤となるツールが存在しないプラットフォームやホストでは空の結果を正常に返すため、環境をまたいで設定をそのままにしておいても安全です。
Claude Desktopの再起動
サーバーは silentwatch として登録されます。テスト:
Show me all my cron jobs and their last-run status.
ロードマップ
バージョン | スコープ | ステータス |
v0.1 | プロトコル接続、mockバックエンド、スタブデータで6つのツールを登録、テスト通過 | ✅ 完了 |
v0.2 | OpenClaw JSONLバックエンドの実装(実際のcron実行解析、不正な行の処理、サイレント障害の強化) | ✅ 完了 (2026-05-02) |
v0.3 | Crontab + systemdバックエンド、cron-schedule解析によるリアルな期限切れ検出 (croniter)、35の新規テスト | ✅ 完了 (2026-05-02) |
v1.0 | 仕上げ:PyPIリリース、GitHub Actions CI、MCPレジストリへの登録 (Glama + PulseMCP)、サイレント障害ルール設定の洗練 | ⏳ フェーズ1出荷目標 (5月18日の週) |
v1.x | 追加バックエンド(Coworkスケジューラー、Claude Codeバックグラウンドタスク、汎用JSON設定)、アラート用Webhookエミッター | ⏳ フェーズ2以降 |
お使いのスタックへの適応が必要ですか?
silentwatch-mcp は4つのバックエンド(mock、OpenClaw JSONL、crontab、systemd)を同梱しています。もしお使いのスケジューラーがAWS EventBridge、GCP Cloud Scheduler、Hangfire、Sidekiq、Temporal、Apache Airflow、Prefect、Dagster、あるいはカスタムジョブランナーなどであり、同様のサイレント障害検出MCP可視化が必要な場合は、カスタムMCP構築のエンゲージメントをご検討ください。
ティア | スコープ | 投資額 | 期間 |
シンプル | APIがドキュメント化されている既存スケジューラー(例:GCP Cloud Scheduler)用の単一バックエンドアダプター | $8,000–$10,000 | 1–2週間 |
標準 | カスタムバックエンド + カスタムサイレント障害ルール + 既存のアラート(PagerDuty、Slackなど)との統合 | $15,000–$20,000 | 2–4週間 |
複雑 | マルチバックエンド(リージョン/クラスター/テナントをまたぐフェデレーションcron) + RBAC + 監査ログ統合 + オンコールワークフロー | $25,000–$35,000 | 4–8週間 |
依頼方法:
件名を
Custom MCP Build inquiryとして admin@pixelette.tech までメールしてください。スケジューラースタックの概要(1段落)と検討中のティアを記載してください。
2営業日以内に30分間のディスカバリーコールの日程を返信します。
このサーバーは、私が実施する本番AI監査の基礎となる手法である AI Production Discipline Framework の一部でもあります。
本番AI監査
本番環境でAIを運用しており、外部の専門家に準備状況のスコアリング、既存の障害パターンの特定、是正措置計画の策定を依頼したい場合、このMCPがそのサポートに役立ちます。スタンドアロンの監査サービス:
ティア | スコープ | 投資額 | 期間 |
監査ライト | 1システム、上位5つの発見事項、報告書作成 | $1,500 | 1週間 |
監査標準 | 完全監査、全14パターン、5つのCの発見事項、90日間のフォローアップ | $3,000 | 2–3週間 |
監査 + ワークショップ | 標準監査 + 2日間のチームワークショップ + 初回の月次監査を含む | $7,500 | 3–4週間 |
同じメールアドレス:admin@pixelette.tech(件名:AI audit inquiry)までご連絡ください。
貢献
プルリクエストを歓迎します。カスタムバックエンドを容易に追加できるよう、構造は意図的にフラットにしています。既存の例については src/silentwatch_mcp/backends/ を参照してください。
新しいバックエンドを追加するには:
backends/<your_backend>.pyでCronBackendをサブクラス化するlist_jobs、get_job_runs、tail_logsを実装するbackends/__init__.pyに登録するtests/test_backend_<your_backend>.pyにテストを追加する
バグ報告や機能リクエストはGitHubのIssueで受け付けています。
ライセンス
MIT — LICENSE を参照してください。
関連
AI Production Discipline Framework — Notionテンプレート、$29
SPEC.md — サーバー設計詳細
Model Context Protocol — プロトコル概要
構築者:Temur Khan — 本番AIシステムの独立系専門家。 連絡先:admin@pixelette.tech
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/temurkhan13/silentwatch-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server