Slowtime MCP Server について
Slowtime MCP Server は、時間間隔の管理とタイムロック暗号化を提供し、タイミング攻撃への対策を備えています。時間指定の操作、暗号化データの時間後の解放、保管履歴や統計の確認が必要な MCP クライアント向けです。
主な機能
- 01時間間隔の作成・一時停止・再開
- 02間隔の進捗管理
- 03間隔に基づくデータ解放の暗号化
- 04ランダムな時間の揺らぎと遅延
- 05保管履歴と統計の保存・照会
活用シーン
- 01時間を区切った集中時間の管理
- 02間隔終了まで暗号化データを利用不可にする
- 03暗号化データの履歴と統計を確認
MCP 対応
間隔管理、タイムロック暗号化、TimeVault の照会機能を MCP クライアントに提供します。README には `start_interval`、`pause_interval`、`resume_interval`、`list_vault_history`、`get_vault_stats` などのコマンドが記載されています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Slowtime MCP Server
タイミング攻撃対策とタイムロック暗号化により、安全な時間ベースの操作を実現する Model Context Protocol サーバーです。
┌──────────────┐
│ Claude │
│ Desktop │
└──────┬───────┘
│
▼
┌──────────────┐ ┌──────────────┐
│ Timelock │◄──────────────────►│ Slowtime │
│ Encryption │ │ MCP │
└──────────────┘ │ Server │
└──────┬───────┘
│
▼
┌──────────────┐ ┌──────────────┐
│ Timing │◄─────────────────►│ Interval │
│ Protection │ │ Manager │
└──────────────┘ └──────────────┘
機能
時間のファジングとセキュリティ
Input Time ──┐
┌▼─────────────┐
│ Random Fuzz │ ┌─────────────┐
│ (100-5000ms) ├────►│ Jittered │
└─────────────┘ │ Timestamp │
└─────────────┘
タイムロック暗号化のフロー
Data ───────┐
┌▼────────────┐ ┌────────────┐ ┌────────────┐
│ Encrypt │ │ Interval │ │ League of │
│ with ├───►│ Duration ├───►│ Entropy │
│ Timelock │ │ Remaining │ │ Network │
└────────────┘ └────────────┘ └────────────┘
インターバル管理
[Start]──►[Active]──┐
▲ │
│ ▼
[Resume] [Pause]
│ ▲
▼ │
[Paused]
インストール
~/Library/Application Support/Claude/claude_desktop_config.json の Claude Desktop 設定に追加します。
{
"mcpServers": {
"slowtime": {
"command": "node",
"args": ["/path/to/slowtime-mcp-server/build/index.js"]
}
}
}
使用方法
基本的なインターバルコマンド
start_interval "Focus Time" 25 ───► [25min Interval Created]
│
check_interval <id> ◄───────────────────┘
│
pause_interval <id> ◄───────────────────┘
│
resume_interval <id> ◄───────────────────┘
タイムロック暗号化
1. Start Interval:
"Focus Time" (25min) ──► [Interval ID: abc123]
2. Encrypt Data:
"secret" + abc123 ──► [Timelock ID: xyz789]
3. Attempt Decrypt:
- Before interval ends: "Not yet decryptable"
- After interval ends: "secret"
セキュリティ機能
タイミング攻撃の防止
Operation ──┬──► Random Delay (100-5000ms)
│
├──► Jittered Timestamps
│
└──► Constant-time Comparisons
タイムロックのセキュリティとストレージ
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Encrypt │ │ Distributed │ │ Timelock │ │ DuckDB │
│ Data ├───►│ Randomness ├───►│ Protected ├───►│ TimeVault │
│ │ │ Network │ │ Data │ │ Storage │
└─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘
│ ▲
│ ┌──────────────┘
▼ │
┌─────────────┴─┐
│ Analytics │
│ & Statistics │
└───────────────┘
TimeVault の分析
Query History ──┐
├──► ┌─────────────┐
Filter Options ┘ │ DuckDB │ ┌─────────────┐
│ WASM ├───►│ Analytics │
Vault Stats ───────►│ Engine │ │ Results │
└─────────────┘ └─────────────┘
アーキテクチャ
サーバーは、次の4つの主要コンポーネントで構成されています。
-
TimeFuzz:以下の機能により、タイミング攻撃を防止します。
- 時間の長さをランダムにファジング
- 定時間比較
- ジッターを加えたタイムスタンプ
- 操作ごとのランダムな遅延
-
TimeKeeper:以下の機能でインターバルを管理します。
- 作成/一時停止/再開操作
- 進行状況の追跡
- 自動クリーンアップ
- ファジングとの連携
-
TimeLock:以下の機能で暗号化を処理します。
- drand ネットワークとの連携
- インターバルベースの復号
- 自動クリーンアップ
- 安全な乱数生成
-
TimeVault:永続ストレージと分析機能を提供します。
- DuckDB WASM ベースのストレージ
- 暗号化データの履歴追跡
- 分析と統計
- フィルタリングによるクエリ機能
TimeVault コマンド
暗号化されたタイムボルトの履歴データと統計を照会します。
# List vault history with filtering
list_vault_history --interval_id=abc123 --decrypted_only=true --limit=10
# Get vault statistics
get_vault_stats
Example output:
Total vaults: 150
Decrypted vaults: 75
Average decryption time: 45 seconds
ストレージスキーマ
TimeVault は、以下のスキーマによる永続ストレージに DuckDB WASM を使用します。
CREATE TABLE timevaults (
id VARCHAR PRIMARY KEY,
encrypted_data TEXT NOT NULL,
round_number BIGINT NOT NULL,
created_at TIMESTAMP NOT NULL,
decrypted_at TIMESTAMP,
interval_id VARCHAR NOT NULL,
metadata JSON
);
-- Indexes for efficient querying
CREATE INDEX idx_interval_id ON timevaults(interval_id);
CREATE INDEX idx_created_at ON timevaults(created_at);
貢献
- リポジトリをフォークします
- 機能ブランチを作成します
- 変更をコミットします
- ブランチにプッシュします
- Pull Request を作成します
ライセンス
MIT License。詳細は LICENSE ファイルを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。