- Home
- MCP servers
- Slowtime
Slowtime
- typescript
3
GitHub Stars
typescript
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"bmorphism-slowtime-mcp-server": {
"command": "node",
"args": [
"/path/to/slowtime-mcp-server/build/index.js"
]
}
}
}Slowtime MCP Server enables secure time-based operations with timing attack protection and timelock encryption. It coordinates time fuzzing, interval management, encryption, and analytics to protect sensitive timing-dependent data while enabling controlled access and auditing.
How to use
You interact with Slowtime MCP Server through an MCP client to create and manage time-bound intervals, apply timelock encryption to data, and retrieve analytics. Use the client to start, pause, resume, and check intervals, then encrypt data tied to a specific interval and decrypt it only when the interval conditions are met. All actions are designed to mitigate timing attacks while providing auditable, interval-bound access to encrypted information.
Typical usage patterns you can perform include creating a new time interval, checking its status, pausing and resuming it, and encrypting data so that it remains decryptable only after the interval completes. You can also query vault histories and statistics to understand encryption activity and decryption timelines across your intervals.
How to install
Prerequisites you need before installing: a running Node.js environment on your host and appropriate permissions to run local processes.
Install steps are focused on configuring Slowtime as a local MCP server that your MCP client can reach through your Claude Desktop setup.
Step 1: Prepare your config by adding Slowtime to your Claude Desktop MCP configuration.
{
"mcpServers": {
"slowtime": {
"command": "node",
"args": ["/path/to/slowtime-mcp-server/build/index.js"]
}
}
}
Additional content
Security and architecture are designed to protect timing-sensitive data. The server implements time fuzzing, constant-time operations, and jittered timestamps to reduce the risk of timing-based leakage. Encryption flows rely on timelock concepts and distributed randomness to secure data until an interval completes.
The server is composed of four main components: TimeFuzz for timing attack protection, TimeKeeper for interval management, TimeLock for encryption, and TimeVault for persistent storage and analytics. This structure supports secure, auditable time-based access to encrypted data.
Operational notes include how to query vault history, filter by interval, and obtain vault statistics. TimeVault uses DuckDB WASM for storage and provides analytics results such as total vaults, decrypted vaults, and average decryption time.
Tools and capabilities
TimeFuzz: provides timing attack protection through random duration fuzzing, constant-time comparisons, jittered timestamps, and random operation delays.
TimeKeeper: manages intervals with creation, pause, resume, progress tracking, automatic cleanup, and fuzzing integration.
TimeLock: handles encryption with timelock concepts, interval-based decryption, automatic cleanup, and secure random number generation.
TimeVault: provides persistent storage and analytics using DuckDB WASM, with historical tracking of encrypted data and query capabilities.
Example functional endpoints include creating intervals, checking status, pausing/resuming, encrypting data with an interval reference, and decrypting only after the interval completes. Vault analytics support filtering and statistics retrieval.
Available tools
TimeFuzz
Protection against timing attacks through random delays, jittered timestamps, and constant-time operations.
TimeKeeper
Manages intervals: create, pause, resume, track progress, and automatic cleanup.
TimeLock
Encrypts data with timelock concepts and supports interval-based decryption and secure RNG.
TimeVault
Persistent storage and analytics using DuckDB WASM, with historical tracking and query capabilities.
start_interval
Create a new interval with a given name and duration, returning an interval identifier.
check_interval
Query the status and progress of a specific interval by its ID.
pause_interval
Pause an active interval so it stops progressing until resumed.
resume_interval
Resume a paused interval to continue from where it left off.
encrypt_data
Encrypt data tied to a specific interval and obtain a Timelock ID.
decrypt_data
Attempt decryption of timelocked data; success is contingent on interval completion.
list_vault_history
Query vault history with filters such as interval_id and decrypted_only.
get_vault_stats
Retrieve statistics about vaults, including counts and average decryption time.