{"id":25368578,"url":"https://github.com/bmorphism/slowtime-mcp-server","last_synced_at":"2025-10-30T04:30:45.954Z","repository":{"id":271755854,"uuid":"910984886","full_name":"bmorphism/slowtime-mcp-server","owner":"bmorphism","description":"A Model Context Protocol server for secure time-based operations with timing attack protection and timelock encryption","archived":false,"fork":false,"pushed_at":"2025-01-02T01:23:33.000Z","size":13,"stargazers_count":1,"open_issues_count":4,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-14T12:19:06.361Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bmorphism.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-02T01:23:23.000Z","updated_at":"2025-01-07T01:12:59.000Z","dependencies_parsed_at":"2025-01-10T10:32:00.820Z","dependency_job_id":null,"html_url":"https://github.com/bmorphism/slowtime-mcp-server","commit_stats":null,"previous_names":["bmorphism/slowtime-mcp-server"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bmorphism%2Fslowtime-mcp-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bmorphism%2Fslowtime-mcp-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bmorphism%2Fslowtime-mcp-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bmorphism%2Fslowtime-mcp-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bmorphism","download_url":"https://codeload.github.com/bmorphism/slowtime-mcp-server/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238930051,"owners_count":19554122,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-02-15T00:39:13.715Z","updated_at":"2025-10-30T04:30:40.691Z","avatar_url":"https://github.com/bmorphism.png","language":"TypeScript","funding_links":[],"categories":["Security","Other Tools and Integrations","🌐 Web Development"],"sub_categories":["How to Submit"],"readme":"# Slowtime MCP Server\n\nA Model Context Protocol server for secure time-based operations with timing attack protection and timelock encryption.\n\n```\n                                     ┌──────────────┐\n                                     │   Claude     │\n                                     │   Desktop    │\n                                     └──────┬───────┘\n                                            │\n                                            ▼\n┌──────────────┐                    ┌──────────────┐\n│   Timelock   │◄──────────────────►│   Slowtime   │\n│  Encryption  │                    │     MCP      │\n└──────────────┘                    │    Server    │\n                                    └──────┬───────┘\n                                           │\n                                           ▼\n┌──────────────┐                   ┌──────────────┐\n│    Timing    │◄─────────────────►│  Interval    │\n│ Protection   │                   │   Manager    │\n└──────────────┘                   └──────────────┘\n\n```\n\n## Features\n\n### Time Fuzzing \u0026 Security\n```\nInput Time ──┐\n            ┌▼─────────────┐\n            │ Random Fuzz  │     ┌─────────────┐\n            │ (100-5000ms) ├────►│ Jittered    │\n            └─────────────┘     │ Timestamp    │\n                               └─────────────┘\n```\n\n### Timelock Encryption Flow\n```\nData ───────┐\n           ┌▼────────────┐    ┌────────────┐    ┌────────────┐\n           │  Encrypt    │    │  Interval  │    │ League of  │\n           │   with     ├───►│ Duration   ├───►│  Entropy   │\n           │ Timelock   │    │ Remaining  │    │  Network   │\n           └────────────┘    └────────────┘    └────────────┘\n```\n\n### Interval Management\n```\n[Start]──►[Active]──┐\n               ▲    │\n               │    ▼\n            [Resume] [Pause]\n                    │    ▲\n                    ▼    │\n                 [Paused]\n```\n\n## Installation\n\nAdd to your Claude Desktop config at `~/Library/Application Support/Claude/claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"slowtime\": {\n      \"command\": \"node\",\n      \"args\": [\"/path/to/slowtime-mcp-server/build/index.js\"]\n    }\n  }\n}\n```\n\n## Usage\n\n### Basic Interval Commands\n```\nstart_interval \"Focus Time\" 25  ───► [25min Interval Created]\n                                          │\ncheck_interval \u003cid\u003e  ◄───────────────────┘\n                                          │\npause_interval \u003cid\u003e  ◄───────────────────┘\n                                          │\nresume_interval \u003cid\u003e ◄───────────────────┘\n```\n\n### Timelock Encryption\n```\n1. Start Interval:\n   \"Focus Time\" (25min) ──► [Interval ID: abc123]\n\n2. Encrypt Data:\n   \"secret\" + abc123 ──► [Timelock ID: xyz789]\n\n3. Attempt Decrypt:\n   - Before interval ends: \"Not yet decryptable\"\n   - After interval ends: \"secret\"\n```\n\n## Security Features\n\n### Timing Attack Prevention\n```\nOperation ──┬──► Random Delay (100-5000ms)\n            │\n            ├──► Jittered Timestamps\n            │\n            └──► Constant-time Comparisons\n```\n\n### Timelock Security \u0026 Storage\n```\n┌─────────────┐    ┌─────────────┐    ┌─────────────┐    ┌─────────────┐\n│   Encrypt   │    │ Distributed │    │  Timelock   │    │  DuckDB     │\n│    Data    ├───►│  Randomness ├───►│  Protected  ├───►│  TimeVault  │\n│            │    │  Network    │    │    Data     │    │  Storage    │\n└─────────────┘    └─────────────┘    └─────────────┘    └─────────────┘\n                                           │                     ▲\n                                           │      ┌──────────────┘\n                                           ▼      │\n                                    ┌─────────────┴─┐\n                                    │   Analytics   │\n                                    │ \u0026 Statistics  │\n                                    └───────────────┘\n```\n\n### TimeVault Analytics\n```\nQuery History ──┐\n               ├──► ┌─────────────┐\nFilter Options ┘    │   DuckDB    │    ┌─────────────┐\n                    │   WASM      ├───►│  Analytics  │\nVault Stats ───────►│   Engine    │    │   Results   │\n                    └─────────────┘    └─────────────┘\n```\n\n## Architecture\n\nThe server consists of four main components:\n\n1. **TimeFuzz**: Provides timing attack protection through:\n   - Random duration fuzzing\n   - Constant-time comparisons\n   - Jittered timestamps\n   - Random operation delays\n\n2. **TimeKeeper**: Manages intervals with:\n   - Creation/pause/resume operations\n   - Progress tracking\n   - Automatic cleanup\n   - Fuzzing integration\n\n3. **TimeLock**: Handles encryption with:\n   - drand network integration\n   - Interval-based decryption\n   - Automatic cleanup\n   - Secure random number generation\n\n4. **TimeVault**: Provides persistent storage and analytics:\n   - DuckDB WASM-based storage\n   - Historical tracking of encrypted data\n   - Analytics and statistics\n   - Query capabilities with filtering\n\n## TimeVault Commands\n\nQuery historical data and statistics about encrypted timevaults:\n\n```\n# List vault history with filtering\nlist_vault_history --interval_id=abc123 --decrypted_only=true --limit=10\n\n# Get vault statistics\nget_vault_stats\n\nExample output:\nTotal vaults: 150\nDecrypted vaults: 75\nAverage decryption time: 45 seconds\n```\n\n## Storage Schema\n\nThe TimeVault uses DuckDB WASM for persistent storage with the following schema:\n\n```sql\nCREATE TABLE timevaults (\n  id VARCHAR PRIMARY KEY,\n  encrypted_data TEXT NOT NULL,\n  round_number BIGINT NOT NULL,\n  created_at TIMESTAMP NOT NULL,\n  decrypted_at TIMESTAMP,\n  interval_id VARCHAR NOT NULL,\n  metadata JSON\n);\n\n-- Indexes for efficient querying\nCREATE INDEX idx_interval_id ON timevaults(interval_id);\nCREATE INDEX idx_created_at ON timevaults(created_at);\n```\n\n## Contributing\n\n1. Fork the repository\n2. Create your feature branch\n3. Commit your changes\n4. Push to the branch\n5. Create a Pull Request\n\n## License\n\nMIT License - see LICENSE file for details\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbmorphism%2Fslowtime-mcp-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbmorphism%2Fslowtime-mcp-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbmorphism%2Fslowtime-mcp-server/lists"}