Skip to main content
Glama

check_monophyly

Validate whether taxonomic groups are monophyletic in Newick/Nexus trees, supporting LUCA/LACA/LBCA/root and exact taxon lists; fail strict checks on non-monophyly.

Instructions

Check whether one or more taxonomic groups are monophyletic.

Supports special identifiers LUCA / LACA / LBCA / root, and exact taxon lists. strict=True raises monophyly_error as soon as any group is not monophyletic.

Args: tree_content: Newick/Nexus content. tree_file: Path to a tree file inside an allowed read root. groups: List of group names (str) or exact taxon lists (list[str]). taxonomy_levels: prefix:rank list (e.g. "d:domain,p:phylum"). strict: Fail on any non-monophyletic group.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
groupsNo
strictNo
tree_fileNo
tree_contentNo
taxonomy_levelsNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description must disclose behavior. It usefully states that special identifiers LUCA/LACA/LBCA/root are supported, that tree_file must be inside an allowed read root, and that strict=True raises monophyly_error immediately. However, it omits explicit read-only/safety information and side-effect behavior, leaving some burden unmet.

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 front-loaded with purpose and key behavior, then follows with a compact Args list. It is largely efficient, though the Args section is verbose relative to the schema, which is necessary here because the schema has no descriptions.

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 values need not be explained. The description covers all parameters and key behavior like strict error handling and allowed read roots, but it still lacks usage guidance and sibling differentiation, which keeps it from being fully complete.

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

Parameters5/5

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

Schema description coverage is 0%, so the description is the sole source of parameter meaning. It documents all five parameters, including Newick/Nexus format for tree_content, allowed read root for tree_file, group formats and special identifiers for groups, a prefix:rank example for taxonomy_levels, and failure semantics for strict.

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 description uses a specific verb ('Check') and resource ('monophyletic') for taxonomic groups, clearly stating what the tool does. It does not differentiate from siblings such as validate_tree or analyze_taxonomy, which likely also operate on tree/taxonomy data, so it falls short of a 5.

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

Usage Guidelines2/5

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

The description lists capabilities and arguments but provides no when-to-use guidance, prerequisites, or alternatives. It does not explain when an agent should choose this tool over siblings like validate_tree or analyze_taxonomy.

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