io.github.cyanheads/paleobiology-mcp-server

io.github.cyanheads/paleobiology-mcp-server · v0.4.0 · finance-and-payments

io.github.cyanheads/paleobiology-mcp-server is healthy: it completed an MCP handshake in 298 ms and exposes 8 tools.

Search fossil occurrences, taxon ranges, diversity through deep time, and the geologic time scale.

Endpoint: https://paleobiology.caseyjhand.com/mcp (streamable-http)

Repository · JSON · Add to my inventory

Facts

Users (last 30 days)0
HandshakeHealthy
Auth neededNone
Tool count8
Latency298 ms
Last checked (UTC)2026-10-16T07:20:35.360Z

Health history

Checked (UTC)StatusLatencyError
2026-10-16T07:20:35.360ZHealthy298
2026-10-15T03:25:46.120ZHealthy2626

Tools (8)

paleobiology_search_occurrencesSearch fossil occurrences filtered by taxon, geologic time, geography, and depositional environment — the flagship. Use base_name for a clade and all its descendants (what "Tyrannosaurus occurrences" usually means), base_id for that same clade by resolved taxon id, or taxon_name for an exact taxon.
paleobiology_get_taxonResolve a taxon by name (e.g. "Tyrannosaurus") or by integer taxon_no to its accepted name, rank, higher classification, immediate parent, fossil occurrence count, and first/last appearance (FAD/LAD) range in millions of years — "when did this clade exist, and what is it." Run this first to resolve
paleobiology_get_diversityCompute a diversity / origination / extinction curve for a clade across geologic time, binned by period, epoch, or age — answers "plot dinosaur genus diversity across the Mesozoic." Pass a clade-inclusive base_name (or base_id, the same clade by resolved taxon id — exactly one of the two) and bound
paleobiology_list_intervalsLook up the geologic time scale — eons, eras, periods, epochs, and ages with their absolute-age boundaries in millions of years (Ma) and nesting. This is the reference that grounds every temporal filter on the other tools and translates a named interval like "Late Cretaceous" to its 100.5–66.0 Ma bo
paleobiology_search_collectionsFind fossil collections (localities) by area and geologic time — "what has been dug up here, and from what rock." Each locality returns its location, age (named interval and Ma), formation and strata, lithology, depositional environment, and the count of co-occurring fossils. Filter by a clade-inclu
paleobiology_get_referencesResolve PBDB reference_no values — the source publication on every paleobiology_search_occurrences and paleobiology_search_collections row — to full citations with authors, year, title, publication, volume, pages, and DOI. Pass the ids from a page of rows in one call: the first 25 distinct ids are r
paleobiology_dataframe_queryRun a read-only SQL SELECT against occurrence result sets staged on a DataCanvas by paleobiology_search_occurrences. This is how you analyze a large fossil set without re-fetching it: count occurrences by early_interval, group by formation, country (cc), or accepted_name, or filter by a paleo/modern
paleobiology_dataframe_describeList the tables and their columns staged on a DataCanvas by paleobiology_search_occurrences. Call this before paleobiology_dataframe_query to discover the exact table_name and column names to reference in SQL.