Shareable timer links for countdowns, clock times, Pomodoro, Tabata and step recipes. No account.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Return a validated link to the next local clock time, e.g. 9pm or 17:30. Each opener uses their own timezone. This does not schedule a server timer.
Return a validated link to the next local clock time, e.g. 9pm or 17:30. Each opener uses their own timezone. This does not schedule a server timer.
| Argument | Type | Description |
|---|---|---|
| time* | string | |
| label | string |
{
"type": "object",
"required": [
"time"
],
"properties": {
"time": {
"type": "string",
"maxLength": 20
},
"label": {
"type": "string",
"maxLength": 80
}
},
"additionalProperties": false
}Validate a data-only recipe and return its portable preview link. The person opens it and presses Start. No code runs and no webhook is armed.
| Argument | Type | Description |
|---|---|---|
| recipe* | object | Recipe v1: 1–12 whole-second steps, no repeats. v2: 1–32 steps, fractional seconds and repeats. At most 512 expanded intervals and 10 years; defaults may be omitted. |
{
"type": "object",
"required": [
"recipe"
],
"properties": {
"recipe": {
"type": "object",
"required": [
"version",
"steps"
],
"properties": {
"note": {
"type": "string",
"maxLength": 320
},
"steps": {
"type": "array",
"items": {
"type": "object",
"required": [
"seconds"
],
"properties": {
"label": {
"type": "string",
"maxLength": 60,
"minLength": 1
},
"repeat": {
"type": "integer",
"maximum": 32,
"minimum": 1
},
"seconds": {
"type": "number",
"maximum": 315576000,
"minimum": 0.1
}
},
"additionalProperties": false
},
"maxItems": 32,
"minItems": 1
},
"theme": {
"type": "object",
"properties": {
"ink": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"line": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"muted": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"panel": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"paper": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"white": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"accent": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"highlight": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
}
},
"additionalProperties": false
},
"title": {
"type": "string",
"maxLength": 80,
"minLength": 1
},
"author": {
"type": "string",
"maxLength": 60,
"minLength": 1
},
"cycles": {
"type": "integer",
"maximum": 12,
"minimum": 1
},
"display": {
"enum": [
"digits",
"ring",
"bar"
]
},
"version": {
"enum": [
1,
2
],
"type": "integer"
},
"stepSound": {
"type": "boolean"
},
"completion": {
"type": "object",
"properties": {
"sound": {
"type": "boolean"
},
"message": {
"type": "string",
"maxLength": 160,
"minLength": 1
},
"webhook": {
"type": "boolean"
}
},
"additionalProperties": false
},
"autoAdvance": {
"type": "boolean"
},
"repeatLabel": {
"type": "string",
"maxLength": 20,
"minLength": 1
}
},
"description": "Recipe v1: 1–12 whole-second steps, no repeats. v2: 1–32 steps, fractional seconds and repeats. At most 512 expanded intervals and 10 years; defaults may be omitted.",
"additionalProperties": false
}
},
"additionalProperties": false
}Validate a duration and return a link. The countdown starts when the person opens it, not when this tool runs. No background alarm or automation is scheduled.
| Argument | Type | Description |
|---|---|---|
| label | string | Omit unless requested. |
| muted | boolean | Omit to use defaults. |
| theme | string | Omit to use defaults. |
| display | string | Omit to use defaults. |
| duration* | string | Relative duration, e.g. 12m or 1h20m. Bare numbers mean minutes. Use recipes for sequences. |
{
"type": "object",
"required": [
"duration"
],
"properties": {
"label": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "Omit unless requested."
},
"muted": {
"type": "boolean",
"description": "Omit to use defaults."
},
"theme": {
"enum": [
"plain",
"oat",
"midnight",
"clay",
"lilac"
],
"type": "string",
"description": "Omit to use defaults."
},
"display": {
"enum": [
"digits",
"ring",
"bar"
],
"type": "string",
"description": "Omit to use defaults."
},
"duration": {
"type": "string",
"maxLength": 120,
"minLength": 1,
"description": "Relative duration, e.g. 12m or 1h20m. Bare numbers mean minutes. Use recipes for sequences."
}
},
"additionalProperties": false
}Get a short feature and limits summary. Request detail=full only for the complete reference. Does not start a timer.
| Argument | Type | Description |
|---|---|---|
| detail | string |
{
"type": "object",
"required": [],
"properties": {
"detail": {
"enum": [
"summary",
"full"
],
"type": "string"
}
},
"additionalProperties": false
}Explain optional Zapier completion hooks, setup, authorization, and browser-lifetime limitations. Does not connect or send anything.
No arguments.
{
"type": "object",
"required": [],
"properties": {},
"additionalProperties": false
}Get one preset with its full validated recipe. Use list_presets for quick recommendations; request details only to inspect or customize steps.
| Argument | Type | Description |
|---|---|---|
| id* | string |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"enum": [
"egg",
"pomodoro",
"pomo",
"tabata",
"52-17",
"beep-test",
"stopwatch"
],
"type": "string"
}
},
"additionalProperties": false
}List preset names, schedules and links without recipe bodies. Use get_preset(id) only when full steps or customization are needed.
No arguments.
{
"type": "object",
"required": [],
"properties": {},
"additionalProperties": false
}