prompt-time について
prompt-timeは、Windows版Claude Desktop向けのローカルリマインダーです。単発または繰り返しの通知が必要なユーザーを対象に、MCPツールで予定を管理し、Windowsタスクスケジューラの監視プロセスが通知を表示します。再起動後もリマインダーは保持されます。
主な機能
- 01単発または定期的な通知の設定
- 02予定済みリマインダーの一覧表示
- 03IDによるリマインダーの取消
- 04再起動後もリマインダーを保持
- 05クラウドを使わないローカル実行
- 06追加依存関係なし
活用シーン
- 01当日の単発リマインダーを設定
- 02平日の定期リマインダーを設定
- 03登録済みリマインダーの確認や取消
- 04再起動後も予定済み通知を継続
MCP 対応
Claude Desktopに、リマインダーの設定、一覧表示、取消を行う3つのMCPツールを追加します。MCPサーバーがローカルキューに予定を書き込み、Windowsタスクスケジューラが起動する監視プロセスが通知を表示します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
prompt-time
Claude Desktop から Windows デスクトップのリマインダーを直接スケジュール設定できます。 依存関係はありません。PowerShell と Windows タスク スケジューラだけを使用します。
できること
Claude Desktop に 3 つのツールを追加します。
| ツール | 機能 |
|---|---|
schedule_reminder | 1 回限り、または定期的なデスクトップリマインダーを設定します |
list_reminders | 現在スケジュールされているすべてのリマインダーを表示します |
cancel_reminder | ID を指定してリマインダーをキャンセルします |
リマインダーは、再起動後や Claude の再起動後も保持されます。クラウド側の仕組みはなく、すべてローカルで動作します。
60 秒でインストール
- 最新リリースから
prompt-time-v2.2.6.zipをダウンロードします。 - **zip ファイルを右クリック →「すべて展開」**を選択します。Windows による展開が必要です。zip のプレビューウィンドウ内から
install.batを実行しても動作しません。 - 展開したフォルダーを開き、
install.batをダブルクリックします。 - Claude Desktop が起動中の場合、インストーラーから再起動を求められます。再起動してください。MCP ツールは Claude Desktop の再起動後にのみ表示されます。
- 完了です。ツールを使用できます。
Node、npm、管理者権限、インターネット接続は不要です。
インストール後、展開したフォルダーは削除してもかまいません。 v2.2.6 以降では、インストール時に MCP サーバーとウォッチャーの両方が prompt-time のデータディレクトリにコピーされ、Claude Desktop の設定とスケジュールされたタスクはデータディレクトリ内のコピーを参照します。その後、展開したフォルダーを移動または削除しても問題ありません。(アップグレードする場合は、新しく展開したフォルダーから
install.batを再実行してください。)
使用例
Claude に話しかけるだけです。
「今日の午後 4 時に週次更新を送るようリマインドして」 「毎週平日の午前 9 時に受信トレイを確認するようリマインドを設定して」 「来週月曜日の午後 2 時に役員会議があることをリマインドして」 「どんなリマインダーを設定している?」 「リマインダー PROMPTTIME-A1B2C3D4 をキャンセルして」
繰り返しの種類:once、daily、weekly、weekdays。精度は約 10 秒です(ウォッチャーのポーリング間隔)。
仕組み
構成要素は 2 つです。
- MCP サーバー(
prompt_time.ps1) — Claude Desktop のプロセスツリー内で実行されます。リマインダーを検証し、ディスク上の JSONL ファイルにキューとして登録します。 - ウォッチャーデーモン(
prompt-time-watcher.ps1) — インストール時に、タスク スケジューラのAt LogOnタスクとして一度だけ登録されます。キューを監視し、プロセス内でトーストポップアップを表示して、繰り返しの項目を更新します。
MCP サーバーは実行時にタスク スケジューラと通信せず、プロセスを起動せず、UI も表示しません。リマインダーごとに JSONL の 1 行を書き込むだけです。それ以外はすべてウォッチャーが処理します。
プロセスを2つにする理由 — MSIX の境界
Claude Desktop は MSIX パッケージアプリ として提供されています。MSIX コンテナーはファイルへの書き込みを透過的に仮想化します。パッケージ内で実行中のサーバーが Add-Content $env:APPDATA\prompt-time\queue.jsonl を呼び出しても、%APPDATA%\Roaming\prompt-time\queue.jsonl には書き込まれません。パッケージごとのシャドウツリー、%LOCALAPPDATA%\Packages\<package-family>\LocalCache\… の下に書き込みます。
タスク スケジューラが起動するものはすべてパッケージの外部で実行されるため、リマインダーごとに schtasks タスクを作成すると、実際のパスにあるファイルを探しても見つかりません。
prompt-time は起動時にこの問題を解決します。すべてのコンポーネント(prompt_time.ps1、prompt-time-watcher.ps1、install.ps1、uninstall.ps1)が Claude AppX パッケージを検出し、LocalCache 内の同じ正規データディレクトリを算出します。サーバーの書き込み先とウォッチャーの読み込み先は、同じ物理ファイルになります。ウォッチャーはタスク スケジューラに表示を依頼せず、自身でポップアップを表示するため、状態に関わるすべての操作を境界の同じ側に保てます。
また、インストーラーは MCP サーバーが最初に書き込む前に、正規パスにキューファイルをあらかじめ作成します。これを行わないと、実際のパスに既存ファイルがあればそこへの書き込みは反映される一方、新しいファイルの作成は MSIX のファイル仮想化によってパッケージのシャドウにリダイレクトされます。
Claude Desktop の設定自体にも、同じ落とし穴があります。MSIX パッケージ版 Claude が自身の claude_desktop_config.json(設定の保存など)に一度でも書き込むと、MSIX は %LOCALAPPDATA%\Packages\<family>\LocalCache\Roaming\Claude\claude_desktop_config.json にパッケージごとのシャドウコピーを作成し、その後の起動では毎回シャドウから読み込みます。そのような環境では、%APPDATA% のみに書き込むインストーラーの設定は Claude から見えなくなります。v2.2.3 以降はシャドウを優先的な正本として読み込み、マージした設定を両方のパスにアトミックに書き込みます。アンインストール時には両方から削除します。v2.2.4 では書き込み後の自己検証を追加し、エントリが残らなかった場合(ウイルス対策ソフトによるロールバック、管理ポリシーによる上書きなど)に、誤って成功を報告するのではなく、対処方法がわかるエラーを表示してインストールを明確に失敗させます。詳細な分析を確認するには diagnose.bat を実行してください。
トラブルシューティング
通知が集中モードによってミュートされる。 Windows の集中モード(設定 → システム → 集中モード)ではトースト通知が抑制されます。集中モードをオフにするか、優先リストに powershell.exe を追加してください。
Claude Desktop にツールが表示されない。
- Claude Desktop を完全に終了し(トレイアイコンを右クリック → 終了)、再度開きます。「X」の閉じるボタンは最小化するだけなので、ツールは再読み込みされません。
- 展開したフォルダーから
diagnose.batを実行します。設定を読み込み、Claude Desktop と同じ方法でprompt_time.ps1を起動し、Claude Desktop の MCP ログを読み込み、失敗ごとに対処方法を示します。「インストールは実行されたのに何も表示されない」というケースのほとんどは、IT 部門の支援を受けなくてもここで原因を特定できます。 diagnose.batですべてのチェックに合格しているのにツールが表示されない場合は、diagnose.bat -Jsonを実行し、バグを報告する際に出力を添付してください。
install.bat がすぐに閉じる。 エラーを読めるように、cmd プロンプトから実行してください。展開したフォルダー内で install.bat を実行します。インストーラーは %APPDATA%\prompt-time\prompt-time.debug.log(または MSIX の LocalCache 相当の場所)にもデバッグログを書き込みます。こちらも確認してください。
リマインダーが実行されない。 ウォッチャータスクが実行中かどうかを確認してください。
Get-ScheduledTask -TaskName PROMPTTIME-Watcher | Get-ScheduledTaskInfo
LastTaskResult は、実行中なら 267009、正常終了なら 0 である必要があります。
アンインストール
uninstall.bat をダブルクリックします。Claude Desktop の設定から prompt-time のエントリを削除し、PROMPTTIME-Watcher スケジュール済みタスクを削除して、データディレクトリを消去します。設定内の他の MCP サーバーには影響しません。
テスト
.\tests\run.ps1
Pester 5 がインストールされていない場合はインストールし、Pester のテストスイートを実行して、tests/pester-results.xml に NUnit XML を出力します。CI では、すべてのプッシュに対して同じテストハーネスに加え、Invoke-ScriptAnalyzer を実行します。
セキュリティ
信頼モデル、サプライチェーンに関する説明、および脆弱性の報告方法については、SECURITY.md をご覧ください。要点:信頼境界はローカルの Windows ユーザーです。リマインダーのタイトルとメッセージはディスク上に平文で保存されます(秘密情報を入力しないでください)。prompt-time は、一般的な永続化手段としてログオン時に実行されるスケジュールタスクを登録します。
ライセンス
MIT — LICENSE をご覧ください。
Ryan Stewart が開発
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。