Screen-time
All MCP tools for the screen-time triage surface.
The screen-time triage surface. Reading requests is cheap; reviewing requires the high-sensitivity screentime:approve scope.
screentime.list_requests
List screen-time requests.
Scope: screentime:read
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
status | "pending" | "approved" | "denied" | "all" | no | Default pending. |
childId | string | no | Filter to one kid. |
cursor / limit | various | no | Standard pagination. |
Request example
JSON
{
"method": "tools/call",
"params": {
"name": "screentime.list_requests",
"arguments": { "status": "pending" }
}
}Returns. { items: ScreenTimeRequest[], nextCursor }
Response example
JSON
{
"result": {
"items": [
{
"requestId": "rq_8f...",
"childId": "a4b9-...",
"durationMinutes": 30,
"reason": "finished my homework",
"status": "pending",
"createdAt": "2026-05-23T15:30:00Z"
}
],
"nextCursor": null
}
}screentime.query_state
Current consumption and remaining quota per kid.
Scope: screentime:read
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
childId | string | yes | The kid. |
period | "today" | "week" | no | Default today. |
Request example
JSON
{
"method": "tools/call",
"params": {
"name": "screentime.query_state",
"arguments": { "childId": "a4b9-...", "period": "today" }
}
}Returns. { childId, consumedMinutes, remainingMinutes, decisions: ScreenTimeDecision[] }
Response example
JSON
{
"result": {
"childId": "a4b9-...",
"consumedMinutes": 25,
"remainingMinutes": 35,
"decisions": []
}
}screentime.review_request
Approve or deny a pending screen-time request. High-sensitivity scope. Confirm with parent before deny.
Scope: screentime:approve
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
requestId | string | yes | The pending request. |
action | "approve" | "deny" | yes | Outcome. |
durationMinutes | int | no | On approve. Defaults to the requested duration. |
reason | string | no | Recommended on deny; surfaces to the kid. |
Request example
JSON
{
"method": "tools/call",
"params": {
"name": "screentime.review_request",
"arguments": {
"requestId": "rq_8f...",
"action": "approve",
"durationMinutes": 30
}
}
}Returns. { requestId, status, grantedMinutes }
Response example
JSON
{
"result": {
"requestId": "rq_8f...",
"status": "approved",
"grantedMinutes": 30
}
}