io.github.cyanheads/reference-data-mcp-server
REMOTE · REFERENCE-DATA.CASEYJHAND.COM · 2 COMPONENTS
Countries, timezones, elements, constants, HTTP status codes, unit conversion, and MIME type lookup.
Available components
Last scanned (2 hours ago)
Scores higher than 98% of remote servers
Reachable. Last reached 5 Nov 2026.
Category Health and Science
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security83
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC is configured correctly; the domain's records validate against the full chain to the root. View diagnostics → Pass
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability81
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 2044 tokens (~185/item across 11 items; 10 tools + 1 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 10 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 12 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 28 Oct 26 +2
- First check of Schema quality: 100 functional
- New resource “reference-data-guide” functional
- Server version: 0.1.18 → 0.2.0 functional
- 25 Oct 26 0
- Server version: 0.1.17 → 0.1.18 functional
- 20 Oct 26 +1
- Stability: 0.97 → pass security
- 18 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.
- 16 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.
- 13 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 73 to 77. That category is still filling its 30-day observation window: 22 days of observed history at the previous scan, 23 at this one. The score rises as the window fills, whether or not the server changes.
- 12 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 67 to 73. That category is still filling its 30-day observation window: 20 days of observed history at the previous scan, 22 at this one. The score rises as the window fills, whether or not the server changes.
- 10 Oct 26 +3
- Server version: 0.1.16 → 0.1.17 functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Probed https://reference-data.caseyjhand.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=caseyjhand.com | CN=WE1,O=Google Trust Services,C=US | 2 Nov 2026 | 31 Jan 2027 | ECDSA 256 | ECDSA-SHA256 | 995a30681ab772540e934241ca1d576c |
| SANs: caseyjhand.com, *.caseyjhand.com | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC secure
Validation of reference-data.caseyjhand.com. — Secure
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| caseyjhand.com. | present | 2371 | 13 | Verified |
| reference-data.caseyjhand.com. | Verified address RRset verified with the apex keys |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=63072000; includeSubDomains; preload |
| x-content-type-options | nosniff |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://reference-data.caseyjhand.com/mcp | Verified | 200 | |
| http (plaintext) | http://reference-data.caseyjhand.com/mcp | HTTPS enforced | 301 | https://reference-data.caseyjhand.com/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
ref_constant_lookup Physical Constant Lookup ~145
Look up a fundamental physical constant by name, symbol, or common alias. Returns the CODATA 2022 value, SI unit expression, relative standard uncertainty, and a short description. Recognizes common names and symbols — "speed of light", "c", "Avogadro's number", "N_A", "Planck", "h", "Boltzmann", "k_B" all resolve correctly. Fuzzy matching returns the closest match plus alternatives.
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | yes | Constant name, symbol, or common alias (e.g., "speed of light", "c", "Avogadro", "N_A", "Planck constant", "h"). |
| Name | Type | Req | Description |
|---|---|---|---|
| codata_id | string|null | – | CODATA identifier string, or null if not in CODATA registry. |
| dataset_version | string | – | Data source version (CODATA year). |
| description | string | – | Short description of the constant and its significance. |
| error | object | – | Present when the call failed. Absent on success. |
| exact | boolean | – | True when the constant has an exact defined value (no experimental uncertainty). |
| match_strategy | string | – | How this constant was matched: exact_symbol = case-sensitive symbol hit (e.g. "G"), exact_name = exact alias/name match, fuzzy = partial or contains match. fuzzy signals the query was imprecise and t… |
| name | string | – | Full CODATA constant name. |
| related | array | – | Related constants that also matched the query. |
| symbol | string | – | Standard mathematical symbol. |
| uncertainty | number|null | – | Absolute standard uncertainty in SI units. Null for exactly-defined constants. |
| uncertainty_relative | string|null | – | Relative standard uncertainty or "exact (defined)" for exact values. |
| unit | string | – | SI unit expression (e.g., "m s⁻¹", "J K⁻¹", "dimensionless"). |
| value | number | – | Numeric value in SI units. |
No examples provided.
ref_element_lookup Element Lookup ~168
Look up a periodic table element by name, chemical symbol, or atomic number. Returns the full data record: atomic number, symbol, name, atomic mass (in unified atomic mass units), electron configuration, group, period, block, category (e.g., "noble gas", "transition metal"), Pauling electronegativity, density (g/cm³), melting and boiling points in kelvin, and discovery year. Properties unavailable for synthetic or insufficiently studied elements are returned as null.
| Name | Type | Req | Description |
|---|---|---|---|
| by | string | – | Lookup mode: auto tries atomic number, then symbol, then name. |
| query | string | yes | Element name (e.g., "tungsten"), chemical symbol (e.g., "W"), or atomic number as a string (e.g., "74"). |
| Name | Type | Req | Description |
|---|---|---|---|
| appearance | string|null | – | Physical appearance description. Null for synthetic elements not macroscopically observed. |
| atomic_mass | number|null | – | Standard atomic mass in unified atomic mass units (u). Null for unstable elements with no standard mass. |
| atomic_mass_estimated | boolean | – | True when the atomic mass is estimated or based on the most stable isotope rather than a natural abundance average. |
| block | string | – | Electron block: s, p, d, or f. |
| boiling_point_k | number|null | – | Boiling point in kelvin at standard pressure. Null for unstable or synthetic elements. |
| category | string | – | Element category (e.g., "transition metal", "noble gas", "lanthanide"). |
| dataset_version | string | – | Data source version identifier. |
| density_g_per_cm3 | number|null | – | Density in grams per cubic centimeter at STP. Null for synthetic or poorly studied elements. |
| discovery_scientists | string|null | – | Scientist(s) credited with discovery. Null for elements known since antiquity. |
| discovery_year | – | – | Year of discovery. Null for elements known since antiquity. |
| electron_configuration | string | – | Electron configuration using noble gas shorthand (e.g., "[Ar] 3d6 4s2"). |
| electronegativity_pauling | number|null | – | Pauling electronegativity scale value. Null for noble gases and heavy synthetic elements. |
| error | object | – | Present when the call failed. Absent on success. |
| group | – | – | Periodic table group number (1–18). Null for lanthanides and actinides. |
| melting_point_k | number|null | – | Melting point in kelvin at standard pressure. Null for unstable or synthetic elements. |
| name | string | – | IUPAC element name. |
| natural | boolean | – | True if the element occurs naturally on Earth. |
| number | integer | – | Atomic number (proton count). |
| period | integer | – | Periodic table period number (1–7). |
| phase_at_stp | string | – | Phase at standard temperature and pressure: Solid, Liquid, or Gas. |
| radioactive | boolean | – | True if all isotopes are radioactive (no stable isotopes). |
| symbol | string | – | Chemical symbol (e.g., "Fe"). |
No examples provided.
ref_element_search Element Search ~215
Filter periodic table elements by category, group, period, atomic number range, or atomic mass range. At least one filter is required. Returns matching elements as a summary list. Use ref_element_lookup for the full record on a specific element. Valid categories: alkali metal, alkaline earth metal, transition metal, post-transition metal, metalloid, reactive nonmetal, noble gas, lanthanide, actinide.
| Name | Type | Req | Description |
|---|---|---|---|
| atomic_mass_range | object | – | Inclusive range of atomic mass in unified atomic mass units. |
| atomic_number_range | object | – | Inclusive range of atomic numbers to include. |
| category | string | – | Element category (partial match): alkali metal, alkaline earth metal, transition metal, post-transition metal, metalloid, reactive nonmetal, noble gas, lanthanide, actinide. |
| group | integer | – | Periodic table group number (1–18). Lanthanides and actinides have no group. |
| period | integer | – | Periodic table period (1–7). |
| Name | Type | Req | Description |
|---|---|---|---|
| appliedFilters | object | – | Active filters applied to the search. |
| error | object | – | Present when the call failed. Absent on success. |
| notice | string | – | Recovery hint when no elements matched — echoes active filters and suggests how to broaden. |
| results | array | – | Matching element summaries. |
| totalMatches | integer | – | Number of elements matching all filters. |
No examples provided.
ref_geo_lookup Country Lookup ~143
Look up a country by name, ISO alpha-2 code (2 letters), or ISO alpha-3 code (3 letters). Returns the full record: capital, region, official languages, currencies, calling codes, TLD, flag emoji, and IANA timezone IDs. Accepts fuzzy name matching — "Brasil" and "Brazil" both resolve.
| Name | Type | Req | Description |
|---|---|---|---|
| by | string | – | Lookup strategy: auto tries alpha2, alpha3, then name in order. |
| query | string | yes | Country name (e.g., "Germany"), ISO alpha-2 code (e.g., "DE"), or ISO alpha-3 code (e.g., "DEU"). |
| Name | Type | Req | Description |
|---|---|---|---|
| alpha2 | string | – | ISO 3166-1 alpha-2 code (2 letters). |
| alpha3 | string | – | ISO 3166-1 alpha-3 code (3 letters). |
| calling_codes | array | – | International dialing codes with leading + (e.g., "+1", "+44"). |
| capital | string|null | – | Capital city name, or null if not applicable (e.g., Antarctica). |
| currencies | array | – | Currencies used in the country. |
| error | object | – | Present when the call failed. Absent on success. |
| flag | string | – | Flag emoji (e.g., 🇩🇪). |
| languages | array | – | Official or widely spoken languages in the country. |
| name | string | – | Official English country name. |
| native_name | string | – | Country name in the primary native language. |
| notice | string | – | Present only when the country was resolved via fuzzy name matching (starts-with or contains), not an exact code or name hit. Echoes the query and the resolved country so the caller can normalize foll… |
| region | string | – | Continent-level region (Africa, Americas, Asia, Europe, Oceania, Antarctic). |
| subregion | string|null | – | Subregion within the continent (e.g., "Western Europe"), or null if unavailable. |
| timezones | array | – | IANA timezone IDs observed in this country (e.g., "America/New_York"). |
| tld | string|null | – | Country-code top-level domain (e.g., ".de"), or null if not applicable. |
No examples provided.
ref_geo_search Country Search ~210
Search and filter countries by region, subregion, language, currency, or free-text keyword. At least one filter is required. Returns a ranked list of matching country summaries. Use ref_geo_lookup to get the full record for a specific result.
| Name | Type | Req | Description |
|---|---|---|---|
| currency | string | – | ISO 4217 currency code (e.g., "EUR") or currency name (e.g., "Euro"). |
| keyword | string | – | Matches against country name, native name, capital city, and subregion. |
| language | string | – | ISO 639-1 language code (e.g., "pt") or language name (e.g., "Portuguese"). |
| limit | integer | – | Maximum number of results to return (1–100). |
| region | string | – | Filter by continent region: Africa, Americas, Asia, Europe, Oceania, or Antarctic. |
| subregion | string | – | Filter by subregion (e.g., "Western Europe", "Southeast Asia", "South America"). |
| Name | Type | Req | Description |
|---|---|---|---|
| appliedFilters | object | – | Active filters applied to the search. |
| error | object | – | Present when the call failed. Absent on success. |
| notice | string | – | Recovery hint when no countries matched — echoes active filters and suggests how to broaden. |
| results | array | – | Matching country summaries, up to limit. |
| totalMatches | integer | – | Total countries matching the filters before limit is applied. |
| truncated | boolean | – | True when totalMatches exceeds the limit and results are cut off. |
No examples provided.
ref_http_status HTTP Status Code Lookup ~124
Look up an HTTP status code by number or keyword. Returns the reason phrase, description, category (1xx Informational, 2xx Success, 3xx Redirection, 4xx Client Error, 5xx Server Error), whether the code is cacheable by default, and the defining RFC with section reference. For keyword queries, returns the closest match plus alternatives.
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | yes | Numeric status code (e.g., "404" or "422") or descriptive keyword (e.g., "not found", "too many requests", "unprocessable"). |
| Name | Type | Req | Description |
|---|---|---|---|
| alternatives | array | – | Other status codes that matched the keyword query. Present only for keyword searches with multiple matches. |
| cacheable | boolean | – | Whether this status code is cacheable by default per RFC 9110. |
| category | string | – | Status code category (1xx Informational, 2xx Success, 3xx Redirection, 4xx Client Error, 5xx Server Error). |
| code | integer | – | HTTP status code number. |
| description | string | – | Human-readable description of when and why this status is used. |
| error | object | – | Present when the call failed. Absent on success. |
| reason_phrase | string | – | IANA reason phrase (e.g., "Not Found"). |
| rfc | string | – | Defining RFC (e.g., "RFC 9110"). |
| rfc_section | string|null | – | RFC section number (e.g., "15.5.5"), or null if not applicable. |
No examples provided.
ref_mime_type MIME Type Lookup ~162
Look up a MIME type by type string or file extension. Accepts "image/webp", ".webp", or "webp". Returns the canonical MIME type, known file extensions, whether the type is compressible (relevant for Content-Encoding decisions), and the data source (iana, apache, nginx). For extension lookups, returns the canonical MIME type — e.g., ".jpg" resolves to "image/jpeg". When multiple types map to an extension, the canonical type is returned first with alternatives listed.
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | yes | MIME type string (e.g., "application/json", "image/webp") or file extension with or without leading dot (e.g., ".webp", "webp", "js", ".html"). |
| Name | Type | Req | Description |
|---|---|---|---|
| alternatives | array | – | Other MIME types that also map to the queried extension, when multiple types share the extension. |
| compressible | boolean|null | – | True when this type is compressible (e.g., text and JSON types); false when not; null when unknown. |
| error | object | – | Present when the call failed. Absent on success. |
| extensions | array | – | Known file extensions for this MIME type, without leading dots. |
| source | string|null | – | Data source: "iana" (IANA registry), "apache", "nginx", or null. |
| type | string | – | Canonical MIME type string (e.g., "image/jpeg"). |
No examples provided.
ref_timezone_convert Timezone Conversion ~217
Convert a local datetime from one timezone to another. Takes a local time string (no UTC offset, e.g., "2026-05-24T15:30:00") interpreted as local time in the source timezone, returns the equivalent local time in the target timezone. Shows both UTC offsets so DST transitions are visible. Accepts full IANA IDs (e.g., "Asia/Tokyo") or unambiguous city names (e.g., "Tokyo").
| Name | Type | Req | Description |
|---|---|---|---|
| datetime | string | yes | Local datetime in ISO 8601 format without timezone offset (e.g., "2026-05-24T15:30:00"). Do not include "Z" or an offset suffix. |
| from_tz | string | yes | Source IANA timezone ID or unambiguous city name (e.g., "Asia/Tokyo" or "Tokyo"). |
| to_tz | string | yes | Target IANA timezone ID or unambiguous city name (e.g., "America/New_York" or "New York"). |
| Name | Type | Req | Description |
|---|---|---|---|
| error | object | – | Present when the call failed. Absent on success. |
| source | object | – | Source datetime details. |
| target | object | – | Target datetime details. |
| utc_equivalent | string | – | The UTC equivalent of the input datetime (ISO 8601 with Z suffix). |
No examples provided.
ref_timezone_lookup Timezone Lookup ~216
Get timezone info by IANA ID, country code, or partial city/region name. Returns current UTC offset, standard offset, whether DST is currently active, and major cities in the timezone. When querying by country code (ISO alpha-2), returns all timezones observed in that country. Accepts partial matches — "Tokyo" resolves to "Asia/Tokyo", "NY" resolves to "America/New_York".
| Name | Type | Req | Description |
|---|---|---|---|
| at | string | – | ISO 8601 datetime to evaluate timezone state at a specific moment (e.g., "2026-01-15T12:00:00"). Defaults to current time. |
| by | string | – | Lookup mode: iana for exact IANA ID, country for ISO alpha-2 code, auto tries all strategies. |
| query | string | yes | IANA timezone ID (e.g., "America/New_York"), ISO alpha-2 country code (e.g., "US"), or partial city/region name (e.g., "Tokyo", "London"). |
| Name | Type | Req | Description |
|---|---|---|---|
| error | object | – | Present when the call failed. Absent on success. |
| evaluated_at | string | – | ISO 8601 UTC datetime at which timezone state was evaluated. |
| timezones | array | – | Matching timezone records. Multiple records when querying by country. |
No examples provided.
ref_unit_convert Unit Conversion ~319
Convert a numeric value between compatible units of measure. Supports: length (mm, cm, m, km, in, ft, yd, mi), mass (mcg, mg, g, kg, oz, lb, mt = metric tonne / 1000 kg, t = US short ton / 907.18 kg), volume (ml, cl, dl, l, kl, tsp, Tbs, fl-oz, cup, pnt, qt, gal, m3), temperature (C, F, K, R — non-linear conversions handled), speed (m/s, km/h, knot, ft/s), pressure (Pa, kPa, MPa, hPa, bar, torr, psi), energy (J, kJ, Wh, kWh, MWh), power (W, mW, kW, MW, GW), frequency (Hz, kHz, MHz, GHz), digital storage (b, Kb, Mb, Gb, Tb, B, KB, MB, GB, TB), and angle (deg, rad, grad). Incompatible units (e.g., km to kg) return an error identifying the quantity mismatch.
| Name | Type | Req | Description |
|---|---|---|---|
| from | string | yes | Source unit abbreviation (e.g., "km", "C", "m/h", "kWh", "kg"). |
| to | string | yes | Target unit abbreviation (e.g., "mi", "F", "m/s", "kJ", "lb"). |
| value | number | yes | Numeric quantity to convert. |
| Name | Type | Req | Description |
|---|---|---|---|
| error | object | – | Present when the call failed. Absent on success. |
| from_unit | string | – | Source unit as recognized. |
| measure | string | – | Physical quantity being measured (e.g., "length", "mass", "temperature"). |
| result | number | – | Converted value (full precision float). |
| result_precision | string | – | Human-readable rounded form of the result. |
| to_unit | string | – | Target unit as recognized. |
| value | number | – | Input value as provided. |
No examples provided.
How do I install the io.github.cyanheads/reference-data-mcp-server server?
io.github.cyanheads/reference-data-mcp-server is a hosted endpoint at https://reference-data.caseyjhand.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · reference-data.caseyjhand.com
claude mcp add --transport http cyanheads-reference-data-mcp-server 'https://reference-data.caseyjhand.com/mcp'
What is the io.github.cyanheads/reference-data-mcp-server server?
io.github.cyanheads/reference-data-mcp-server is listed in the public MCP registry as io.github.cyanheads/reference-data-mcp-server. Countries, timezones, elements, constants, HTTP status codes, unit conversion, and MIME type lookup. This page covers its hosted endpoint (https://reference-data.caseyjhand.com/mcp).
Is the io.github.cyanheads/reference-data-mcp-server server safe to use?
io.github.cyanheads/reference-data-mcp-server scores 90 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the io.github.cyanheads/reference-data-mcp-server server expose?
io.github.cyanheads/reference-data-mcp-server exposes 10 tools: ref_geo_lookup, ref_geo_search, ref_timezone_lookup, ref_timezone_convert, ref_element_lookup, and 5 more. Their descriptions and schemas cost roughly 1,919 tokens of context every time the server is loaded.
Does the io.github.cyanheads/reference-data-mcp-server server require authentication?
No. We connected to io.github.cyanheads/reference-data-mcp-server without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the io.github.cyanheads/reference-data-mcp-server server still maintained?
io.github.cyanheads/reference-data-mcp-server is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.