Skip to main content
Glama

get_health

Read-only

Retrieve code-health scores and findings from stored analysis to prioritize fixes, inspect targets, and expand specific issues without recomputing.

Instructions

Code-health scores and findings from stored analysis.

No ``targets``: a dashboard led by ``fix_first``. Never recomputes:
commit, then run ``repowise update``. Every block and accepted value:
docs/agent/MCP_TOOLS.md.

Args:
    targets: file paths or ``module:<name>``.
    include: ``biomarkers``|``refactoring``|``trend``|``coverage``|
        ``accuracy``|``signals``|``churn_complexity``|``doc_drift``|
        ``semantics``|``recipe``|``what_if``, or a dimension.
    only: keys to keep. ``biomarkers``/``accuracy``/``refactoring``
        alias their block; ``performance``/``defect``/``maintainability``
        do not.
    limit: rows per ranked list (default 20, 0 for none); cursor: offset.
    fix_id/finding_id/plan_id/opportunity_id: expand one item by ``id``.
    refactoring_*/performance_*: queue filters.
    scope: ``production`` drops non-production code.
    counts: ``code_shape`` drops the git-derived half of the score.
    repo: usually omitted.

Input Schema

NameRequiredDescriptionDefault
onlyNo
repoNo
limitNo
scopeNoall
countsNoeverything
cursorNo
fix_idNo
includeNo
plan_idNo
targetsNo
finding_idNo
opportunity_idNo
performance_sortNo
performance_viewNo
refactoring_typeNo
refactoring_viewNodiversified
refactoring_scopeNo
refactoring_effortNo
performance_contextNo
performance_boundaryNo
performance_confidenceNo
refactoring_confidenceNo
performance_actionabilityNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed43 schema fields changedv0.60.1
    • removedInput schema / properties / counts / title
      Removed value: -"Counts"
    • removedInput schema / properties / cursor / title
      Removed value: -"Cursor"
    • removedInput schema / properties / finding_id / default
      Removed value: -null
    • removedInput schema / properties / finding_id / title
      Removed value: -"Finding Id"
    • removedInput schema / properties / fix_id / default
      Removed value: -null
    • removedInput schema / properties / fix_id / title
      Removed value: -"Fix Id"
    • removedInput schema / properties / include / default
      Removed value: -null
    • removedInput schema / properties / include / title
      Removed value: -"Include"
    • removedInput schema / properties / limit / default
      Removed value: -null
    • removedInput schema / properties / limit / title
      Removed value: -"Limit"
    • removedInput schema / properties / only / default
      Removed value: -null
    • removedInput schema / properties / only / title
      Removed value: -"Only"
    • removedInput schema / properties / opportunity_id / default
      Removed value: -null
    • removedInput schema / properties / opportunity_id / title
      Removed value: -"Opportunity Id"
    • removedInput schema / properties / performance_actionability / default
      Removed value: -null
    • removedInput schema / properties / performance_actionability / title
      Removed value: -"Performance Actionability"
    • removedInput schema / properties / performance_boundary / default
      Removed value: -null
    • removedInput schema / properties / performance_boundary / title
      Removed value: -"Performance Boundary"
    • removedInput schema / properties / performance_confidence / default
      Removed value: -null
    • removedInput schema / properties / performance_confidence / title
      Removed value: -"Performance Confidence"
    • removedInput schema / properties / performance_context / default
      Removed value: -null
    • removedInput schema / properties / performance_context / title
      Removed value: -"Performance Context"
    • removedInput schema / properties / performance_sort / default
      Removed value: -null
    • removedInput schema / properties / performance_sort / title
      Removed value: -"Performance Sort"
    • removedInput schema / properties / performance_view / default
      Removed value: -null
    • removedInput schema / properties / performance_view / title
      Removed value: -"Performance View"
    • removedInput schema / properties / plan_id / default
      Removed value: -null
    • removedInput schema / properties / plan_id / title
      Removed value: -"Plan Id"
    • removedInput schema / properties / refactoring_confidence / default
      Removed value: -null
    • removedInput schema / properties / refactoring_confidence / title
      Removed value: -"Refactoring Confidence"
    • removedInput schema / properties / refactoring_effort / default
      Removed value: -null
    • removedInput schema / properties / refactoring_effort / title
      Removed value: -"Refactoring Effort"
    • removedInput schema / properties / refactoring_scope / default
      Removed value: -null
    • removedInput schema / properties / refactoring_scope / title
      Removed value: -"Refactoring Scope"
    • removedInput schema / properties / refactoring_type / default
      Removed value: -null
    • removedInput schema / properties / refactoring_type / title
      Removed value: -"Refactoring Type"
    • removedInput schema / properties / refactoring_view / title
      Removed value: -"Refactoring View"
    • removedInput schema / properties / repo / default
      Removed value: -null
    • removedInput schema / properties / repo / title
      Removed value: -"Repo"
    • removedInput schema / properties / scope / title
      Removed value: -"Scope"
    • removedInput schema / properties / targets / default
      Removed value: -null
    • removedInput schema / properties / targets / title
      Removed value: -"Targets"
    • removedInput schema / title
      Removed value: -"get_healthArguments"
  2. Changed3 schema fields changedv0.59.0
    • addedInput schema / properties / limit / anyOf
      Added value: +[
      +  {
      +    "type": "integer"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • changedInput schema / properties / limit / default
      Previous value: -20New value: +null
    • removedInput schema / properties / limit / type
      Removed value: -"integer"
  3. Changed2 schema fields changedv0.55.0
    • addedInput schema / properties / fix_id
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Fix Id"
      +}
    • addedInput schema / properties / refactoring_scope
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Refactoring Scope"
      +}
  4. Changed1 schema field changedv0.53.0
    • addedInput schema / properties / performance_actionability
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Performance Actionability"
      +}
  5. Changed2 schema fields changedv0.50.0
    • addedInput schema / properties / counts
      Added value: +{
      +  "default": "everything",
      +  "title": "Counts",
      +  "type": "string"
      +}
    • addedInput schema / properties / scope
      Added value: +{
      +  "default": "all",
      +  "title": "Scope",
      +  "type": "string"
      +}
  6. Changed13 schema fields changedv0.48.0
    • addedInput schema / properties / cursor
      Added value: +{
      +  "default": 0,
      +  "title": "Cursor",
      +  "type": "integer"
      +}
    • addedInput schema / properties / finding_id
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Finding Id"
      +}
    • addedInput schema / properties / opportunity_id
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Opportunity Id"
      +}
    • addedInput schema / properties / performance_boundary
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Performance Boundary"
      +}
    • addedInput schema / properties / performance_confidence
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Performance Confidence"
      +}
    • addedInput schema / properties / performance_context
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Performance Context"
      +}
    • addedInput schema / properties / performance_sort
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Performance Sort"
      +}
    • addedInput schema / properties / performance_view
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Performance View"
      +}
    • addedInput schema / properties / plan_id
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Plan Id"
      +}
    • addedInput schema / properties / refactoring_confidence
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Refactoring Confidence"
      +}
    • addedInput schema / properties / refactoring_effort
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Refactoring Effort"
      +}
    • addedInput schema / properties / refactoring_type
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Refactoring Type"
      +}
    • changedInput schema / properties / refactoring_view / default
      Previous value: -"canonical"New value: +"diversified"
  7. Changed1 schema field changedv0.45.0
    • addedInput schema / properties / refactoring_view
      Added value: +{
      +  "default": "canonical",
      +  "title": "Refactoring View",
      +  "type": "string"
      +}
  8. Changed1 schema field changedv0.39.0
    • addedInput schema / properties / only
      Added value: +{
      +  "anyOf": [
      +    {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Only"
      +}
  9. First observedv0.1.0

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds genuinely non-obvious behavior: it never recomputes and requires an external `repowise update` to refresh, scope='production' drops non-production code, and counts='code_shape' removes the git-derived half of the score. Those are exactly the side effects and data caveats 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?

The key statement about dashboard-vs-targets and the never-recomputes caveat are front-loaded, and the Args block is terse with one line per parameter group. Some density is unavoidable at 23 parameters, though the repeated rST double-backtick noise and the pointer to docs/agent/MCP_TOOLS.md for 'every block and accepted value' push explanation out of the definition.

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?

An output schema exists, so return shapes need not be described, and the description covers the remaining essentials: freshness workflow, scoping options, default list size, and item-expansion IDs. It is only incomplete for the enumerated queue-filter values, which are deferred to an external document.

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

Parameters4/5

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

Schema description coverage is 0% across 23 parameters, so the description carries the full burden and largely does: it enumerates the accepted include values, explains aliasing nuances for only (biomarkers/accuracy/refactoring alias their block, performance/defect/maintainability do not), and states limit defaults and cursor offset. The refactoring_*/performance_* filters are lumped together as 'queue filters' with no per-parameter meaning, which is the main gap.

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 opening line states a specific resource and source: 'Code-health scores and findings from stored analysis.' The 'No targets: a dashboard led by fix_first' clause clarifies what the tool returns in its default shape. It does not name siblings like get_overview or get_risk, so the boundary with them is left implicit.

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

Usage Guidelines3/5

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

It gives real usage context: omit targets for a dashboard view, and the data is stale unless you commit and run `repowise update`. However it never says when to prefer this over get_overview, get_risk, or get_dead_code in the sibling set, so routing between tools is inferred rather than stated.

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