Skip to main content
Glama
dihannahdi

Mycelium

by dihannahdi

mycelium_triage

Triage data incidents by computing cause, severity, blast radius, and owner from your data catalogue. Returns a report with next actions and identified gaps.

Instructions

Triage a data incident end to end: cause, severity, blast radius, owner, next actions.

Use this instead of mycelium_ask whenever something is broken. ask answers a question; this does the on-call job, and returns a report rather than a paragraph.

What comes back is computed from DataHub, not inferred: the severity (P1-P4) with the inputs that produced it and the rule that combined them, the assets downstream and how many of them a person actually watches, the cause with its lineage path and evidence, the owner or the escalation path when there is no owner, a timeline, ranked next actions, and -- importantly -- a gaps list of what could not be determined.

Three things worth knowing before you act on it:

  • You may not overrule the severity. It is arithmetic over the catalogue and the rule is in the response. If you disagree, say which input you think is wrong.

  • status matters as much as severity. resolved_itself means the alert already cleared; ambiguous means several unrelated assets match and you should ask the user which fired, not guess; no_cause_found means the metadata genuinely does not explain the symptom, which is a finding and tells you to look outside the catalogue.

  • Read gaps before summarising. Reporting a cause while omitting that the suspect has no SLA recorded is how a confident wrong answer gets made.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
alertYesThe alert, in the monitor's words or the user's. e.g. 'freshness SLA missed on ORDER_DETAILS' or 'the exec dashboard is showing last week's numbers'.
subjectNoURN of the asset that fired, if known. Skip the name resolution and its ambiguity by passing this whenever the monitor tells you which asset it was.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior5/5

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

With no annotations, the description fully discloses behavioral traits: severity is arithmetic and not overridable, the response includes a 'gaps' list, computation is from DataHub and not inferred, and it returns a structured report not a paragraph. It also warns about potential pitfalls like reporting a cause without mentioning missing SLA.

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 description is well-structured with clear sections and bold key points. It is front-loaded with the main purpose. Although it is fairly long, every sentence provides valuable information. Could be slightly more concise, but structure earns a 4.

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?

Given the existence of an output schema (context indicates it exists), the description does not need to detail return values. However, it still mentions important aspects like gaps, severity inputs, and status meanings. For a tool with two parameters and complex behavior, the description covers all essential context comprehensively.

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 100%, so baseline is 3. The description adds context about the 'subject' parameter: passing it avoids name resolution and ambiguity, which adds value beyond the schema. It also reinforces the purpose of 'alert' parameter implicitly. A slight boost is warranted.

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 explicitly states the tool's purpose: to triage a data incident end to end, listing specific outputs (cause, severity, blast radius, owner, next actions). It distinguishes from sibling tool mycelium_ask by advising to use this tool when something is broken, providing clear differentiation.

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?

The description gives clear guidance on when to use this tool vs mycelium_ask. It also explains important behavioral notes: severity cannot be overridden, status values have specific meanings (resolved_itself, ambiguous, no_cause_found), and to read gaps before summarising. These guidelines help the agent decide and act correctly.

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/dihannahdi/mycelium'

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