{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_67y3wv3cfj7q","handle":"duo-data-utilities","url":"https://wellknown.network/agents/duo-data-utilities","links":{"self":"https://wellknown.network/agents/duo-data-utilities/record.json","html":"https://wellknown.network/agents/duo-data-utilities","markdown":"https://wellknown.network/agents/duo-data-utilities/record.md","api":"https://wellknown.network/api/v1/agents/duo-data-utilities","status":"https://wellknown.network/api/v1/agents/duo-data-utilities/status","claim":"https://wellknown.network/agents/duo-data-utilities/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/duo-data-utilities/claim.json","badge":"https://wellknown.network/agents/duo-data-utilities/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/duo-data-utilities/history","tools":"https://wellknown.network/api/v1/agents/duo-data-utilities/tools"},"ard":{"identifier":"urn:air:api.duoleads.com:server:duo-data-utilities","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Duo Data Utilities","summary":"33 pay-per-call data utilities (IDs, time, text, codes, geo, chain, ref, numbers) via x402.","description":"33 pay-per-call data utilities (IDs, time, text, codes, geo, chain, ref, numbers) via x402.","publisher":{"name":"com.duoleads.api","url":null},"homepage":"https://api.duoleads.com","repository":null,"version":"1.0.2","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://api.duoleads.com/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-10-03T00:37:27.928989Z","publishedAt":"2026-10-03T00:37:27.928989Z","registryName":"com.duoleads.api/data-utilities"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"finance.markets","name":"Markets & Trading","confidence":1,"provenance":"derived"},{"slug":"productivity.calendar","name":"Calendar & Scheduling","confidence":0.525,"provenance":"derived"},{"slug":"security.identity","name":"Identity & Access","confidence":0.525,"provenance":"derived"},{"slug":"documents.conversion","name":"Document Conversion","confidence":0.51,"provenance":"derived"}],"categories":["documents","finance","productivity","security"],"language":"es"},"observed":{"status":"live","statusReason":"Responded 27m ago.","lastOkAt":"2026-10-10T10:27:34.490Z","lastProbedAt":"2026-10-10T10:27:34.490Z","statusComputedAt":"2026-10-10T10:29:52.311Z","reliability30d":{"probes":37,"successRate":1,"p50Ms":99,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":37,"ok":37,"authBoundaryOk":0,"serviceOk":37,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-10T10:27:34.490Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":104,"error":null,"detail":{"tools":[{"name":"vat_tax_id_validate","description":"Validate a national identity, tax or company registration number against its country's official checksum rule. Covers 23 countries including NL BSN, ES NIF/NIE/"},{"name":"gtin_barcode_validate","description":"Validate and convert GS1 identifiers: GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13), GTIN-14, GLN and SSCC. Returns the check-digit verdict, the computed correct ch"},{"name":"isin_cusip_sedol_validate","description":"Validate the check digit of a financial security identifier: ISIN (ISO 6166), CUSIP, SEDOL and FIGI. Returns the verdict, the computed correct check character, "},{"name":"iban_validate","description":"Validate an IBAN: length for its country, permitted character classes per field, and the ISO 7064 mod-97-10 check digits. Returns the verdict with a specific fa"},{"name":"iban_generate","description":"Construct an IBAN from a country code and the domestic account parts, computing the ISO 7064 mod-97-10 check digits. Takes either a single BBAN string or named "},{"name":"timezone_convert","description":"Convert an instant to wall-clock time in a named IANA time zone, or a wall-clock time in a zone back to an instant. Returns the local date and time, the UTC off"},{"name":"dst_transitions","description":"List the daylight-saving transitions for an IANA time zone over a date range: the exact instant of each shift, the offset before and after, and whether local cl"},{"name":"business_days_calculate","description":"Business-day arithmetic with a caller-supplied calendar: add or subtract N working days from a date, or count the working days between two dates. The weekend is"},{"name":"rrule_expand","description":"Expand an RFC 5545 recurrence rule into concrete occurrence timestamps. Accepts an RRULE string with DTSTART, an IANA time zone, and optional EXDATE and RDATE l"},{"name":"calendar_convert","description":"Convert a Gregorian date to other calendar systems: Islamic (both the tabular civil calendar and the Umm al-Qura variant), Hebrew, Japanese imperial era, Republ"},{"name":"slug_generate","description":"Turn arbitrary text into a URL-safe slug. Decomposes accents, transliterates German umlauts, Scandinavian and Turkish letters, the ligatures that lose meaning u"},{"name":"cyrillic_transliterate","description":"Transliterate Cyrillic text into Latin using a named standard: ISO 9:1995 (one-to-one, with diacritics, covering the full standard: Russian, other Slavic, histo"},{"name":"unicode_confusables_check","description":"Analyse a string at the Unicode level: apply NFC, NFD, NFKC or NFKD, report which forms it is already in, list the scripts present (all Unicode scripts), and fl"},{"name":"string_similarity","description":"Compare two strings and return every standard similarity measure in one call: Levenshtein and Damerau-Levenshtein edit distance, normalised similarity, Jaro and"},{"name":"url_parse","description":"Parse and canonicalise a URL, and extract its registrable domain using the Public Suffix List — the part an agent needs to decide whether two URLs belong to the"},{"name":"punycode_convert","description":"Convert internationalised domain names between Unicode and ASCII punycode in either direction, label by label, and validate each label against IDNA2008: length,"},{"name":"semver_compare","description":"Parse a semantic version into major, minor, patch, prerelease and build parts; compare two versions by precedence including prerelease ordering; or test whether"},{"name":"hash_generate","description":"Compute a cryptographic digest of supplied data: SHA-256, SHA-384, SHA-512, SHA-1, SHA3-256, SHA3-512, Keccak-256, BLAKE2b-256 and BLAKE2b-512, plus HMAC with a"},{"name":"jwt_decode","description":"Decode a JSON Web Token without verifying it: returns the header, the claims, the signature length and algorithm, and a computed view of the time claims — wheth"},{"name":"geohash_encode_decode","description":"Encode a WGS-84 latitude and longitude to a geohash at a chosen precision, or decode a geohash back to its bounding box, centre point and error bounds in metres"},{"name":"plus_code_encode_decode","description":"Encode coordinates as an Open Location Code (plus code) at a chosen length, or decode a full code back to its bounding box and centre. Also shortens a full code"},{"name":"point_in_polygon","description":"Geometric predicates on a GeoJSON geometry supplied in the request: point-in-polygon with correct hole handling, bounding box, centroid, signed area in square m"},{"name":"geo_distance","description":"Distance and direction between WGS-84 coordinates: geodesic distance by Vincenty with a haversine fallback, initial and final bearing, the midpoint, and the des"},{"name":"crypto_address_validate","description":"Identify which blockchain an address belongs to and validate its encoding: EVM EIP-55 checksum, Bitcoin base58check and bech32/bech32m with witness version, Sol"},{"name":"solidity_function_selector","description":"Compute the Keccak-256 hash of a Solidity function or event signature and derive the 4-byte function selector and the 32-byte event topic. Normalises the signat"},{"name":"nuts_region_lookup","description":"Look up a NUTS statistical region of the European Union: resolve a NUTS code to its name, country and level, walk up to its parents or down to its children, or "},{"name":"airport_lookup","description":"Look up an airport by IATA or ICAO code and get its name, city, country, ISO 3166-2 region code, WGS-84 coordinates, elevation and IANA time zone, or find the n"},{"name":"currency_lookup","description":"Look up a currency by its ISO 4217 alphabetic or numeric code: the official English name, minor-unit exponent, fund flag, the smallest cash denomination where i"},{"name":"country_lookup","description":"Look up a country or territory by ISO 3166-1 alpha-2, alpha-3 or numeric code, or by name, and get the other codes, the official and common English names, the U"},{"name":"base_convert","description":"Convert an integer between any two numeric bases from 2 to 36, with arbitrary precision so values far beyond 2^53 are exact. Accepts an optional sign and common"},{"name":"number_to_words","description":"Spell a number out in words in English, Dutch, German, French, Spanish, Italian, Portuguese, Polish, Russian, Turkish, Swedish or Japanese, in cardinal, ordinal"},{"name":"statistics_calculate","description":"Descriptive statistics for a supplied numeric array in one call: count, sum, mean, median, mode, variance and standard deviation with variance and standard devi"},{"name":"money_split","description":"Split a money amount into shares without losing or inventing a cent. Divide evenly into N parts, or by a list of ratios, and the remainder is distributed one mi"}],"toolCount":33,"toolsHash":"f34168ba81176fc15eff643c8e8a952148544e8decbdb0ffba435a0444971028","serverName":"Duo Data Utilities","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T03:26:04.566Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":285,"error":null,"detail":{"tools":[{"name":"vat_tax_id_validate","description":"Validate a national identity, tax or company registration number against its country's official checksum rule. Covers 23 countries including NL BSN, ES NIF/NIE/"},{"name":"gtin_barcode_validate","description":"Validate and convert GS1 identifiers: GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13), GTIN-14, GLN and SSCC. Returns the check-digit verdict, the computed correct ch"},{"name":"isin_cusip_sedol_validate","description":"Validate the check digit of a financial security identifier: ISIN (ISO 6166), CUSIP, SEDOL and FIGI. Returns the verdict, the computed correct check character, "},{"name":"iban_validate","description":"Validate an IBAN: length for its country, permitted character classes per field, and the ISO 7064 mod-97-10 check digits. Returns the verdict with a specific fa"},{"name":"iban_generate","description":"Construct an IBAN from a country code and the domestic account parts, computing the ISO 7064 mod-97-10 check digits. Takes either a single BBAN string or named "},{"name":"timezone_convert","description":"Convert an instant to wall-clock time in a named IANA time zone, or a wall-clock time in a zone back to an instant. Returns the local date and time, the UTC off"},{"name":"dst_transitions","description":"List the daylight-saving transitions for an IANA time zone over a date range: the exact instant of each shift, the offset before and after, and whether local cl"},{"name":"business_days_calculate","description":"Business-day arithmetic with a caller-supplied calendar: add or subtract N working days from a date, or count the working days between two dates. The weekend is"},{"name":"rrule_expand","description":"Expand an RFC 5545 recurrence rule into concrete occurrence timestamps. Accepts an RRULE string with DTSTART, an IANA time zone, and optional EXDATE and RDATE l"},{"name":"calendar_convert","description":"Convert a Gregorian date to other calendar systems: Islamic (both the tabular civil calendar and the Umm al-Qura variant), Hebrew, Japanese imperial era, Republ"},{"name":"slug_generate","description":"Turn arbitrary text into a URL-safe slug. Decomposes accents, transliterates German umlauts, Scandinavian and Turkish letters, the ligatures that lose meaning u"},{"name":"cyrillic_transliterate","description":"Transliterate Cyrillic text into Latin using a named standard: ISO 9:1995 (one-to-one, with diacritics, covering the full standard: Russian, other Slavic, histo"},{"name":"unicode_confusables_check","description":"Analyse a string at the Unicode level: apply NFC, NFD, NFKC or NFKD, report which forms it is already in, list the scripts present (all Unicode scripts), and fl"},{"name":"string_similarity","description":"Compare two strings and return every standard similarity measure in one call: Levenshtein and Damerau-Levenshtein edit distance, normalised similarity, Jaro and"},{"name":"url_parse","description":"Parse and canonicalise a URL, and extract its registrable domain using the Public Suffix List — the part an agent needs to decide whether two URLs belong to the"},{"name":"punycode_convert","description":"Convert internationalised domain names between Unicode and ASCII punycode in either direction, label by label, and validate each label against IDNA2008: length,"},{"name":"semver_compare","description":"Parse a semantic version into major, minor, patch, prerelease and build parts; compare two versions by precedence including prerelease ordering; or test whether"},{"name":"hash_generate","description":"Compute a cryptographic digest of supplied data: SHA-256, SHA-384, SHA-512, SHA-1, SHA3-256, SHA3-512, Keccak-256, BLAKE2b-256 and BLAKE2b-512, plus HMAC with a"},{"name":"jwt_decode","description":"Decode a JSON Web Token without verifying it: returns the header, the claims, the signature length and algorithm, and a computed view of the time claims — wheth"},{"name":"geohash_encode_decode","description":"Encode a WGS-84 latitude and longitude to a geohash at a chosen precision, or decode a geohash back to its bounding box, centre point and error bounds in metres"},{"name":"plus_code_encode_decode","description":"Encode coordinates as an Open Location Code (plus code) at a chosen length, or decode a full code back to its bounding box and centre. Also shortens a full code"},{"name":"point_in_polygon","description":"Geometric predicates on a GeoJSON geometry supplied in the request: point-in-polygon with correct hole handling, bounding box, centroid, signed area in square m"},{"name":"geo_distance","description":"Distance and direction between WGS-84 coordinates: geodesic distance by Vincenty with a haversine fallback, initial and final bearing, the midpoint, and the des"},{"name":"crypto_address_validate","description":"Identify which blockchain an address belongs to and validate its encoding: EVM EIP-55 checksum, Bitcoin base58check and bech32/bech32m with witness version, Sol"},{"name":"solidity_function_selector","description":"Compute the Keccak-256 hash of a Solidity function or event signature and derive the 4-byte function selector and the 32-byte event topic. Normalises the signat"},{"name":"nuts_region_lookup","description":"Look up a NUTS statistical region of the European Union: resolve a NUTS code to its name, country and level, walk up to its parents or down to its children, or "},{"name":"airport_lookup","description":"Look up an airport by IATA or ICAO code and get its name, city, country, ISO 3166-2 region code, WGS-84 coordinates, elevation and IANA time zone, or find the n"},{"name":"currency_lookup","description":"Look up a currency by its ISO 4217 alphabetic or numeric code: the official English name, minor-unit exponent, fund flag, the smallest cash denomination where i"},{"name":"country_lookup","description":"Look up a country or territory by ISO 3166-1 alpha-2, alpha-3 or numeric code, or by name, and get the other codes, the official and common English names, the U"},{"name":"base_convert","description":"Convert an integer between any two numeric bases from 2 to 36, with arbitrary precision so values far beyond 2^53 are exact. Accepts an optional sign and common"},{"name":"number_to_words","description":"Spell a number out in words in English, Dutch, German, French, Spanish, Italian, Portuguese, Polish, Russian, Turkish, Swedish or Japanese, in cardinal, ordinal"},{"name":"statistics_calculate","description":"Descriptive statistics for a supplied numeric array in one call: count, sum, mean, median, mode, variance and standard deviation with variance and standard devi"},{"name":"money_split","description":"Split a money amount into shares without losing or inventing a cent. Divide evenly into N parts, or by a list of ratios, and the remainder is distributed one mi"}],"toolCount":33,"toolsHash":"f34168ba81176fc15eff643c8e8a952148544e8decbdb0ffba435a0444971028","serverName":"Duo Data Utilities","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T21:26:20.509Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":19,"error":null,"detail":{"tools":[{"name":"vat_tax_id_validate","description":"Validate a national identity, tax or company registration number against its country's official checksum rule. Covers 23 countries including NL BSN, ES NIF/NIE/"},{"name":"gtin_barcode_validate","description":"Validate and convert GS1 identifiers: GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13), GTIN-14, GLN and SSCC. Returns the check-digit verdict, the computed correct ch"},{"name":"isin_cusip_sedol_validate","description":"Validate the check digit of a financial security identifier: ISIN (ISO 6166), CUSIP, SEDOL and FIGI. Returns the verdict, the computed correct check character, "},{"name":"iban_validate","description":"Validate an IBAN: length for its country, permitted character classes per field, and the ISO 7064 mod-97-10 check digits. Returns the verdict with a specific fa"},{"name":"iban_generate","description":"Construct an IBAN from a country code and the domestic account parts, computing the ISO 7064 mod-97-10 check digits. Takes either a single BBAN string or named "},{"name":"timezone_convert","description":"Convert an instant to wall-clock time in a named IANA time zone, or a wall-clock time in a zone back to an instant. Returns the local date and time, the UTC off"},{"name":"dst_transitions","description":"List the daylight-saving transitions for an IANA time zone over a date range: the exact instant of each shift, the offset before and after, and whether local cl"},{"name":"business_days_calculate","description":"Business-day arithmetic with a caller-supplied calendar: add or subtract N working days from a date, or count the working days between two dates. The weekend is"},{"name":"rrule_expand","description":"Expand an RFC 5545 recurrence rule into concrete occurrence timestamps. Accepts an RRULE string with DTSTART, an IANA time zone, and optional EXDATE and RDATE l"},{"name":"calendar_convert","description":"Convert a Gregorian date to other calendar systems: Islamic (both the tabular civil calendar and the Umm al-Qura variant), Hebrew, Japanese imperial era, Republ"},{"name":"slug_generate","description":"Turn arbitrary text into a URL-safe slug. Decomposes accents, transliterates German umlauts, Scandinavian and Turkish letters, the ligatures that lose meaning u"},{"name":"cyrillic_transliterate","description":"Transliterate Cyrillic text into Latin using a named standard: ISO 9:1995 (one-to-one, with diacritics, covering the full standard: Russian, other Slavic, histo"},{"name":"unicode_confusables_check","description":"Analyse a string at the Unicode level: apply NFC, NFD, NFKC or NFKD, report which forms it is already in, list the scripts present (all Unicode scripts), and fl"},{"name":"string_similarity","description":"Compare two strings and return every standard similarity measure in one call: Levenshtein and Damerau-Levenshtein edit distance, normalised similarity, Jaro and"},{"name":"url_parse","description":"Parse and canonicalise a URL, and extract its registrable domain using the Public Suffix List — the part an agent needs to decide whether two URLs belong to the"},{"name":"punycode_convert","description":"Convert internationalised domain names between Unicode and ASCII punycode in either direction, label by label, and validate each label against IDNA2008: length,"},{"name":"semver_compare","description":"Parse a semantic version into major, minor, patch, prerelease and build parts; compare two versions by precedence including prerelease ordering; or test whether"},{"name":"hash_generate","description":"Compute a cryptographic digest of supplied data: SHA-256, SHA-384, SHA-512, SHA-1, SHA3-256, SHA3-512, Keccak-256, BLAKE2b-256 and BLAKE2b-512, plus HMAC with a"},{"name":"jwt_decode","description":"Decode a JSON Web Token without verifying it: returns the header, the claims, the signature length and algorithm, and a computed view of the time claims — wheth"},{"name":"geohash_encode_decode","description":"Encode a WGS-84 latitude and longitude to a geohash at a chosen precision, or decode a geohash back to its bounding box, centre point and error bounds in metres"},{"name":"plus_code_encode_decode","description":"Encode coordinates as an Open Location Code (plus code) at a chosen length, or decode a full code back to its bounding box and centre. Also shortens a full code"},{"name":"point_in_polygon","description":"Geometric predicates on a GeoJSON geometry supplied in the request: point-in-polygon with correct hole handling, bounding box, centroid, signed area in square m"},{"name":"geo_distance","description":"Distance and direction between WGS-84 coordinates: geodesic distance by Vincenty with a haversine fallback, initial and final bearing, the midpoint, and the des"},{"name":"crypto_address_validate","description":"Identify which blockchain an address belongs to and validate its encoding: EVM EIP-55 checksum, Bitcoin base58check and bech32/bech32m with witness version, Sol"},{"name":"solidity_function_selector","description":"Compute the Keccak-256 hash of a Solidity function or event signature and derive the 4-byte function selector and the 32-byte event topic. Normalises the signat"},{"name":"nuts_region_lookup","description":"Look up a NUTS statistical region of the European Union: resolve a NUTS code to its name, country and level, walk up to its parents or down to its children, or "},{"name":"airport_lookup","description":"Look up an airport by IATA or ICAO code and get its name, city, country, ISO 3166-2 region code, WGS-84 coordinates, elevation and IANA time zone, or find the n"},{"name":"currency_lookup","description":"Look up a currency by its ISO 4217 alphabetic or numeric code: the official English name, minor-unit exponent, fund flag, the smallest cash denomination where i"},{"name":"country_lookup","description":"Look up a country or territory by ISO 3166-1 alpha-2, alpha-3 or numeric code, or by name, and get the other codes, the official and common English names, the U"},{"name":"base_convert","description":"Convert an integer between any two numeric bases from 2 to 36, with arbitrary precision so values far beyond 2^53 are exact. Accepts an optional sign and common"},{"name":"number_to_words","description":"Spell a number out in words in English, Dutch, German, French, Spanish, Italian, Portuguese, Polish, Russian, Turkish, Swedish or Japanese, in cardinal, ordinal"},{"name":"statistics_calculate","description":"Descriptive statistics for a supplied numeric array in one call: count, sum, mean, median, mode, variance and standard deviation with variance and standard devi"},{"name":"money_split","description":"Split a money amount into shares without losing or inventing a cent. Divide evenly into N parts, or by a list of ratios, and the remainder is distributed one mi"}],"toolCount":33,"toolsHash":"f34168ba81176fc15eff643c8e8a952148544e8decbdb0ffba435a0444971028","serverName":"Duo Data Utilities","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T14:30:41.527Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":102,"error":null,"detail":{"tools":[{"name":"id_national","description":"Validate a national identity, tax or company registration number against its country's official checksum rule. Covers 23 countries including NL BSN, ES NIF/NIE/"},{"name":"id_gs1","description":"Validate and convert GS1 identifiers: GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13), GTIN-14, GLN and SSCC. Returns the check-digit verdict, the computed correct ch"},{"name":"id_security","description":"Validate the check digit of a financial security identifier: ISIN (ISO 6166), CUSIP, SEDOL and FIGI. Returns the verdict, the computed correct check character, "},{"name":"id_iban","description":"Validate an IBAN: length for its country, permitted character classes per field, and the ISO 7064 mod-97-10 check digits. Returns the verdict with a specific fa"},{"name":"id_iban-build","description":"Construct an IBAN from a country code and the domestic account parts, computing the ISO 7064 mod-97-10 check digits. Takes either a single BBAN string or named "},{"name":"time_zone","description":"Convert an instant to wall-clock time in a named IANA time zone, or a wall-clock time in a zone back to an instant. Returns the local date and time, the UTC off"},{"name":"time_dst","description":"List the daylight-saving transitions for an IANA time zone over a date range: the exact instant of each shift, the offset before and after, and whether local cl"},{"name":"time_business-days","description":"Business-day arithmetic with a caller-supplied calendar: add or subtract N working days from a date, or count the working days between two dates. The weekend is"},{"name":"time_rrule","description":"Expand an RFC 5545 recurrence rule into concrete occurrence timestamps. Accepts an RRULE string with DTSTART, an IANA time zone, and optional EXDATE and RDATE l"},{"name":"time_calendar","description":"Convert a Gregorian date to other calendar systems: Islamic (both the tabular civil calendar and the Umm al-Qura variant), Hebrew, Japanese imperial era, Republ"},{"name":"text_slug","description":"Turn arbitrary text into a URL-safe slug. Decomposes accents, transliterates German umlauts, Scandinavian and Turkish letters, the ligatures that lose meaning u"},{"name":"text_transliterate","description":"Transliterate Cyrillic text into Latin using a named standard: ISO 9:1995 (one-to-one, with diacritics, covering the full standard: Russian, other Slavic, histo"},{"name":"text_unicode","description":"Analyse a string at the Unicode level: apply NFC, NFD, NFKC or NFKD, report which forms it is already in, list the scripts present (all Unicode scripts), and fl"},{"name":"text_similarity","description":"Compare two strings and return every standard similarity measure in one call: Levenshtein and Damerau-Levenshtein edit distance, normalised similarity, Jaro and"},{"name":"code_url","description":"Parse and canonicalise a URL, and extract its registrable domain using the Public Suffix List — the part an agent needs to decide whether two URLs belong to the"},{"name":"code_idn","description":"Convert internationalised domain names between Unicode and ASCII punycode in either direction, label by label, and validate each label against IDNA2008: length,"},{"name":"code_semver","description":"Parse a semantic version into major, minor, patch, prerelease and build parts; compare two versions by precedence including prerelease ordering; or test whether"},{"name":"code_hash","description":"Compute a cryptographic digest of supplied data: SHA-256, SHA-384, SHA-512, SHA-1, SHA3-256, SHA3-512, Keccak-256, BLAKE2b-256 and BLAKE2b-512, plus HMAC with a"},{"name":"code_jwt","description":"Decode a JSON Web Token without verifying it: returns the header, the claims, the signature length and algorithm, and a computed view of the time claims — wheth"},{"name":"geo_geohash","description":"Encode a WGS-84 latitude and longitude to a geohash at a chosen precision, or decode a geohash back to its bounding box, centre point and error bounds in metres"},{"name":"geo_pluscode","description":"Encode coordinates as an Open Location Code (plus code) at a chosen length, or decode a full code back to its bounding box and centre. Also shortens a full code"},{"name":"geo_polygon","description":"Geometric predicates on a GeoJSON geometry supplied in the request: point-in-polygon with correct hole handling, bounding box, centroid, signed area in square m"},{"name":"geo_distance","description":"Distance and direction between WGS-84 coordinates: geodesic distance by Vincenty with a haversine fallback, initial and final bearing, the midpoint, and the des"},{"name":"chain_address","description":"Identify which blockchain an address belongs to and validate its encoding: EVM EIP-55 checksum, Bitcoin base58check and bech32/bech32m with witness version, Sol"},{"name":"chain_selector","description":"Compute the Keccak-256 hash of a Solidity function or event signature and derive the 4-byte function selector and the 32-byte event topic. Normalises the signat"},{"name":"ref_nuts","description":"Look up a NUTS statistical region of the European Union: resolve a NUTS code to its name, country and level, walk up to its parents or down to its children, or "},{"name":"ref_airport","description":"Look up an airport by IATA or ICAO code and get its name, city, country, ISO 3166-2 region code, WGS-84 coordinates, elevation and IANA time zone, or find the n"},{"name":"ref_currency","description":"Look up a currency by its ISO 4217 alphabetic or numeric code: the official English name, minor-unit exponent, fund flag, the smallest cash denomination where i"},{"name":"ref_country","description":"Look up a country or territory by ISO 3166-1 alpha-2, alpha-3 or numeric code, or by name, and get the other codes, the official and common English names, the U"},{"name":"num_radix","description":"Convert an integer between any two numeric bases from 2 to 36, with arbitrary precision so values far beyond 2^53 are exact. Accepts an optional sign and common"},{"name":"num_words","description":"Spell a number out in words in English, Dutch, German, French, Spanish, Italian, Portuguese, Polish, Russian, Turkish, Swedish or Japanese, in cardinal, ordinal"},{"name":"num_stats","description":"Descriptive statistics for a supplied numeric array in one call: count, sum, mean, median, mode, variance and standard deviation with variance and standard devi"},{"name":"num_allocate","description":"Split a money amount into shares without losing or inventing a cent. Divide evenly into N parts, or by a list of ratios, and the remainder is distributed one mi"}],"toolCount":33,"toolsHash":"5e3a67e02345d42f79e93dbb2927b7da7f73962a0c2c22f4c4d31c3edf7da6c4","serverName":"Duo Data Utilities","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T07:25:51.120Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":136,"error":null,"detail":{"tools":[{"name":"id_national","description":"Validate a national identity, tax or company registration number against its country's official checksum rule. Covers 23 countries including NL BSN, ES NIF/NIE/"},{"name":"id_gs1","description":"Validate and convert GS1 identifiers: GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13), GTIN-14, GLN and SSCC. Returns the check-digit verdict, the computed correct ch"},{"name":"id_security","description":"Validate the check digit of a financial security identifier: ISIN (ISO 6166), CUSIP, SEDOL and FIGI. Returns the verdict, the computed correct check character, "},{"name":"id_iban","description":"Validate an IBAN: length for its country, permitted character classes per field, and the ISO 7064 mod-97-10 check digits. Returns the verdict with a specific fa"},{"name":"id_iban-build","description":"Construct an IBAN from a country code and the domestic account parts, computing the ISO 7064 mod-97-10 check digits. Takes either a single BBAN string or named "},{"name":"time_zone","description":"Convert an instant to wall-clock time in a named IANA time zone, or a wall-clock time in a zone back to an instant. Returns the local date and time, the UTC off"},{"name":"time_dst","description":"List the daylight-saving transitions for an IANA time zone over a date range: the exact instant of each shift, the offset before and after, and whether local cl"},{"name":"time_business-days","description":"Business-day arithmetic with a caller-supplied calendar: add or subtract N working days from a date, or count the working days between two dates. The weekend is"},{"name":"time_rrule","description":"Expand an RFC 5545 recurrence rule into concrete occurrence timestamps. Accepts an RRULE string with DTSTART, an IANA time zone, and optional EXDATE and RDATE l"},{"name":"time_calendar","description":"Convert a Gregorian date to other calendar systems: Islamic (both the tabular civil calendar and the Umm al-Qura variant), Hebrew, Japanese imperial era, Republ"},{"name":"text_slug","description":"Turn arbitrary text into a URL-safe slug. Decomposes accents, transliterates German umlauts, Scandinavian and Turkish letters, the ligatures that lose meaning u"},{"name":"text_transliterate","description":"Transliterate Cyrillic text into Latin using a named standard: ISO 9:1995 (one-to-one, with diacritics, covering the full standard: Russian, other Slavic, histo"},{"name":"text_unicode","description":"Analyse a string at the Unicode level: apply NFC, NFD, NFKC or NFKD, report which forms it is already in, list the scripts present (all Unicode scripts), and fl"},{"name":"text_similarity","description":"Compare two strings and return every standard similarity measure in one call: Levenshtein and Damerau-Levenshtein edit distance, normalised similarity, Jaro and"},{"name":"code_url","description":"Parse and canonicalise a URL, and extract its registrable domain using the Public Suffix List — the part an agent needs to decide whether two URLs belong to the"},{"name":"code_idn","description":"Convert internationalised domain names between Unicode and ASCII punycode in either direction, label by label, and validate each label against IDNA2008: length,"},{"name":"code_semver","description":"Parse a semantic version into major, minor, patch, prerelease and build parts; compare two versions by precedence including prerelease ordering; or test whether"},{"name":"code_hash","description":"Compute a cryptographic digest of supplied data: SHA-256, SHA-384, SHA-512, SHA-1, SHA3-256, SHA3-512, Keccak-256, BLAKE2b-256 and BLAKE2b-512, plus HMAC with a"},{"name":"code_jwt","description":"Decode a JSON Web Token without verifying it: returns the header, the claims, the signature length and algorithm, and a computed view of the time claims — wheth"},{"name":"geo_geohash","description":"Encode a WGS-84 latitude and longitude to a geohash at a chosen precision, or decode a geohash back to its bounding box, centre point and error bounds in metres"},{"name":"geo_pluscode","description":"Encode coordinates as an Open Location Code (plus code) at a chosen length, or decode a full code back to its bounding box and centre. Also shortens a full code"},{"name":"geo_polygon","description":"Geometric predicates on a GeoJSON geometry supplied in the request: point-in-polygon with correct hole handling, bounding box, centroid, signed area in square m"},{"name":"geo_distance","description":"Distance and direction between WGS-84 coordinates: geodesic distance by Vincenty with a haversine fallback, initial and final bearing, the midpoint, and the des"},{"name":"chain_address","description":"Identify which blockchain an address belongs to and validate its encoding: EVM EIP-55 checksum, Bitcoin base58check and bech32/bech32m with witness version, Sol"},{"name":"chain_selector","description":"Compute the Keccak-256 hash of a Solidity function or event signature and derive the 4-byte function selector and the 32-byte event topic. Normalises the signat"},{"name":"ref_nuts","description":"Look up a NUTS statistical region of the European Union: resolve a NUTS code to its name, country and level, walk up to its parents or down to its children, or "},{"name":"ref_airport","description":"Look up an airport by IATA or ICAO code and get its name, city, country, ISO 3166-2 region code, WGS-84 coordinates, elevation and IANA time zone, or find the n"},{"name":"ref_currency","description":"Look up a currency by its ISO 4217 alphabetic or numeric code: the official English name, minor-unit exponent, fund flag, the smallest cash denomination where i"},{"name":"ref_country","description":"Look up a country or territory by ISO 3166-1 alpha-2, alpha-3 or numeric code, or by name, and get the other codes, the official and common English names, the U"},{"name":"num_radix","description":"Convert an integer between any two numeric bases from 2 to 36, with arbitrary precision so values far beyond 2^53 are exact. Accepts an optional sign and common"},{"name":"num_words","description":"Spell a number out in words in English, Dutch, German, French, Spanish, Italian, Portuguese, Polish, Russian, Turkish, Swedish or Japanese, in cardinal, ordinal"},{"name":"num_stats","description":"Descriptive statistics for a supplied numeric array in one call: count, sum, mean, median, mode, variance and standard deviation with variance and standard devi"},{"name":"num_allocate","description":"Split a money amount into shares without losing or inventing a cent. Divide evenly into N parts, or by a list of ratios, and the remainder is distributed one mi"}],"toolCount":33,"toolsHash":"5e3a67e02345d42f79e93dbb2927b7da7f73962a0c2c22f4c4d31c3edf7da6c4","serverName":"Duo Data Utilities","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T00:26:42.056Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":112,"error":null,"detail":{"tools":[{"name":"id_national","description":"Validate a national identity, tax or company registration number against its country's official checksum rule. Covers 23 countries including NL BSN, ES NIF/NIE/"},{"name":"id_gs1","description":"Validate and convert GS1 identifiers: GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13), GTIN-14, GLN and SSCC. Returns the check-digit verdict, the computed correct ch"},{"name":"id_security","description":"Validate the check digit of a financial security identifier: ISIN (ISO 6166), CUSIP, SEDOL and FIGI. Returns the verdict, the computed correct check character, "},{"name":"id_iban","description":"Validate an IBAN: length for its country, permitted character classes per field, and the ISO 7064 mod-97-10 check digits. Returns the verdict with a specific fa"},{"name":"id_iban-build","description":"Construct an IBAN from a country code and the domestic account parts, computing the ISO 7064 mod-97-10 check digits. Takes either a single BBAN string or named "},{"name":"time_zone","description":"Convert an instant to wall-clock time in a named IANA time zone, or a wall-clock time in a zone back to an instant. Returns the local date and time, the UTC off"},{"name":"time_dst","description":"List the daylight-saving transitions for an IANA time zone over a date range: the exact instant of each shift, the offset before and after, and whether local cl"},{"name":"time_business-days","description":"Business-day arithmetic with a caller-supplied calendar: add or subtract N working days from a date, or count the working days between two dates. The weekend is"},{"name":"time_rrule","description":"Expand an RFC 5545 recurrence rule into concrete occurrence timestamps. Accepts an RRULE string with DTSTART, an IANA time zone, and optional EXDATE and RDATE l"},{"name":"time_calendar","description":"Convert a Gregorian date to other calendar systems: Islamic (both the tabular civil calendar and the Umm al-Qura variant), Hebrew, Japanese imperial era, Republ"},{"name":"text_slug","description":"Turn arbitrary text into a URL-safe slug. Decomposes accents, transliterates German umlauts, Scandinavian and Turkish letters, the ligatures that lose meaning u"},{"name":"text_transliterate","description":"Transliterate Cyrillic text into Latin using a named standard: ISO 9:1995 (one-to-one, with diacritics, covering the full standard: Russian, other Slavic, histo"},{"name":"text_unicode","description":"Analyse a string at the Unicode level: apply NFC, NFD, NFKC or NFKD, report which forms it is already in, list the scripts present (all Unicode scripts), and fl"},{"name":"text_similarity","description":"Compare two strings and return every standard similarity measure in one call: Levenshtein and Damerau-Levenshtein edit distance, normalised similarity, Jaro and"},{"name":"code_url","description":"Parse and canonicalise a URL, and extract its registrable domain using the Public Suffix List — the part an agent needs to decide whether two URLs belong to the"},{"name":"code_idn","description":"Convert internationalised domain names between Unicode and ASCII punycode in either direction, label by label, and validate each label against IDNA2008: length,"},{"name":"code_semver","description":"Parse a semantic version into major, minor, patch, prerelease and build parts; compare two versions by precedence including prerelease ordering; or test whether"},{"name":"code_hash","description":"Compute a cryptographic digest of supplied data: SHA-256, SHA-384, SHA-512, SHA-1, SHA3-256, SHA3-512, Keccak-256, BLAKE2b-256 and BLAKE2b-512, plus HMAC with a"},{"name":"code_jwt","description":"Decode a JSON Web Token without verifying it: returns the header, the claims, the signature length and algorithm, and a computed view of the time claims — wheth"},{"name":"geo_geohash","description":"Encode a WGS-84 latitude and longitude to a geohash at a chosen precision, or decode a geohash back to its bounding box, centre point and error bounds in metres"},{"name":"geo_pluscode","description":"Encode coordinates as an Open Location Code (plus code) at a chosen length, or decode a full code back to its bounding box and centre. Also shortens a full code"},{"name":"geo_polygon","description":"Geometric predicates on a GeoJSON geometry supplied in the request: point-in-polygon with correct hole handling, bounding box, centroid, signed area in square m"},{"name":"geo_distance","description":"Distance and direction between WGS-84 coordinates: geodesic distance by Vincenty with a haversine fallback, initial and final bearing, the midpoint, and the des"},{"name":"chain_address","description":"Identify which blockchain an address belongs to and validate its encoding: EVM EIP-55 checksum, Bitcoin base58check and bech32/bech32m with witness version, Sol"},{"name":"chain_selector","description":"Compute the Keccak-256 hash of a Solidity function or event signature and derive the 4-byte function selector and the 32-byte event topic. Normalises the signat"},{"name":"ref_nuts","description":"Look up a NUTS statistical region of the European Union: resolve a NUTS code to its name, country and level, walk up to its parents or down to its children, or "},{"name":"ref_airport","description":"Look up an airport by IATA or ICAO code and get its name, city, country, ISO 3166-2 region code, WGS-84 coordinates, elevation and IANA time zone, or find the n"},{"name":"ref_currency","description":"Look up a currency by its ISO 4217 alphabetic or numeric code: the official English name, minor-unit exponent, fund flag, the smallest cash denomination where i"},{"name":"ref_country","description":"Look up a country or territory by ISO 3166-1 alpha-2, alpha-3 or numeric code, or by name, and get the other codes, the official and common English names, the U"},{"name":"num_radix","description":"Convert an integer between any two numeric bases from 2 to 36, with arbitrary precision so values far beyond 2^53 are exact. Accepts an optional sign and common"},{"name":"num_words","description":"Spell a number out in words in English, Dutch, German, French, Spanish, Italian, Portuguese, Polish, Russian, Turkish, Swedish or Japanese, in cardinal, ordinal"},{"name":"num_stats","description":"Descriptive statistics for a supplied numeric array in one call: count, sum, mean, median, mode, variance and standard deviation with variance and standard devi"},{"name":"num_allocate","description":"Split a money amount into shares without losing or inventing a cent. Divide evenly into N parts, or by a list of ratios, and the remainder is distributed one mi"}],"toolCount":33,"toolsHash":"5e3a67e02345d42f79e93dbb2927b7da7f73962a0c2c22f4c4d31c3edf7da6c4","serverName":"Duo Data Utilities","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T18:27:08.007Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":199,"error":null,"detail":{"tools":[{"name":"id_national","description":"Validate a national identity, tax or company registration number against its country's official checksum rule. Covers 23 countries including NL BSN, ES NIF/NIE/"},{"name":"id_gs1","description":"Validate and convert GS1 identifiers: GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13), GTIN-14, GLN and SSCC. Returns the check-digit verdict, the computed correct ch"},{"name":"id_security","description":"Validate the check digit of a financial security identifier: ISIN (ISO 6166), CUSIP, SEDOL and FIGI. Returns the verdict, the computed correct check character, "},{"name":"id_iban","description":"Validate an IBAN: length for its country, permitted character classes per field, and the ISO 7064 mod-97-10 check digits. Returns the verdict with a specific fa"},{"name":"id_iban-build","description":"Construct an IBAN from a country code and the domestic account parts, computing the ISO 7064 mod-97-10 check digits. Takes either a single BBAN string or named "},{"name":"time_zone","description":"Convert an instant to wall-clock time in a named IANA time zone, or a wall-clock time in a zone back to an instant. Returns the local date and time, the UTC off"},{"name":"time_dst","description":"List the daylight-saving transitions for an IANA time zone over a date range: the exact instant of each shift, the offset before and after, and whether local cl"},{"name":"time_business-days","description":"Business-day arithmetic with a caller-supplied calendar: add or subtract N working days from a date, or count the working days between two dates. The weekend is"},{"name":"time_rrule","description":"Expand an RFC 5545 recurrence rule into concrete occurrence timestamps. Accepts an RRULE string with DTSTART, an IANA time zone, and optional EXDATE and RDATE l"},{"name":"time_calendar","description":"Convert a Gregorian date to other calendar systems: Islamic (both the tabular civil calendar and the Umm al-Qura variant), Hebrew, Japanese imperial era, Republ"},{"name":"text_slug","description":"Turn arbitrary text into a URL-safe slug. Decomposes accents, transliterates German umlauts, Scandinavian and Turkish letters, the ligatures that lose meaning u"},{"name":"text_transliterate","description":"Transliterate Cyrillic text into Latin using a named standard: ISO 9:1995 (one-to-one, with diacritics, covering the full standard: Russian, other Slavic, histo"},{"name":"text_unicode","description":"Analyse a string at the Unicode level: apply NFC, NFD, NFKC or NFKD, report which forms it is already in, list the scripts present (all Unicode scripts), and fl"},{"name":"text_similarity","description":"Compare two strings and return every standard similarity measure in one call: Levenshtein and Damerau-Levenshtein edit distance, normalised similarity, Jaro and"},{"name":"code_url","description":"Parse and canonicalise a URL, and extract its registrable domain using the Public Suffix List — the part an agent needs to decide whether two URLs belong to the"},{"name":"code_idn","description":"Convert internationalised domain names between Unicode and ASCII punycode in either direction, label by label, and validate each label against IDNA2008: length,"},{"name":"code_semver","description":"Parse a semantic version into major, minor, patch, prerelease and build parts; compare two versions by precedence including prerelease ordering; or test whether"},{"name":"code_hash","description":"Compute a cryptographic digest of supplied data: SHA-256, SHA-384, SHA-512, SHA-1, SHA3-256, SHA3-512, Keccak-256, BLAKE2b-256 and BLAKE2b-512, plus HMAC with a"},{"name":"code_jwt","description":"Decode a JSON Web Token without verifying it: returns the header, the claims, the signature length and algorithm, and a computed view of the time claims — wheth"},{"name":"geo_geohash","description":"Encode a WGS-84 latitude and longitude to a geohash at a chosen precision, or decode a geohash back to its bounding box, centre point and error bounds in metres"},{"name":"geo_pluscode","description":"Encode coordinates as an Open Location Code (plus code) at a chosen length, or decode a full code back to its bounding box and centre. Also shortens a full code"},{"name":"geo_polygon","description":"Geometric predicates on a GeoJSON geometry supplied in the request: point-in-polygon with correct hole handling, bounding box, centroid, signed area in square m"},{"name":"geo_distance","description":"Distance and direction between WGS-84 coordinates: geodesic distance by Vincenty with a haversine fallback, initial and final bearing, the midpoint, and the des"},{"name":"chain_address","description":"Identify which blockchain an address belongs to and validate its encoding: EVM EIP-55 checksum, Bitcoin base58check and bech32/bech32m with witness version, Sol"},{"name":"chain_selector","description":"Compute the Keccak-256 hash of a Solidity function or event signature and derive the 4-byte function selector and the 32-byte event topic. Normalises the signat"},{"name":"ref_nuts","description":"Look up a NUTS statistical region of the European Union: resolve a NUTS code to its name, country and level, walk up to its parents or down to its children, or "},{"name":"ref_airport","description":"Look up an airport by IATA or ICAO code and get its name, city, country, ISO 3166-2 region code, WGS-84 coordinates, elevation and IANA time zone, or find the n"},{"name":"ref_currency","description":"Look up a currency by its ISO 4217 alphabetic or numeric code: the official English name, minor-unit exponent, fund flag, the smallest cash denomination where i"},{"name":"ref_country","description":"Look up a country or territory by ISO 3166-1 alpha-2, alpha-3 or numeric code, or by name, and get the other codes, the official and common English names, the U"},{"name":"num_radix","description":"Convert an integer between any two numeric bases from 2 to 36, with arbitrary precision so values far beyond 2^53 are exact. Accepts an optional sign and common"},{"name":"num_words","description":"Spell a number out in words in English, Dutch, German, French, Spanish, Italian, Portuguese, Polish, Russian, Turkish, Swedish or Japanese, in cardinal, ordinal"},{"name":"num_stats","description":"Descriptive statistics for a supplied numeric array in one call: count, sum, mean, median, mode, variance and standard deviation with variance and standard devi"},{"name":"num_allocate","description":"Split a money amount into shares without losing or inventing a cent. Divide evenly into N parts, or by a list of ratios, and the remainder is distributed one mi"}],"toolCount":33,"toolsHash":"5e3a67e02345d42f79e93dbb2927b7da7f73962a0c2c22f4c4d31c3edf7da6c4","serverName":"Duo Data Utilities","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T11:22:53.471Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":92,"error":null,"detail":{"tools":[{"name":"id_national","description":"Validate a national identity, tax or company registration number against its country's official checksum rule. Covers 23 countries including NL BSN, ES NIF/NIE/"},{"name":"id_gs1","description":"Validate and convert GS1 identifiers: GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13), GTIN-14, GLN and SSCC. Returns the check-digit verdict, the computed correct ch"},{"name":"id_security","description":"Validate the check digit of a financial security identifier: ISIN (ISO 6166), CUSIP, SEDOL and FIGI. Returns the verdict, the computed correct check character, "},{"name":"id_iban","description":"Validate an IBAN: length for its country, permitted character classes per field, and the ISO 7064 mod-97-10 check digits. Returns the verdict with a specific fa"},{"name":"id_iban-build","description":"Construct an IBAN from a country code and the domestic account parts, computing the ISO 7064 mod-97-10 check digits. Takes either a single BBAN string or named "},{"name":"time_zone","description":"Convert an instant to wall-clock time in a named IANA time zone, or a wall-clock time in a zone back to an instant. Returns the local date and time, the UTC off"},{"name":"time_dst","description":"List the daylight-saving transitions for an IANA time zone over a date range: the exact instant of each shift, the offset before and after, and whether local cl"},{"name":"time_business-days","description":"Business-day arithmetic with a caller-supplied calendar: add or subtract N working days from a date, or count the working days between two dates. The weekend is"},{"name":"time_rrule","description":"Expand an RFC 5545 recurrence rule into concrete occurrence timestamps. Accepts an RRULE string with DTSTART, an IANA time zone, and optional EXDATE and RDATE l"},{"name":"time_calendar","description":"Convert a Gregorian date to other calendar systems: Islamic (both the tabular civil calendar and the Umm al-Qura variant), Hebrew, Japanese imperial era, Republ"},{"name":"text_slug","description":"Turn arbitrary text into a URL-safe slug. Decomposes accents, transliterates German umlauts, Scandinavian and Turkish letters, the ligatures that lose meaning u"},{"name":"text_transliterate","description":"Transliterate Cyrillic text into Latin using a named standard: ISO 9:1995 (one-to-one, with diacritics, covering the full standard: Russian, other Slavic, histo"},{"name":"text_unicode","description":"Analyse a string at the Unicode level: apply NFC, NFD, NFKC or NFKD, report which forms it is already in, list the scripts present (all Unicode scripts), and fl"},{"name":"text_similarity","description":"Compare two strings and return every standard similarity measure in one call: Levenshtein and Damerau-Levenshtein edit distance, normalised similarity, Jaro and"},{"name":"code_url","description":"Parse and canonicalise a URL, and extract its registrable domain using the Public Suffix List — the part an agent needs to decide whether two URLs belong to the"},{"name":"code_idn","description":"Convert internationalised domain names between Unicode and ASCII punycode in either direction, label by label, and validate each label against IDNA2008: length,"},{"name":"code_semver","description":"Parse a semantic version into major, minor, patch, prerelease and build parts; compare two versions by precedence including prerelease ordering; or test whether"},{"name":"code_hash","description":"Compute a cryptographic digest of supplied data: SHA-256, SHA-384, SHA-512, SHA-1, SHA3-256, SHA3-512, Keccak-256, BLAKE2b-256 and BLAKE2b-512, plus HMAC with a"},{"name":"code_jwt","description":"Decode a JSON Web Token without verifying it: returns the header, the claims, the signature length and algorithm, and a computed view of the time claims — wheth"},{"name":"geo_geohash","description":"Encode a WGS-84 latitude and longitude to a geohash at a chosen precision, or decode a geohash back to its bounding box, centre point and error bounds in metres"},{"name":"geo_pluscode","description":"Encode coordinates as an Open Location Code (plus code) at a chosen length, or decode a full code back to its bounding box and centre. Also shortens a full code"},{"name":"geo_polygon","description":"Geometric predicates on a GeoJSON geometry supplied in the request: point-in-polygon with correct hole handling, bounding box, centroid, signed area in square m"},{"name":"geo_distance","description":"Distance and direction between WGS-84 coordinates: geodesic distance by Vincenty with a haversine fallback, initial and final bearing, the midpoint, and the des"},{"name":"chain_address","description":"Identify which blockchain an address belongs to and validate its encoding: EVM EIP-55 checksum, Bitcoin base58check and bech32/bech32m with witness version, Sol"},{"name":"chain_selector","description":"Compute the Keccak-256 hash of a Solidity function or event signature and derive the 4-byte function selector and the 32-byte event topic. Normalises the signat"},{"name":"ref_nuts","description":"Look up a NUTS statistical region of the European Union: resolve a NUTS code to its name, country and level, walk up to its parents or down to its children, or "},{"name":"ref_airport","description":"Look up an airport by IATA or ICAO code and get its name, city, country, ISO 3166-2 region code, WGS-84 coordinates, elevation and IANA time zone, or find the n"},{"name":"ref_currency","description":"Look up a currency by its ISO 4217 alphabetic or numeric code: the official English name, minor-unit exponent, fund flag, the smallest cash denomination where i"},{"name":"ref_country","description":"Look up a country or territory by ISO 3166-1 alpha-2, alpha-3 or numeric code, or by name, and get the other codes, the official and common English names, the U"},{"name":"num_radix","description":"Convert an integer between any two numeric bases from 2 to 36, with arbitrary precision so values far beyond 2^53 are exact. Accepts an optional sign and common"},{"name":"num_words","description":"Spell a number out in words in English, Dutch, German, French, Spanish, Italian, Portuguese, Polish, Russian, Turkish, Swedish or Japanese, in cardinal, ordinal"},{"name":"num_stats","description":"Descriptive statistics for a supplied numeric array in one call: count, sum, mean, median, mode, variance and standard deviation with variance and standard devi"},{"name":"num_allocate","description":"Split a money amount into shares without losing or inventing a cent. Divide evenly into N parts, or by a list of ratios, and the remainder is distributed one mi"}],"toolCount":33,"toolsHash":"5e3a67e02345d42f79e93dbb2927b7da7f73962a0c2c22f4c4d31c3edf7da6c4","serverName":"Duo Data Utilities","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T04:25:45.316Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":50,"error":null,"detail":{"tools":[{"name":"id_national","description":"Validate a national identity, tax or company registration number against its country's official checksum rule. Covers 23 countries including NL BSN, ES NIF/NIE/"},{"name":"id_gs1","description":"Validate and convert GS1 identifiers: GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13), GTIN-14, GLN and SSCC. Returns the check-digit verdict, the computed correct ch"},{"name":"id_security","description":"Validate the check digit of a financial security identifier: ISIN (ISO 6166), CUSIP, SEDOL and FIGI. Returns the verdict, the computed correct check character, "},{"name":"id_iban","description":"Validate an IBAN: length for its country, permitted character classes per field, and the ISO 7064 mod-97-10 check digits. Returns the verdict with a specific fa"},{"name":"id_iban-build","description":"Construct an IBAN from a country code and the domestic account parts, computing the ISO 7064 mod-97-10 check digits. Takes either a single BBAN string or named "},{"name":"time_zone","description":"Convert an instant to wall-clock time in a named IANA time zone, or a wall-clock time in a zone back to an instant. Returns the local date and time, the UTC off"},{"name":"time_dst","description":"List the daylight-saving transitions for an IANA time zone over a date range: the exact instant of each shift, the offset before and after, and whether local cl"},{"name":"time_business-days","description":"Business-day arithmetic with a caller-supplied calendar: add or subtract N working days from a date, or count the working days between two dates. The weekend is"},{"name":"time_rrule","description":"Expand an RFC 5545 recurrence rule into concrete occurrence timestamps. Accepts an RRULE string with DTSTART, an IANA time zone, and optional EXDATE and RDATE l"},{"name":"time_calendar","description":"Convert a Gregorian date to other calendar systems: Islamic (both the tabular civil calendar and the Umm al-Qura variant), Hebrew, Japanese imperial era, Republ"},{"name":"text_slug","description":"Turn arbitrary text into a URL-safe slug. Decomposes accents, transliterates German umlauts, Scandinavian and Turkish letters, the ligatures that lose meaning u"},{"name":"text_transliterate","description":"Transliterate Cyrillic text into Latin using a named standard: ISO 9:1995 (one-to-one, with diacritics, covering the full standard: Russian, other Slavic, histo"},{"name":"text_unicode","description":"Analyse a string at the Unicode level: apply NFC, NFD, NFKC or NFKD, report which forms it is already in, list the scripts present (all Unicode scripts), and fl"},{"name":"text_similarity","description":"Compare two strings and return every standard similarity measure in one call: Levenshtein and Damerau-Levenshtein edit distance, normalised similarity, Jaro and"},{"name":"code_url","description":"Parse and canonicalise a URL, and extract its registrable domain using the Public Suffix List — the part an agent needs to decide whether two URLs belong to the"},{"name":"code_idn","description":"Convert internationalised domain names between Unicode and ASCII punycode in either direction, label by label, and validate each label against IDNA2008: length,"},{"name":"code_semver","description":"Parse a semantic version into major, minor, patch, prerelease and build parts; compare two versions by precedence including prerelease ordering; or test whether"},{"name":"code_hash","description":"Compute a cryptographic digest of supplied data: SHA-256, SHA-384, SHA-512, SHA-1, SHA3-256, SHA3-512, Keccak-256, BLAKE2b-256 and BLAKE2b-512, plus HMAC with a"},{"name":"code_jwt","description":"Decode a JSON Web Token without verifying it: returns the header, the claims, the signature length and algorithm, and a computed view of the time claims — wheth"},{"name":"geo_geohash","description":"Encode a WGS-84 latitude and longitude to a geohash at a chosen precision, or decode a geohash back to its bounding box, centre point and error bounds in metres"},{"name":"geo_pluscode","description":"Encode coordinates as an Open Location Code (plus code) at a chosen length, or decode a full code back to its bounding box and centre. Also shortens a full code"},{"name":"geo_polygon","description":"Geometric predicates on a GeoJSON geometry supplied in the request: point-in-polygon with correct hole handling, bounding box, centroid, signed area in square m"},{"name":"geo_distance","description":"Distance and direction between WGS-84 coordinates: geodesic distance by Vincenty with a haversine fallback, initial and final bearing, the midpoint, and the des"},{"name":"chain_address","description":"Identify which blockchain an address belongs to and validate its encoding: EVM EIP-55 checksum, Bitcoin base58check and bech32/bech32m with witness version, Sol"},{"name":"chain_selector","description":"Compute the Keccak-256 hash of a Solidity function or event signature and derive the 4-byte function selector and the 32-byte event topic. Normalises the signat"},{"name":"ref_nuts","description":"Look up a NUTS statistical region of the European Union: resolve a NUTS code to its name, country and level, walk up to its parents or down to its children, or "},{"name":"ref_airport","description":"Look up an airport by IATA or ICAO code and get its name, city, country, ISO 3166-2 region code, WGS-84 coordinates, elevation and IANA time zone, or find the n"},{"name":"ref_currency","description":"Look up a currency by its ISO 4217 alphabetic or numeric code: the official English name, minor-unit exponent, fund flag, the smallest cash denomination where i"},{"name":"ref_country","description":"Look up a country or territory by ISO 3166-1 alpha-2, alpha-3 or numeric code, or by name, and get the other codes, the official and common English names, the U"},{"name":"num_radix","description":"Convert an integer between any two numeric bases from 2 to 36, with arbitrary precision so values far beyond 2^53 are exact. Accepts an optional sign and common"},{"name":"num_words","description":"Spell a number out in words in English, Dutch, German, French, Spanish, Italian, Portuguese, Polish, Russian, Turkish, Swedish or Japanese, in cardinal, ordinal"},{"name":"num_stats","description":"Descriptive statistics for a supplied numeric array in one call: count, sum, mean, median, mode, variance and standard deviation with variance and standard devi"},{"name":"num_allocate","description":"Split a money amount into shares without losing or inventing a cent. Divide evenly into N parts, or by a list of ratios, and the remainder is distributed one mi"}],"toolCount":33,"toolsHash":"5e3a67e02345d42f79e93dbb2927b7da7f73962a0c2c22f4c4d31c3edf7da6c4","serverName":"Duo Data Utilities","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T22:23:11.163Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":57,"error":null,"detail":{"tools":[{"name":"id_national","description":"Validate a national identity, tax or company registration number against its country's official checksum rule. Covers 23 countries including NL BSN, ES NIF/NIE/"},{"name":"id_gs1","description":"Validate and convert GS1 identifiers: GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13), GTIN-14, GLN and SSCC. Returns the check-digit verdict, the computed correct ch"},{"name":"id_security","description":"Validate the check digit of a financial security identifier: ISIN (ISO 6166), CUSIP, SEDOL and FIGI. Returns the verdict, the computed correct check character, "},{"name":"id_iban","description":"Validate an IBAN: length for its country, permitted character classes per field, and the ISO 7064 mod-97-10 check digits. Returns the verdict with a specific fa"},{"name":"id_iban-build","description":"Construct an IBAN from a country code and the domestic account parts, computing the ISO 7064 mod-97-10 check digits. Takes either a single BBAN string or named "},{"name":"time_zone","description":"Convert an instant to wall-clock time in a named IANA time zone, or a wall-clock time in a zone back to an instant. Returns the local date and time, the UTC off"},{"name":"time_dst","description":"List the daylight-saving transitions for an IANA time zone over a date range: the exact instant of each shift, the offset before and after, and whether local cl"},{"name":"time_business-days","description":"Business-day arithmetic with a caller-supplied calendar: add or subtract N working days from a date, or count the working days between two dates. The weekend is"},{"name":"time_rrule","description":"Expand an RFC 5545 recurrence rule into concrete occurrence timestamps. Accepts an RRULE string with DTSTART, an IANA time zone, and optional EXDATE and RDATE l"},{"name":"time_calendar","description":"Convert a Gregorian date to other calendar systems: Islamic (both the tabular civil calendar and the Umm al-Qura variant), Hebrew, Japanese imperial era, Republ"},{"name":"text_slug","description":"Turn arbitrary text into a URL-safe slug. Decomposes accents, transliterates German umlauts, Scandinavian and Turkish letters, the ligatures that lose meaning u"},{"name":"text_transliterate","description":"Transliterate Cyrillic text into Latin using a named standard: ISO 9:1995 (one-to-one, with diacritics, covering the full standard: Russian, other Slavic, histo"},{"name":"text_unicode","description":"Analyse a string at the Unicode level: apply NFC, NFD, NFKC or NFKD, report which forms it is already in, list the scripts present (all Unicode scripts), and fl"},{"name":"text_similarity","description":"Compare two strings and return every standard similarity measure in one call: Levenshtein and Damerau-Levenshtein edit distance, normalised similarity, Jaro and"},{"name":"code_url","description":"Parse and canonicalise a URL, and extract its registrable domain using the Public Suffix List — the part an agent needs to decide whether two URLs belong to the"},{"name":"code_idn","description":"Convert internationalised domain names between Unicode and ASCII punycode in either direction, label by label, and validate each label against IDNA2008: length,"},{"name":"code_semver","description":"Parse a semantic version into major, minor, patch, prerelease and build parts; compare two versions by precedence including prerelease ordering; or test whether"},{"name":"code_hash","description":"Compute a cryptographic digest of supplied data: SHA-256, SHA-384, SHA-512, SHA-1, SHA3-256, SHA3-512, Keccak-256, BLAKE2b-256 and BLAKE2b-512, plus HMAC with a"},{"name":"code_jwt","description":"Decode a JSON Web Token without verifying it: returns the header, the claims, the signature length and algorithm, and a computed view of the time claims — wheth"},{"name":"geo_geohash","description":"Encode a WGS-84 latitude and longitude to a geohash at a chosen precision, or decode a geohash back to its bounding box, centre point and error bounds in metres"},{"name":"geo_pluscode","description":"Encode coordinates as an Open Location Code (plus code) at a chosen length, or decode a full code back to its bounding box and centre. Also shortens a full code"},{"name":"geo_polygon","description":"Geometric predicates on a GeoJSON geometry supplied in the request: point-in-polygon with correct hole handling, bounding box, centroid, signed area in square m"},{"name":"geo_distance","description":"Distance and direction between WGS-84 coordinates: geodesic distance by Vincenty with a haversine fallback, initial and final bearing, the midpoint, and the des"},{"name":"chain_address","description":"Identify which blockchain an address belongs to and validate its encoding: EVM EIP-55 checksum, Bitcoin base58check and bech32/bech32m with witness version, Sol"},{"name":"chain_selector","description":"Compute the Keccak-256 hash of a Solidity function or event signature and derive the 4-byte function selector and the 32-byte event topic. Normalises the signat"},{"name":"ref_nuts","description":"Look up a NUTS statistical region of the European Union: resolve a NUTS code to its name, country and level, walk up to its parents or down to its children, or "},{"name":"ref_airport","description":"Look up an airport by IATA or ICAO code and get its name, city, country, ISO 3166-2 region code, WGS-84 coordinates, elevation and IANA time zone, or find the n"},{"name":"ref_currency","description":"Look up a currency by its ISO 4217 alphabetic or numeric code: the official English name, minor-unit exponent, fund flag, the smallest cash denomination where i"},{"name":"ref_country","description":"Look up a country or territory by ISO 3166-1 alpha-2, alpha-3 or numeric code, or by name, and get the other codes, the official and common English names, the U"},{"name":"num_radix","description":"Convert an integer between any two numeric bases from 2 to 36, with arbitrary precision so values far beyond 2^53 are exact. Accepts an optional sign and common"},{"name":"num_words","description":"Spell a number out in words in English, Dutch, German, French, Spanish, Italian, Portuguese, Polish, Russian, Turkish, Swedish or Japanese, in cardinal, ordinal"},{"name":"num_stats","description":"Descriptive statistics for a supplied numeric array in one call: count, sum, mean, median, mode, variance and standard deviation with variance and standard devi"},{"name":"num_allocate","description":"Split a money amount into shares without losing or inventing a cent. Divide evenly into N parts, or by a list of ratios, and the remainder is distributed one mi"}],"toolCount":33,"toolsHash":"5e3a67e02345d42f79e93dbb2927b7da7f73962a0c2c22f4c4d31c3edf7da6c4","serverName":"Duo Data Utilities","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"vat_tax_id_validate","description":"Validate a national identity, tax or company registration number against its country's official checksum rule. Covers 23 countries including NL BSN, ES NIF/NIE/"},{"name":"gtin_barcode_validate","description":"Validate and convert GS1 identifiers: GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13), GTIN-14, GLN and SSCC. Returns the check-digit verdict, the computed correct ch"},{"name":"isin_cusip_sedol_validate","description":"Validate the check digit of a financial security identifier: ISIN (ISO 6166), CUSIP, SEDOL and FIGI. Returns the verdict, the computed correct check character, "},{"name":"iban_validate","description":"Validate an IBAN: length for its country, permitted character classes per field, and the ISO 7064 mod-97-10 check digits. Returns the verdict with a specific fa"},{"name":"iban_generate","description":"Construct an IBAN from a country code and the domestic account parts, computing the ISO 7064 mod-97-10 check digits. Takes either a single BBAN string or named "},{"name":"timezone_convert","description":"Convert an instant to wall-clock time in a named IANA time zone, or a wall-clock time in a zone back to an instant. Returns the local date and time, the UTC off"},{"name":"dst_transitions","description":"List the daylight-saving transitions for an IANA time zone over a date range: the exact instant of each shift, the offset before and after, and whether local cl"},{"name":"business_days_calculate","description":"Business-day arithmetic with a caller-supplied calendar: add or subtract N working days from a date, or count the working days between two dates. The weekend is"},{"name":"rrule_expand","description":"Expand an RFC 5545 recurrence rule into concrete occurrence timestamps. Accepts an RRULE string with DTSTART, an IANA time zone, and optional EXDATE and RDATE l"},{"name":"calendar_convert","description":"Convert a Gregorian date to other calendar systems: Islamic (both the tabular civil calendar and the Umm al-Qura variant), Hebrew, Japanese imperial era, Republ"},{"name":"slug_generate","description":"Turn arbitrary text into a URL-safe slug. Decomposes accents, transliterates German umlauts, Scandinavian and Turkish letters, the ligatures that lose meaning u"},{"name":"cyrillic_transliterate","description":"Transliterate Cyrillic text into Latin using a named standard: ISO 9:1995 (one-to-one, with diacritics, covering the full standard: Russian, other Slavic, histo"},{"name":"unicode_confusables_check","description":"Analyse a string at the Unicode level: apply NFC, NFD, NFKC or NFKD, report which forms it is already in, list the scripts present (all Unicode scripts), and fl"},{"name":"string_similarity","description":"Compare two strings and return every standard similarity measure in one call: Levenshtein and Damerau-Levenshtein edit distance, normalised similarity, Jaro and"},{"name":"url_parse","description":"Parse and canonicalise a URL, and extract its registrable domain using the Public Suffix List — the part an agent needs to decide whether two URLs belong to the"},{"name":"punycode_convert","description":"Convert internationalised domain names between Unicode and ASCII punycode in either direction, label by label, and validate each label against IDNA2008: length,"},{"name":"semver_compare","description":"Parse a semantic version into major, minor, patch, prerelease and build parts; compare two versions by precedence including prerelease ordering; or test whether"},{"name":"hash_generate","description":"Compute a cryptographic digest of supplied data: SHA-256, SHA-384, SHA-512, SHA-1, SHA3-256, SHA3-512, Keccak-256, BLAKE2b-256 and BLAKE2b-512, plus HMAC with a"},{"name":"jwt_decode","description":"Decode a JSON Web Token without verifying it: returns the header, the claims, the signature length and algorithm, and a computed view of the time claims — wheth"},{"name":"geohash_encode_decode","description":"Encode a WGS-84 latitude and longitude to a geohash at a chosen precision, or decode a geohash back to its bounding box, centre point and error bounds in metres"},{"name":"plus_code_encode_decode","description":"Encode coordinates as an Open Location Code (plus code) at a chosen length, or decode a full code back to its bounding box and centre. Also shortens a full code"},{"name":"point_in_polygon","description":"Geometric predicates on a GeoJSON geometry supplied in the request: point-in-polygon with correct hole handling, bounding box, centroid, signed area in square m"},{"name":"geo_distance","description":"Distance and direction between WGS-84 coordinates: geodesic distance by Vincenty with a haversine fallback, initial and final bearing, the midpoint, and the des"},{"name":"crypto_address_validate","description":"Identify which blockchain an address belongs to and validate its encoding: EVM EIP-55 checksum, Bitcoin base58check and bech32/bech32m with witness version, Sol"},{"name":"solidity_function_selector","description":"Compute the Keccak-256 hash of a Solidity function or event signature and derive the 4-byte function selector and the 32-byte event topic. Normalises the signat"},{"name":"nuts_region_lookup","description":"Look up a NUTS statistical region of the European Union: resolve a NUTS code to its name, country and level, walk up to its parents or down to its children, or "},{"name":"airport_lookup","description":"Look up an airport by IATA or ICAO code and get its name, city, country, ISO 3166-2 region code, WGS-84 coordinates, elevation and IANA time zone, or find the n"},{"name":"currency_lookup","description":"Look up a currency by its ISO 4217 alphabetic or numeric code: the official English name, minor-unit exponent, fund flag, the smallest cash denomination where i"},{"name":"country_lookup","description":"Look up a country or territory by ISO 3166-1 alpha-2, alpha-3 or numeric code, or by name, and get the other codes, the official and common English names, the U"},{"name":"base_convert","description":"Convert an integer between any two numeric bases from 2 to 36, with arbitrary precision so values far beyond 2^53 are exact. Accepts an optional sign and common"},{"name":"number_to_words","description":"Spell a number out in words in English, Dutch, German, French, Spanish, Italian, Portuguese, Polish, Russian, Turkish, Swedish or Japanese, in cardinal, ordinal"},{"name":"statistics_calculate","description":"Descriptive statistics for a supplied numeric array in one call: count, sum, mean, median, mode, variance and standard deviation with variance and standard devi"},{"name":"money_split","description":"Split a money amount into shares without losing or inventing a cent. Divide evenly into N parts, or by a list of ratios, and the remainder is distributed one mi"}],"package":null,"toolSurface":{"id":"ts_vngjywumsdrw","endpointId":"ep_p8e476knfkfj","hash":"f34168ba81176fc15eff643c8e8a952148544e8decbdb0ffba435a0444971028","toolCount":33,"serverName":"Duo Data Utilities","serverVersion":"1.0.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-10-09T21:26:20.496Z","lastSeenAt":"2026-10-10T10:27:34.486Z","observations":3,"toolNames":["vat_tax_id_validate","gtin_barcode_validate","isin_cusip_sedol_validate","iban_validate","iban_generate","timezone_convert","dst_transitions","business_days_calculate","rrule_expand","calendar_convert","slug_generate","cyrillic_transliterate","unicode_confusables_check","string_similarity","url_parse","punycode_convert","semver_compare","hash_generate","jwt_decode","geohash_encode_decode","plus_code_encode_decode","point_in_polygon","geo_distance","crypto_address_validate","solidity_function_selector","nuts_region_lookup","airport_lookup","currency_lookup","country_lookup","base_convert","number_to_words","statistics_calculate","money_split"],"distinctSurfaces":2},"endpointFacts":[{"id":"ep_p8e476knfkfj","url":"https://api.duoleads.com/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-10T10:27:34.492Z","auth":{"observedAt":"2026-10-10T10:27:34.510Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-10T10:27:34.521Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"duoleads.com","issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validFrom":"2026-09-28T22:34:35.000Z","validTo":"2026-12-27T23:34:33.000Z","daysToExpiry":78,"sanCount":3,"fingerprint256":"22:0C:0C:32:B7:30:51:7A:20:7C:A8:B9:75:3D:8E:7E:E9:1A:6A:71:6D:FA:C5:F1:AB:D8:08:AE:0D:92:17:B0"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"com.duoleads.api/data-utilities","url":"https://registry.modelcontextprotocol.io/v0/servers/com.duoleads.api%2Fdata-utilities","firstSeenAt":"2026-09-30T13:19:19.802Z","fetchedAt":"2026-10-09T05:21:40.404Z","normalizedAt":"2026-10-09T05:21:40.404Z"}]},"firstSeenAt":"2026-09-30T13:19:19.802Z","updatedAt":"2026-10-10T10:30:32.407Z"}