Skip to main content
Glama

hub_heartbeat

Send a heartbeat to update agent presence in hubd, making headless agents visible in hub_presence without a human bridge. Overwrites presence record with TTL-based freshness.

Instructions

Record that an agent is alive — call it each work cycle (right after hub_report, before the next hub_queue_wait) so MCP/headless agents show up in hub_presence the same way screen-scraped ones do, no human bridge needed. Overwrites this agent's one presence record; freshness is judged at read time from ttlMin (default 15min), the same pattern hub_claim uses.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cwdNoyour absolute working directory, optional
roleNothe queue role you work under, e.g. "hubd" — lets hub_brief pair queue depth with who is listening
agentYesyour stable identity, e.g. your agent name
statusNofree text, e.g. "working" / "waiting" / "blocked"
ttlMinNominutes before this record counts as stale, default 15
task_idNothe task/id you are currently on, optional
Behavior4/5

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

No annotations are provided, but the description discloses key behavior: it 'overwrites this agent's one presence record' and explains freshness is evaluated at read time using ttlMin with a default of 15 minutes, aligning with hub_claim. This is critical side-effect information not visible in the schema.

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 two sentences that pack the purpose, scheduling, and key behavioral details without redundancy. It is front-loaded with the main action and uses the second sentence to cover overwrite and ttl semantics.

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?

For a heartbeat tool with no output schema or annotations, the description covers purpose, when to call, why, and core behavior (overwrite, TTL). It omits return values and error cases, but these are less critical for this simple write-like operation; overall it's robust.

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?

All 6 parameters have descriptive schema entries (100% coverage), so the description need not repeat them. It adds minor context by mentioning the ttlMin default and read-time evaluation, but the schema already includes a similar description. Therefore, a baseline of 3 is appropriate.

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 opens with 'Record that an agent is alive,' a specific verb and resource. It distinguishes this from siblings by contrasting with hub_presence (where the heartbeat appears) and by positioning it in the agent work cycle relative to hub_report and hub_queue_wait.

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

Usage Guidelines5/5

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

Explicit scheduling guidance: 'call it each work cycle (right after hub_report, before the next hub_queue_wait)'. It also explains why: to let MCP/headless agents appear in hub_presence without a human bridge, which implies when it's needed versus not.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/bzdOS/hubd'

If you have feedback or need assistance with the MCP directory API, please join our Discord server