phylokit-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| infer_treeA | Build a maximum-likelihood tree and measure how well the data support it. Always bootstraps. There is deliberately no option to skip it: an unsupported topology is the failure mode this server exists to prevent. Args:
fasta: Aligned sequences in FASTA, nucleotide or protein as declared by
|
| select_substitution_modelA | Compare substitution models and report how much the winner won by. A single model name reads as a finding. The ranking, the delta to the next model, and whether AIC/AICc/BIC agree are what make it one. Args:
fasta: Aligned sequences in FASTA, nucleotide or protein as declared by
|
| compare_treesA | Robinson-Foulds distance between two trees, and which clades differ. Compares SPLITS, not strings: the same topology has many valid Newick representations, so string equality answers a different question. Args: newick_a: First tree in Newick format. newick_b: Second tree in Newick format. |
| simulate_alignmentA | Generate sequences along a tree you specify, so the true answer is known. This is the positive control for everything else here: infer a tree from the
output and compare it back with Args:
newick: The true tree, with a branch length on every edge.
model: Substitution model to simulate under. A protein model ("LG",
"WAG", ...) simulates protein; pass the output to |
| align_sequencesA | Align unaligned sequences with MAFFT, ready for The returned Args: fasta: UNALIGNED sequences in FASTA, 2-200 of them. Gap characters are refused: input that is already aligned does not need this tool. sequence_type: "dna" (default) or "protein". Declared, never sniffed, and passed to MAFFT explicitly so it does not guess either. |
| capabilitiesA | What this server can do, and the bounds it enforces.
Args: include_models: Include the full substitution-model list (long). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 6 tools
Each tool targets a distinct stage or concern in the phylogenetic workflow: alignment, model selection, tree inference, tree comparison, simulation, and capabilities. There is no functional overlap; even the two 'tree' tools are clearly differentiated by purpose (compare topologies vs. infer from data).
Five of six tools follow the consistent verb_noun snake_case pattern (compare_trees, simulate_alignment, infer_tree, select_substitution_model, align_sequences). 'capabilities' breaks the pattern as a bare noun, but it is a standard introspection tool and the deviation is minor.
Six tools is well-scoped for a phylogenetics-focused server; each one earns its place and covers the core pipeline without redundancy or bloat. The count feels deliberately curated rather than padded.
The tool surface covers the complete typical workflow: align raw sequences, select a substitution model, infer a bootstrapped tree, compare trees, and simulate data for validation. The descriptions explicitly point to the next step in the pipeline, and there are no obvious dead ends or missing operations.