Skip to main content
Glama

update_insight

Update an insight (a FINDING) — set its status, or edit its content. Allowed status: open / addressed / superseded / dismissed. Note: you normally don't set 'addressed' by hand — that happens automatically when set_intervention links this finding to a shipped fix. An insight carries NO fix verdict; 'did it work' lives on the linked intervention (see get_interventions). Use this to dismiss/supersede a finding, edit its text/tags, or attach evidence snapshots.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tagsNoReplace the insight's tags with this list (e.g. ['seo','fix-applied']). Pass [] to clear all tags.
notesNoFree-text note about this finding. Stored alongside the insight for future reference.
titleNoUpdated title
actionNoUpdated action step
deleteNoRemove this insight entirely — use when the user says it's not relevant or not an issue
statusNoWorkflow state. Setting status auto-syncs the legacy completed/dismissed mirror booleans.
_offsetNoPagination offset. If a response includes _pagination.hasMore=true, use _offset to fetch the next page.
addTagsNoAppend these tags to the existing set without removing others. Useful for adding workflow tags like 'fix-applied' or '30-day-check' without overwriting.
categoryNoUpdated category
priorityNoUpdated priority
threadIdNoSet or change this insight's threadId directly. Use empty string to clear.
completedNo(Legacy) Mark as completed. Setting true without a status sets status='addressed'; false sets status='open'.
dismissedNo(Legacy) Mark as dismissed. Setting this to true without a status sets status='dismissed'.
insightIdYesThe insight ID to update
removeTagsNoRemove these tags from the existing set, leaving others intact.
descriptionNoUpdated description
linkSnapshotIdsNoAttach existing metric snapshots (record_metric_snapshot rows) to this insight as supporting evidence for the finding. Pass the snapshotIds (returned from query_metric_snapshots). The snapshots appear in get_insights(report: 'thread') timelines. Use this when snapshots were recorded without insightId — typical when you only learn the insight ID after saving.
parentInsightIdNoLink this insight to a predecessor. The threadId is auto-managed: if the parent has one, it's inherited; otherwise a fresh threadId is generated and applied to both. Pass an empty string to detach the parent (and clear threadId if no other thread members reference it).
unlinkSnapshotIdsNoDetach the given snapshotIds from this insight (sets their insightId to null). Use to correct a wrong link.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added
  2. Removed
  3. Added

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does well: it discloses the auto-sync of status to legacy booleans implicitly via the schema, the cross-tool coupling with set_intervention, and the conceptual boundary that fix verdicts live on the intervention, not the insight. It omits any warning that 'delete' is irreversible and says nothing about permissions or audit behavior, which is a gap for a mutation tool.

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?

Front-loaded with the core action, then semantics, then cross-tool caveat. Every sentence is substantive, though the final sentence is a slightly list-like summary that partially repeats the opening framing.

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 19-parameter mutation tool with no annotations and no output schema, the description supplies the important conceptual model (insight vs intervention, status ownership, evidence linking) that the schema alone would not convey. It leaves destructive-delete irreversibility and legacy-field interactions to the schema, which mostly covers them.

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 schema already documents all 19 parameters in detail; the baseline of 3 applies. The description adds conceptual meaning to the 'status' values and the relationship between 'addressed' and set_intervention, but does not clarify the many legacy or tagging parameters beyond what the schema states.

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?

Specific verb+resource ('Update an insight (a FINDING)') with an explicit scope statement covering the two modes: set status or edit content. It clearly differentiates itself from get_insights, save_insights, and set_intervention, the latter of which it names directly.

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?

It names concrete use cases ('dismiss/supersede a finding, edit its text/tags, or attach evidence snapshots') and explicitly steers the agent away from manually setting 'addressed' because set_intervention does it automatically. The negative guidance ('you normally don't set addressed by hand') is exactly the kind of routing an agent needs.

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