Skip to main content
Glama

Turn serverless on or off

service_sleep_set
Idempotent

Set a Lizard app or database to sleep after idle minutes or stay always on, so it saves cost and wakes on the next request.

Instructions

Use this when the user wants a Lizard service to be serverless (sleep when idle) or always on. On: with no traffic for idleMinutes (5-1440, default 15) it sleeps with its memory saved, costs almost nothing, and the next request or connection wakes it in about a second. Turning it on restarts the service once. Works for apps with one replica and a port, and for Postgres/Redis databases; the error says why otherwise.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
enabledYestrue: sleep when idle; false: always on
projectYesProject name, slug, or ID
serviceYesApp or database name or ID
idleMinutesNoMinutes without traffic before it sleeps

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.1.2

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare idempotent/non-destructive, and the description goes well beyond them: it discloses the sleep behavior (memory saved, near-zero cost, ~1s wake), the idleMinutes defaulting, the important side effect that enabling restarts the service once, and the replica/port and Postgres/Redis eligibility rules. This is exactly the mutation-side-effect context an agent needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is a single front-loaded paragraph that leads with the trigger and then layers behavior, side effects, and constraints without filler. The later sentences are somewhat run-on, but every clause carries actionable content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no output schema, the description covers the trigger, the state semantics of both boolean values, the restart side effect, and the eligibility limits. An agent has everything needed to call it correctly and to interpret likely failures.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description restates the idleMinutes range and default and glosses the enabled semantics, but adds no format or interaction detail beyond what the schema already documents.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource (set a service to serverless/always-on) with clear aliasing to the sleep concept, and the title reinforces it. It conceptually separates itself from pause/resume siblings by framing the operation as idle-sleep configuration, but it never names an alternative tool to sharpen the boundary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The opening clause gives an explicit trigger ("Use this when the user wants a Lizard service to be serverless... or always on"), and it adds eligibility constraints (one replica with a port; Postgres/Redis) plus the note that errors explain ineligibility. No exclusions or alternatives (service_pause, service_resume, service_sleep_status) are named, so it stops short of full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.