agentsclimarketplace

Cross domain metadata integration

Skill HolobiomicsLab/asb-skill-collections/collections/metabolomics/v2/skills/cross-domain-metadata-integration

Use when when you have conducted batch MS/MS searches across one or more domain-specific MASST tools and need to combine their hit scores, metadata annotations, and taxonomic lineages into a single coherent result set for comparative analysis or publication.From its SKILL.md

Install
npx -y skills add HolobiomicsLab/asb-skill-collections --skill cross-domain-metadata-integration

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 15 stars15 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as CC-BY-4.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

10.2 KB, ~1.9k tokens by cl100k_base, as published. Nobody here has run it

cross-domain-metadata-integration

Summary

Consolidates and visualizes aggregated mass spectrometry search results from multiple domain-specific MASST tools (microbeMASST, plantMASST, tissueMASST, microbiomeMASST, foodMASST) into unified metadata structures and interactive visualizations. This skill enables cross-domain interpretation of molecular matches and taxonomic/ecological overlap across curated biological repositories.

When to use

When you have conducted batch MS/MS searches across one or more domain-specific MASST tools and need to combine their hit scores, metadata annotations, and taxonomic lineages into a single coherent result set for comparative analysis or publication. Specifically: after generating domain-specific .json/.html tree outputs from jobs.py, or when merging results from multiple domain repositories (GNPS, MassIVE, Metabolomics Workbench, Metabolights, NORMAN) and require unified visualization of cross-domain matches, sample overlap, and scoring distributions.

When NOT to use

  • Input consists of only single-domain results (i.e., only microbeMASST or only plantMASST); cross-domain integration provides no additional signal.
  • You seek domain-specific curation or taxonomic filtering that metadataMASST does not expose; use individual domain-MASST web applications instead.
  • Raw MS/MS spectra have not yet been searched; first run batch search via jobs.py against Fast Search API.

Inputs

  • aggregated _matches.tsv (all spectra matching results across indexed databases)
  • aggregated _library.tsv (GNPS library matches for Level 2 MSI annotation)
  • aggregated _datasets.tsv (unique sample counts per indexed dataset)
  • per-domain _count_domain.tsv files (microbe, plant, tissue, microbiome, food)
  • batch search output JSON trees from individual domainMASSTs

Outputs

  • consolidated metadata table with merged hits, scores, and lineage annotations
  • interactive HTML visualization(s) of aggregated result (domain overlap, hit distribution)
  • JSON structure encoding cross-domain match graph and metadata hierarchy
  • domain-wise summary report (e.g., match counts, score distributions per domain)

How to apply

Load the aggregated search outputs (typically _matches.tsv, _library.tsv, _datasets.tsv, and per-domain _count_domain.tsv files) from the batch search into metadataMASST. The tool processes and consolidates hits by merging cosine scores, m/z matches, and metadata annotations across the different domain sources. Adjust integration parameters such as minimum cosine score threshold (typically 0.6–0.7 for MS/MS) and m/z tolerance (default 0.5 Da) based on your mass spectrometry instrument resolution and biological specificity goals. Generate visualization outputs (e.g., hit distribution histograms, domain-overlap Venn diagrams, score ranking tables) and export in structured formats (interactive HTML trees, JSON for downstream processing). The rationale is that domain-specific MASSTs each curate different NCBI taxonomy lineages and sample metadata; integration reveals which molecular features are present across multiple biological domains, improving confidence in annotations and enabling ecosystem-scale metabolomics interpretation.

Related tools

Examples

python jobs.py --input_file batch_spectra.mgf --output_prefix results/cross_domain --min_cosine_score 0.6 --mz_tolerance 0.5 --skip_existing=True

Evaluation signals

  • Verify that _matches.tsv, _library.tsv, and all _count_domain.tsv files are successfully loaded and deduplicated (no duplicate spectra IDs across domains).
  • Check that cosine scores are correctly merged and ranked: scores from the same spectrum matched across multiple domains should show consistent ordering within metadataMASST output.
  • Confirm that domain-overlap visualizations (e.g., HTML tree or Venn diagram) show non-empty intersection sets when multiple domains report hits for the same query spectrum.
  • Validate that lineage information (kingdom, phylum, class, order, family, genus, species) is preserved and correctly attributed to matched spectra in consolidated metadata.
  • Inspect exported JSON structure for completeness: all input domain source labels, metadata fields, and score tuples should be present and queryable.

Limitations

  • metadataMASST assumes pre-indexed data across domain-specific MASSTs; newly submitted spectra or datasets require re-running the batch search pipeline (jobs.py) and multiple re-runs due to Fast Search API transient failures.
  • Domain lineage coverage is uneven: microbeMASST currently covers ~1,379 microbial species and 542 strains; plantMASST covers ~3,712 plant species but no strains; tissue and microbiome/food MASST lineage depths are not quantified in the article.
  • Cross-domain integration does not perform de novo curation or conflict resolution: if the same spectrum is annotated with conflicting taxonomic assignments across domains, metadataMASST surfaces all annotations without algorithmic prioritization.
  • Batch search performance and completeness depend on Fast Search API availability; retry logic (skip_existing=True) is recommended but not guaranteed to catch all matches in a single execution.

Evidence

  • [other] metadataMASST takes aggregated search outputs from domain-specific MASSTs... and generates visualized aggregated results: "metadataMASST takes aggregated search outputs from domain-specific MASSTs (microbeMASST, plantMASST, tissueMASST, microbiomeMASST, and foodMASST) and generates visualized aggregated results as its"
  • [other] Process and consolidate search results using metadataMASST to merge hits, scores, and metadata across domain sources: "Process and consolidate search results using metadataMASST to merge hits, scores, and metadata across domain sources."
  • [readme] Aggregated search outputs can be generated and visualized using metadataMASST: "Aggregated search outputs can be generated and visualized using metadataMASST."
  • [readme] Running jobs.py allows users to leverage the Fast Search API and execute a batch search of multiple MS/MS spectra against the current indexed data in GNPS/MassIVE, Metabolomics Workbench, Metabolights, and NORMAN and generate multiple outputs for all listed domainMASSTs simultaneously: "Running jobs.py allows users to leverage the Fast Search API and execute a batch search of multiple MS/MS spectra against the current indexed data in GNPS/MassIVE, Metabolomics Workbench,"
  • [readme] A _matches.tsv file will be generated. This contains all the scans found to match your searched spectrum of interest: "A _matches.tsv file will be generated. This contains all the scans found to match your searched spectrum of interest in the data that have been currently indexed."
  • [readme] Make sure to run jobs.py a couple of times, until no new output is generated by having the option: skip_existing=True. Due to the Fast Search API some of the entries will fail.: "Make sure to run jobs.py a couple of times, until no new output is generated by having the option: skip_existing=True. Due to the Fast Search API some of the entries will fail."

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.