Skip to main content
Glama

world-reference-mcp

World-reference data — organism taxonomy, OBO reference terms, food/nutrition composition, organism and weather observations, and Wikidata alignment — as an MCP tool surface and, through scion-sdk's declarative mcp_tool source adapter, as bounded, checkpointed ingestion streams onto the epistemic-graph world_model ontology (feat/world-model-ontology).

Sources

Ledger row

Sources

Target class

EH-358 (taxonomy)

NCBI Taxonomy (E-utilities), GBIF backbone

Taxon

EH-359 (reference terms)

EBI OLS4 (GO, UBERON, ENVO, PATO, ChEBI, FoodOn)

BiologicalProcessTerm, AnatomyTerm, EnvironmentTerm, QualityTerm, ChemicalEntityTerm, FoodTerm

EH-360 (nutrition)

USDA FoodData Central

FoodCompositionRecord

EH-361 (observations)

GBIF occurrences, iNaturalist, Open-Meteo, NOAA GHCND

OrganismObservation, WeatherObservation

EH-362 (alignment)

Wikidata SPARQL

wikidataId / skos:exactMatch keys for Taxon, ChemicalEntityTerm, Country

Related MCP server: BioMCP

Tools

Nine MCP tools, one FastMCP server (world-reference-mcp console script): taxonomy_ncbi_search, taxonomy_gbif_search, reference_term_list, fdc_food_search, gbif_occurrence_search, inaturalist_observation_search, open_meteo_weather_observation, noaa_ghcnd_daily, wikidata_alignment_search.

Every tool is keyless except fdc_food_search and noaa_ghcnd_daily, whose credentials are resolved server-side through scion_sdk.credentials (WORLD_REFERENCE_FDC_API_KEY, WORLD_REFERENCE_NOAA_TOKEN) — never accepted as a tool argument.

See AGENTS.md for architecture, the ontology-mapping authority, rate limits, and commands.

Available Tools

9 tools
noaa_ghcnd_dailyNoaa Ghcnd DailyB
Read-onlyIdempotent

Fetch a page of NOAA GHCND daily station observations.

The token is resolved from the credential reference this package declares (WORLD_REFERENCE_NOAA_TOKEN, env:// by default) — never accepted as a tool argument.

NameRequiredDescriptionDefault
limitNo
offsetNo
end_dateYes
start_dateYes
station_idYes

Output Schema

NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent and openWorld, so the safety profile is covered. The description adds genuinely non-derivable context: the API token is resolved from a declared credential reference (`WORLD_REFERENCE_NOAA_TOKEN`, `env://` by default) and is never a tool argument, which prevents an agent from trying to pass auth. It does not mention rate limits, error modes, or pagination termination.

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?

Two short paragraphs, purpose front-loaded, no filler. The credential sentence is somewhat verbose with its backticked env-var names but each sentence conveys needed information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/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, and auth is handled. But for a tool with three required string parameters at 0% schema coverage, the description should at minimum pin down station identifier and date formats; without that an agent can easily construct an invalid call.

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

Parameters2/5

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

Schema description coverage is 0% across five parameters, so the description carries the full burden and adds almost nothing. It never states the expected station_id format (e.g. USC00306362) or the date format for start_date/end_date, and limit/offset are only obliquely implied by 'a page'.

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?

States a specific verb and resource: fetch a page of NOAA GHCND daily station observations. It is clear what data comes back, but it offers no differentiation from the nearest sibling, open_meteo_weather_observation, so an agent choosing between weather-observation sources gets no help.

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?

There is no statement of when to prefer this source over open_meteo_weather_observation or the other search tools, and no prerequisites or exclusions. The word 'page' hints at pagination but gives no guidance on how to size or walk pages.

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

open_meteo_weather_observationOpen Meteo Weather ObservationA
Read-onlyIdempotent

Fetch a bounded window of daily historical weather for one place.

Keyless. start_date is the resumption cursor: pass the previous call's next_cursor to continue a sweep; omit it to start ~30 days back.

NameRequiredDescriptionDefault
latitudeYes
longitudeYes
start_dateNo
window_daysNo

Output Schema

NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already establish read-only, open-world, and idempotent behavior. The description adds useful context beyond the annotations by disclosing keyless access, the bounded-window model, and the resumption-cursor pattern.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tightly written sentences with the core operation front-loaded and no wasted wording. The cursor behavior and default window are stated efficiently.

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?

With an output schema and annotations present, return values and safety traits do not need explanation here. The description covers the key invocation pattern, though it could say more about window_days and units or date semantics.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must carry parameter meaning. It explains start_date well as a resumption cursor, but leaves latitude, longitude, and window_days to bare schema names and defaults, with only an implicit hint about the bounded window.

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?

States a specific verb and resource: fetching a bounded window of daily historical weather for one place. The scope is clear, but it does not differentiate itself from the similar noaa_ghcnd_daily sibling.

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

Usage Guidelines4/5

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

Gives explicit cursor usage: pass the previous call's next_cursor to continue a sweep, or omit start_date to begin about 30 days back. It also notes the tool is keyless, but provides no guidance on when to use this instead of the related NOAA or observation siblings.

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

reference_term_listReference Term ListA
Read-onlyIdempotent

List one page of one OBO ontology's terms through EBI OLS4.

ontology is an OLS4 ontology id (go, uberon, envo, pato, chebi, foodon) — one of :data:world_reference_mcp.config.OBO_ONTOLOGIES's values.

NameRequiredDescriptionDefault
pageNo
sizeNo
ontologyYes

Output Schema

NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent and openWorld, so safety is covered; the description adds that the upstream is a remote service (EBI OLS4) and that results come one page at a time. It does not disclose rate limits, page ordering, total-count behavior, or what happens with an invalid ontology id — meaningful gaps for a remote paginated read.

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 core action is front-loaded in one sentence and the parameter note follows. The `:data:`world_reference_mcp.config...`` reference is documentation-syntax leakage that means little to an agent, a minor waste.

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?

An output schema is present, so return values need not be described here. Given a simple three-parameter paginated list, the description supplies the action, the upstream, and the ontology id domain — enough to call the tool correctly, with only paging semantics thin.

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 0%, so the description carries the burden and covers only `ontology`, with a concrete value list plus a pointer to the config module. `page` and `size` are left entirely unexplained beyond their schema defaults, so two of three parameters get no semantics from either source.

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?

States a specific verb and resource: list one page of one OBO ontology's terms, sourced from EBI OLS4. The scope (one ontology, paginated) is explicit and the name is distinctive against the sibling search tools, though it never says how it differs from them.

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

Usage Guidelines3/5

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

Usage is only implied: the parameter note enumerates valid ontology ids (go, uberon, envo, pato, chebi, foodon), which tells the agent what to pass but not when to prefer this tool over a search sibling or when to page through results. No exclusions or prerequisites are given.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 9 tool updatesv0.3.4
    • First observedfdc_food_search
    • First observedgbif_occurrence_search
    • First observedinaturalist_observation_search
    • First observednoaa_ghcnd_daily
    • First observedopen_meteo_weather_observation
    • First observedreference_term_list
    • First observedtaxonomy_gbif_search
    • First observedtaxonomy_ncbi_search
    • First observedwikidata_alignment_search

TDQS

B3.2/5.0

Scored across 9 tools

Disambiguation4/5

Each tool targets a distinct external source and record type: NCBI taxonomy, GBIF backbone, GBIF occurrences, ontology terms, food composition, iNaturalist observations, weather, station observations, and Wikidata alignment. The only real pair that could be confused is taxonomy_ncbi_search vs taxonomy_gbif_search, but the descriptions name their backbones explicitly. Weather-related tools (open_meteo_weather_observation vs noaa_ghcnd_daily) are also distinguishable by source and granularity.

Naming Consistency3/5

Most tools follow a domain_entity_action shape (taxonomy_ncbi_search, gbif_occurrence_search, fdc_food_search), but the ordering of tokens varies (taxonomy_ncbi_* vs gbif_occurrence_*), and two tools drop the verb entirely (open_meteo_weather_observation, noaa_ghcnd_daily) while one uses _list instead of _search. The pattern is readable but not uniform.

Tool Count4/5

Nine tools is well within a reasonable range for a multi-source reference aggregator, and each maps to a distinct data source rather than being redundant. Slightly over-provisioned on biological occurrence sources (GBIF, iNaturalist) but still coherent.

Completeness4/5

The surface covers search across all the advertised sources with pagination/cursor support, which is the core of a reference-lookup server. Minor gaps: no fetch-by-identifier for taxa or ontology terms beyond search/paging, and wikidata_alignment_search references a chemical_entity type without a dedicated chemical compound search. These are workaroundable rather than dead ends.

Maintenance

ActivityActive
ResponsivenessNo recent community issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    An MCP server that gives AI assistants access to biological and biomedical RDF databases via SPARQL at the RDF Portal, as well as selected REST APIs (NCBI E-utilities, UniProt, ChEMBL, PDB, Reactome, Rhea, MeSH, and more).
    2
    29
    21
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Read-only biomedical MCP server connecting PubMed, ClinicalTrials.gov, ClinVar, gnomAD, OncoKB, Reactome, KEGG, UniProt, PharmGKB, CPIC, OpenFDA, Monarch Initiative, GWAS Catalog, and more. One command grammar for all biomedical entities — genes, variants, diseases, drugs, trials, articles, phenotypes, pathways, proteins, diagnostics, and adverse events. 27 tools. Apache-2.0 license.
    1
    Apache 2.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides a single MCP endpoint for 90+ tools across 42 backend servers (search, legal, domain, etc.) with per-call credit billing and a single API key.
    1
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables AI clients to access virome datasets and external bioinformatics APIs through MCP tools, including Wikipedia, PubMed, NCBI Taxonomy, read-only SQL over S3 Parquet, pandas/Plotly analyses, and map visualizations, while keeping the client decoupled from data and business logic.
    -