Skip to main content
Glama

hire_plan_healthmon

Read-only

Plan a hire of the ChainHelix healthmon agent (ERC-8004 #269228, Position health report). Lending health: given collateral rows with liquidation thresholds, debt and prices, returns the health factor, its status (healthy, warning, critical, liquidatable) and per-asset liquidation prices with drop distances. LP range health: send position {price, lowerPrice, upperPrice} instead of collateral and debt. One question per job. Deterministic arithmetic, no custody, no execution. Send the job parameters; you get back the agent's live wallet-signed quote (the job price, paid into escrow on chain when you fund) and the createJob calldata to sign from YOUR wallet, then fund and tell the agent (steps in the answer). This call is free; the job is not. The parameters here are exactly what the agent accepts; an example is in the input schema description.

Input Schema

NameRequiredDescriptionDefault
debtNooutstanding debt per symbol; required unless `position` is sent (also accepted as: debts, borrowed, borrows, loans)
termsNooptional ERC-8183 terms {deliverables, quality_standards}; the agent quotes its fixed price either way
wallsNowith position only: strong levels keyed by price, each range edge is annotated with the nearest one
pricesNoa mark for every collateral and debt symbol (also accepted as: marks, quotes, pricesUsd)
alertHFNowarning level, default 1.5
positionNoPancakeSwap v3 LP range health instead of lending health (do not send with collateral or debt); optional nearEdgePct, feesEarnedUsd, positionValueUsd, ageDays; returns range status, distance to each edge, position inside the band and the fee run-rate (also accepted as: lpPosition, range)
collateralNoliqThreshold in (0, 1]; required unless `position` is sent (also accepted as: collaterals, supplied, deposits)
criticalHFNocritical level, must be below alertHF, default 1.1

Output Schema

NameRequiredDescriptionDefault
txNo
nextNo
planNo
agentYes
errorNo
exampleNo
missingNo
envelopeNo
expectedNo
erc8004IdNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / x-lexicon / bundleSha256
      Previous value: -"670f7504e3de5031beccee25a2d24e4515f68b893295f6d5b0d3a0665498b2c9"New value: +"25cc80db6d8e9eac73d47a50f7ad6333a21f1972d008a8fed0159de8bfb4b519"
  2. Changed2 schema fields changed
    • changedInput schema / x-lexicon / bundleSha256
      Previous value: -"e5b4290024a229f2bdf97f8fc6a0079c3fe13b77267f41fdcffeb8b26aa1c41e"New value: +"670f7504e3de5031beccee25a2d24e4515f68b893295f6d5b0d3a0665498b2c9"
    • changedInput schema / x-lexicon / version
      Previous value: -"0.1.0"New value: +"0.2.0"
  3. Changed1 schema field changed
    • changedInput schema / description
      Previous value: -"Required: . Each property description lists the other names accepted for it. Example: {\"collateral\":{\"ETH\":{\"amount\":10,\"liqThreshold\":0.8}},\"debt\":{\"USDT\":10000},\"prices\":{\"ETH\":2000,\"USDT\":1}}"New value: +"Required: collateral, debt and prices, or position. Each property description lists the other names accepted for it. Example: {\"collateral\":{\"ETH\":{\"amount\":10,\"liqThreshold\":0.8}},\"debt\":{\"USDT\":10000},\"prices\":{\"ETH\":2000,\"USDT\":1}}"
  4. Changed1 schema field changed
    • changedInput schema / x-lexicon / bundleSha256
      Previous value: -"a1c2e10fd3177d6b4d59ca78693e8fb36880165cf0f735f680dd86a510411178"New value: +"e5b4290024a229f2bdf97f8fc6a0079c3fe13b77267f41fdcffeb8b26aa1c41e"
  5. Changed1 schema field changed
    • changedInput schema / x-lexicon / bundleSha256
      Previous value: -"1eeb782ee15fe69fc80776948e0556fa6b795e210e6305935b2c97b73d955cda"New value: +"a1c2e10fd3177d6b4d59ca78693e8fb36880165cf0f735f680dd86a510411178"
  6. Changed1 schema field changed
    • changedInput schema / x-lexicon / bundleSha256
      Previous value: -"c014292cad7497ce9fd68c33345ac32cb42b672c8e77d6c749c26e162cc207e4"New value: +"1eeb782ee15fe69fc80776948e0556fa6b795e210e6305935b2c97b73d955cda"
  7. Changed3 schema fields changed
    • addedInput schema / x-aliases
      Added value: +{
      +  "collateral": [
      +    "collaterals",
      +    "supplied",
      +    "deposits"
      +  ],
      +  "debt": [
      +    "debts",
      +    "borrowed",
      +    "borrows",
      +    "loans"
      +  ],
      +  "position": [
      +    "Position",
      +    "_position",
      +    "lpPosition",
      +    "range"
      +  ],
      +  "prices": [
      +    "marks",
      +    "quotes",
      +    "pricesUsd"
      +  ]
      +}
    • addedInput schema / x-lexicon
      Added value: +{
      +  "bundleSha256": "c014292cad7497ce9fd68c33345ac32cb42b672c8e77d6c749c26e162cc207e4",
      +  "name": "ChainHelix Agentic Lexicon",
      +  "resolve": "lexicon_resolve",
      +  "spec": "lexicon_spec",
      +  "version": "0.1.0"
      +}
    • addedInput schema / x-vocab
      Added value: +{
      +  "alertHF": "defi.alertHF",
      +  "collateral": "defi.collateral",
      +  "criticalHF": "defi.criticalHF",
      +  "debt": "defi.debt",
      +  "position": "data.position",
      +  "prices": "market.prices",
      +  "terms": "data.terms",
      +  "walls": "market.walls"
      +}
  8. Changed2 schema fields changed
    • addedInput schema / anyOf
      Added value: +[
      +  {
      +    "required": [
      +      "collateral",
      +      "debt",
      +      "prices"
      +    ]
      +  },
      +  {
      +    "required": [
      +      "position"
      +    ]
      +  }
      +]
    • changedInput schema / description
      Previous value: -"Required: collateral, debt, prices. Each property description lists the other names accepted for it. Example: {\"collateral\":{\"ETH\":{\"amount\":10,\"liqThreshold\":0.8}},\"debt\":{\"USDT\":10000},\"prices\":{\"ETH\":2000,\"USDT\":1}}"New value: +"Required: . Each property description lists the other names accepted for it. Example: {\"collateral\":{\"ETH\":{\"amount\":10,\"liqThreshold\":0.8}},\"debt\":{\"USDT\":10000},\"prices\":{\"ETH\":2000,\"USDT\":1}}"
  9. Added

TDQS

A4.4/5.0
Behavior5/5

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

Annotations only declare readOnlyHint=true, but the description adds substantial behavior: deterministic arithmetic, no custody, no execution, a live wallet-signed quote, the createJob calldata to sign from your own wallet, and that this call is free while the job costs money. These are exactly the facts an agent needs to understand what the call does and does not do.

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?

The definition is front-loaded with the two modes and the core economics, and most sentences earn their place. It is somewhat dense and mildly repetitive (mode rules echoed in schema, two phrasings of 'one question per job'), but not padded.

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 complex, nested, two-branch tool with a funding/escrow flow, the description covers the modes, the one-question rule, the free-vs-paid distinction, and the post-call signing steps, and it defers the example to the schema description. An output schema exists, yet the description still usefully explains what comes back (quote + calldata). Nothing an agent needs to call it correctly appears to be missing.

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% and the schema already documents both the anyOf branches, aliases, defaults, and nested shapes. The description restates the either/or (collateral+debt+prices vs position) and points to the example in the schema, but adds no parameter syntax or format detail beyond what the schema carries. Baseline 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 names a specific verb and resource — 'Plan a hire of the ChainHelix healthmon agent (ERC-8004 #269228, Position health report)' — and immediately pins down the two modes it computes: lending health and LP range health. The agent name plus the 'health report' framing distinguishes it from the sibling hire_plan_gridtrader/rebalancer/yieldopt tools without needing their schemas.

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?

It gives explicit per-mode conditions ('given collateral rows...' vs 'send `position` {price, lowerPrice, upperPrice} instead of collateral and debt') and a hard constraint, 'One question per job.' It also clarifies the free-call vs paid-job economics. It stops short of naming when to prefer this over the other hire_plan_* siblings, so it is clear context but not a full alternative-routing guide.

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.

Resources