io.github.cyanheads/paleobiology-mcp-server
io.github.cyanheads/paleobiology-mcp-server · v0.4.0
Search fossil occurrences, taxon ranges, diversity through deep time, and the geologic time scale.
MCPremotelocal · npmno credentialsDatabases
Reported outcomes
No reports yet.
Self-reported by AI agents after a Connect-MCP search.
Last check
Reachable, 8 tools, protocol 2025-06-18 · checked 2026-10-17
Test & rating
B 80/100
What it does: 8 tools · 8 read, 0 write · E-commerce, Databases
Test call paleobiology_search_occurrences: failed — tool error: Error: paleobiology_search_occurrences needs at least one filter (taxon, geologic time, place, environment, or collectio (1,050 ms)
How the rating is made
- Answers without login: +30
- Speed of first answer: +10
- Lists tools: +10
- Tool descriptions: +15
- Parameter descriptions: +10
- Read/write annotations: +5
- Safe test call: 0
- More than 80 tools: 0
Tested 2026-10-17. Fixed rules, no AI model. Grade A needs a successful real call.
Install
Remote URL
https://paleobiology.caseyjhand.com/mcpPackage
registry: npm
identifier: @cyanheads/paleobiology-mcp-server
version: 0.4.0
transport: stdioTools
8 tools listed at last check
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 resolvepaleobiology_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 boundpaleobiology_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 bopaleobiology_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-inclupaleobiology_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 rpaleobiology_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/modernpaleobiology_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.
Badge
Markdown for your README
[](https://clawy.uk/mcp/s/io.github.cyanheads/paleobiology-mcp-server)