Skip to main content
Glama

ping_heartbeat

Idempotent

Send a heartbeat signal to a Cronping check. signal="success" (default) marks it UP and resets the timer; "start" records that a run began (for duration); "fail" marks it DOWN immediately and alerts. Optionally pass progress_token (a digest of your run's actual output) on success pings: if the same token repeats for several consecutive runs, the check flips to STUCK — catching a "zombie" job that keeps pinging on schedule while its real work has stalled.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesThe check id returned by create_heartbeat.
signalNosuccess | start | fail. Default success.
progress_tokenNoOptional. A short digest/hash of this run's output (e.g. last-processed id, row count, content hash). If it stays identical across stuck_after consecutive runs, the check flips to STUCK and alerts.

TDQS

A3.9/5.0
Behavior1/5

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

The annotation idempotentHint is true, but the description reveals that repeatedly sending success with the same progress_token can flip the check to STUCK, meaning identical repeated calls produce different outcomes over time. This contradicts the idempotency hint, so the description is in direct conflict with annotations.

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

Conciseness5/5

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

The description is dense yet compact, using two sentences to cover signal effects, the progress_token mechanism, and the zombie-job use case. Every phrase earns its place with no filler, and the structure flows logically from basics to optional behavior.

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

Completeness4/5

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

The description thoroughly covers the tool's behavior including state transitions and the STUCK mechanism, which is crucial for correct usage. It omits the response format and potential errors, but given the tool's simple nature and lack of output schema, the description is nearly complete. The idempotency contradiction slightly undermines overall contextual reliability.

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

Parameters5/5

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

Even though schema coverage is 100%, the description adds substantial meaning beyond the schema: it explains what each signal value does (UP, duration, DOWN), and how progress_token behaves (consecutive identical tokens trigger STUCK). This transforms raw parameter definitions into actionable behavioral knowledge.

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

Purpose5/5

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

The description clearly states the tool sends a heartbeat signal to a Cronping check, with a specific verb and resource. It enumerates the three signal types and their distinct effects, making it obvious what the tool does and differentiating it from siblings like create_heartbeat and get_heartbeat_status.

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 description provides clear context for when to use each signal (success marks UP, start records beginning, fail marks DOWN) and when to use progress_token (on success pings to detect zombie jobs). It doesn't explicitly name alternatives or exclusions, but the usage context is evident from the signal semantics.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.4/5.0
Disambiguation5/5

Each tool has a clearly distinct role: create, delete, status check, bulk import from crontab, pause/resume, ping, and alert configuraiton. No two tools appear to perform the same action, and the descriptions reinforce their separation.

Naming Consistency4/5

Tool names consistently follow a verb_noun snake_case pattern (create_, delete_, pause_, ping_, set_). 'import_crontab' deviates slightly by naming the input format rather than the domain object, but it remains readable and fits the verb-based convention.

Tool Count5/5

Seven tools is well within the ideal range for a focused heartbeat-monitoring server. Each tool represents a necessary operation without bloat or redundant overlap.

Completeness4/5

The core lifecycle is covered: create, ping, pause/resume, alert setup, status, delete, and bulk import. Missing update functionality for period/grace and no list-all-heartbeats operation are notable but non-blocking gaps for the core dead-man's-switch workflow.

Resources