{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_nbu3pab6swvu","handle":"open-archives","url":"https://wellknown.network/agents/open-archives","links":{"self":"https://wellknown.network/agents/open-archives/record.json","html":"https://wellknown.network/agents/open-archives","markdown":"https://wellknown.network/agents/open-archives/record.md","api":"https://wellknown.network/api/v1/agents/open-archives","status":"https://wellknown.network/api/v1/agents/open-archives/status","claim":"https://wellknown.network/agents/open-archives/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/open-archives/claim.json","badge":"https://wellknown.network/agents/open-archives/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/open-archives/history","tools":"https://wellknown.network/api/v1/agents/open-archives/tools"},"ard":{"identifier":"urn:air:mcp.openarchieven.nl:agent:open-archives","type":"application/a2a-agent-card+json"},"kind":"agent","declared":{"name":"Open Archives","summary":"Genealogical search agent for the Open Archives archival aggregator. Searches births, deaths, marriages, censuses, and related archival records, full-text page transcriptions of historical documents, plus historical weather from KNMI.","description":"Genealogical search agent for the Open Archives archival aggregator. Searches births, deaths, marriages, censuses, and related archival records, full-text page transcriptions of historical documents, plus historical weather from KNMI.","publisher":{"name":"Coret Genealogy","url":"https://genealogie.coret.org"},"homepage":"https://github.com/coret/openarchieven-mcp-server","repository":"https://github.com/coret/openarchieven-mcp-server","version":"1.1.1","license":null,"protocols":["a2a","mcp"],"tags":["genealogy","search","births","deaths","marriages","archives","stats","names","weather","census","transcriptions","viewer","iiif"],"pricing":null,"endpoints":[{"url":"https://mcp.openarchieven.nl","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":[{"id":"search_records","name":"Search Records","tags":["genealogy","search"],"description":"Search genealogical records by name, place, archive, source type, etc."},{"id":"show_record","name":"Show Record","tags":["genealogy"],"description":"Show a single genealogical record by archive + identifier."},{"id":"match_record","name":"Match Record","tags":["genealogy"],"description":"Match a person to birth and death records."},{"id":"get_births","name":"Find Births","tags":["genealogy","births"],"description":"Find birth records."},{"id":"get_births_years_ago","name":"Births N Years Ago","tags":["genealogy","births"],"description":"List births from N years ago."},{"id":"get_deaths","name":"Find Deaths","tags":["genealogy","deaths"],"description":"Find death records."},{"id":"get_marriages","name":"Find Marriages","tags":["genealogy","marriages"],"description":"Find marriage records."},{"id":"get_archives","name":"List Archives","tags":["archives"],"description":"List all archives with statistics."},{"id":"get_record_stats","name":"Record Stats","tags":["stats"],"description":"Record count per archive."},{"id":"get_source_type_stats","name":"Source-Type Stats","tags":["stats"],"description":"Record count per source type."},{"id":"get_event_type_stats","name":"Event-Type Stats","tags":["stats"],"description":"Record count per event type."},{"id":"get_comment_stats","name":"Comment Stats","tags":["stats"],"description":"Comment count statistics."},{"id":"get_family_name_stats","name":"Family-Name Stats","tags":["stats","names"],"description":"Family name frequency."},{"id":"get_first_name_stats","name":"First-Name Stats","tags":["stats","names"],"description":"First name frequency."},{"id":"get_profession_stats","name":"Profession Stats","tags":["stats"],"description":"Profession frequency."},{"id":"get_breakdown","name":"Breakdown Stats","tags":["stats"],"description":"Cross-tabulation: record counts grouped by archive, source type, event type, place or year."},{"id":"get_historical_weather","name":"Historical Weather","tags":["weather"],"description":"Historical weather from KNMI."},{"id":"get_census_data","name":"Census Data (1795–1899)","tags":["census"],"description":"Dutch census data 1795–1899."},{"id":"search_transcriptions","name":"Search Transcriptions","tags":["transcriptions","search"],"description":"Full-text search across page transcriptions of historical documents."},{"id":"browse_transcriptions","name":"Browse Transcriptions","tags":["transcriptions"],"description":"Hierarchically browse transcriptions by source archive, archive number or inventory."},{"id":"show_transcription","name":"Show Transcription","tags":["transcriptions"],"description":"Retrieve a single page transcription by id."},{"id":"view_transcription","name":"View Transcription (IIIF deep-zoom)","tags":["transcriptions","viewer","iiif"],"description":"Open transcribed pages in an interactive IIIF deep-zoom viewer with the transcription alongside (falls back to inline preview images)."}],"tools":["Search Records","Show Record","Match Record","Find Births","Births N Years Ago","Find Deaths","Find Marriages","List Archives","Record Stats","Source-Type Stats","Event-Type Stats","Comment Stats","Family-Name Stats","First-Name Stats","Profession Stats","Breakdown Stats","Historical Weather","Census Data (1795–1899)","Search Transcriptions","Browse Transcriptions","Show Transcription","View Transcription (IIIF deep-zoom)"],"extra":{"updatedAt":"2026-07-31T21:16:36.811714Z","inputModes":["application/json"],"outputModes":["application/json"],"publishedAt":"2026-07-31T21:16:36.811714Z","capabilities":{"streaming":true,"pushNotifications":false},"registryName":"io.github.coret/openarchieven-mcp-server","protocolVersion":"0.3.0"},"attribution":{"kind":"a2a_card","name":"a2a_card","repoUrl":"mcp_registry","summary":"a2a_card","version":"a2a_card","description":"a2a_card","homepageUrl":"a2a_card","publisherUrl":"a2a_card","publisherName":"a2a_card"}},"derived":{"capabilities":[{"slug":"media.speech-recognition","name":"Speech Recognition","confidence":1,"provenance":"derived"},{"slug":"data.weather","name":"Weather","confidence":1,"provenance":"declared"}],"categories":["data","media"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 2h ago.","lastOkAt":"2026-10-11T06:22:24.806Z","lastProbedAt":"2026-10-11T06:22:24.806Z","statusComputedAt":"2026-10-11T06:24:07.709Z","reliability30d":{"probes":111,"successRate":1,"p50Ms":47,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":110,"ok":110,"authBoundaryOk":0,"serviceOk":110,"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-11T06:22:24.806Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":34,"error":null,"detail":{"tools":[{"name":"search_records","description":"Search genealogical records\n\nSearches the genealogical dataset and returns found persons and records. Supports filtering by archive, source type, event place, b"},{"name":"show_record","description":"Show a single genealogical record\n\nReturns one specific genealogical record in JSON format (UTF-8). The response conforms to the Archive 2 All (A2A) model. Also"},{"name":"match_record","description":"Match a person to birth and death records\n\nSearches the genealogical dataset by exact name and birth year and returns the Open Archives URIs of birth records, d"},{"name":"get_births_years_ago","description":"List births that occurred a specified number of years ago\n\nReturns a list of birth records for people born exactly the specified number of years ago from today."},{"name":"get_births","description":"Finds birth records"},{"name":"get_deaths","description":"Finds death records"},{"name":"get_marriages","description":"Finds marriage records of couples (bride or groom)"},{"name":"get_archives","description":"List all archives with statistics\n\nReturns an array of all participating archives including their archive code (used in other API calls), name, homepage URL, Tw"},{"name":"get_record_stats","description":"Record count statistics per archive\n\nReturns record count statistics. When no archive is specified, all archives are listed with their total number of records. "},{"name":"get_source_type_stats","description":"Record count statistics per source type\n\nReturns statistics about source types. Without an archive_code all source types across the entire dataset are returned "},{"name":"get_event_type_stats","description":"Record count statistics per event type\n\nReturns statistics about event types. Without an archive_code all event types across the entire dataset are returned wit"},{"name":"get_comment_stats","description":"Comment count statistics\n\nReturns the total number of validated comments made on records. When no archive_code is provided, the global total is returned. When a"},{"name":"get_family_name_stats","description":"Family name frequency statistics\n\nReturns the number of times family names appear in events for the selected source types, place and period. Results are ordered"},{"name":"get_first_name_stats","description":"First name frequency statistics for a given place and year\n\nReturns the top-X list of first names in the specified place and year. When a person has multiple fo"},{"name":"get_profession_stats","description":"Profession frequency statistics\n\nReturns the number of times professions appear in records for the selected period and place. Results are ordered by frequency. "},{"name":"get_breakdown","description":"Cross-tabulation aggregation grouped by one dimension\n\nReturns record counts filtered by any combination of archive, source type, event type, event place and ye"},{"name":"get_historical_weather","description":"Historical weather measurements for a date and location\n\nReturns historical weather measurements from the nearest Dutch weather station for the specified date a"},{"name":"get_census_data","description":"Dutch census data for a place and year\n\nRetrieves census data for a Dutch place or municipality for the census year nearest to the specified year. Available cen"},{"name":"search_transcriptions","description":"Full-text search across page transcriptions\n\nPerforms a full-text search across the page transcriptions of historical documents indexed by Open Archives. Mirror"},{"name":"browse_transcriptions","description":"Browse transcriptions hierarchically\n\nReturns a hierarchical browse of available page transcriptions. Mirrors `/transcripties/lijst/`. Three modes, depending on"},{"name":"show_transcription","description":"Retrieve a single transcription\n\nReturns the full transcript of a single page along with its source citation. Mirrors `/transcripties/toon/<id>`. AI-generated s"},{"name":"view_transcription","description":"Open one or more transcribed document pages in an interactive deep-zoom viewer with the transcription text alongside. Pass page identifiers returned by search_t"}],"toolCount":22,"toolsHash":"5a1fa063865cfd6d3f228d376bfb9081cb40b965f698312026da10af83022a40","serverName":"openarchieven","capabilities":["tools","resources"],"serverVersion":"1.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T23:23:28.431Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":40,"error":null,"detail":{"tools":[{"name":"search_records","description":"Search genealogical records\n\nSearches the genealogical dataset and returns found persons and records. Supports filtering by archive, source type, event place, b"},{"name":"show_record","description":"Show a single genealogical record\n\nReturns one specific genealogical record in JSON format (UTF-8). The response conforms to the Archive 2 All (A2A) model. Also"},{"name":"match_record","description":"Match a person to birth and death records\n\nSearches the genealogical dataset by exact name and birth year and returns the Open Archives URIs of birth records, d"},{"name":"get_births_years_ago","description":"List births that occurred a specified number of years ago\n\nReturns a list of birth records for people born exactly the specified number of years ago from today."},{"name":"get_births","description":"Finds birth records"},{"name":"get_deaths","description":"Finds death records"},{"name":"get_marriages","description":"Finds marriage records of couples (bride or groom)"},{"name":"get_archives","description":"List all archives with statistics\n\nReturns an array of all participating archives including their archive code (used in other API calls), name, homepage URL, Tw"},{"name":"get_record_stats","description":"Record count statistics per archive\n\nReturns record count statistics. When no archive is specified, all archives are listed with their total number of records. "},{"name":"get_source_type_stats","description":"Record count statistics per source type\n\nReturns statistics about source types. Without an archive_code all source types across the entire dataset are returned "},{"name":"get_event_type_stats","description":"Record count statistics per event type\n\nReturns statistics about event types. Without an archive_code all event types across the entire dataset are returned wit"},{"name":"get_comment_stats","description":"Comment count statistics\n\nReturns the total number of validated comments made on records. When no archive_code is provided, the global total is returned. When a"},{"name":"get_family_name_stats","description":"Family name frequency statistics\n\nReturns the number of times family names appear in events for the selected source types, place and period. Results are ordered"},{"name":"get_first_name_stats","description":"First name frequency statistics for a given place and year\n\nReturns the top-X list of first names in the specified place and year. When a person has multiple fo"},{"name":"get_profession_stats","description":"Profession frequency statistics\n\nReturns the number of times professions appear in records for the selected period and place. Results are ordered by frequency. "},{"name":"get_breakdown","description":"Cross-tabulation aggregation grouped by one dimension\n\nReturns record counts filtered by any combination of archive, source type, event type, event place and ye"},{"name":"get_historical_weather","description":"Historical weather measurements for a date and location\n\nReturns historical weather measurements from the nearest Dutch weather station for the specified date a"},{"name":"get_census_data","description":"Dutch census data for a place and year\n\nRetrieves census data for a Dutch place or municipality for the census year nearest to the specified year. Available cen"},{"name":"search_transcriptions","description":"Full-text search across page transcriptions\n\nPerforms a full-text search across the page transcriptions of historical documents indexed by Open Archives. Mirror"},{"name":"browse_transcriptions","description":"Browse transcriptions hierarchically\n\nReturns a hierarchical browse of available page transcriptions. Mirrors `/transcripties/lijst/`. Three modes, depending on"},{"name":"show_transcription","description":"Retrieve a single transcription\n\nReturns the full transcript of a single page along with its source citation. Mirrors `/transcripties/toon/<id>`. AI-generated s"},{"name":"view_transcription","description":"Open one or more transcribed document pages in an interactive deep-zoom viewer with the transcription text alongside. Pass page identifiers returned by search_t"}],"toolCount":22,"toolsHash":"5a1fa063865cfd6d3f228d376bfb9081cb40b965f698312026da10af83022a40","serverName":"openarchieven","capabilities":["tools","resources"],"serverVersion":"1.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T17:29:41.286Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":35,"error":null,"detail":{"tools":[{"name":"search_records","description":"Search genealogical records\n\nSearches the genealogical dataset and returns found persons and records. Supports filtering by archive, source type, event place, b"},{"name":"show_record","description":"Show a single genealogical record\n\nReturns one specific genealogical record in JSON format (UTF-8). The response conforms to the Archive 2 All (A2A) model. Also"},{"name":"match_record","description":"Match a person to birth and death records\n\nSearches the genealogical dataset by exact name and birth year and returns the Open Archives URIs of birth records, d"},{"name":"get_births_years_ago","description":"List births that occurred a specified number of years ago\n\nReturns a list of birth records for people born exactly the specified number of years ago from today."},{"name":"get_births","description":"Finds birth records"},{"name":"get_deaths","description":"Finds death records"},{"name":"get_marriages","description":"Finds marriage records of couples (bride or groom)"},{"name":"get_archives","description":"List all archives with statistics\n\nReturns an array of all participating archives including their archive code (used in other API calls), name, homepage URL, Tw"},{"name":"get_record_stats","description":"Record count statistics per archive\n\nReturns record count statistics. When no archive is specified, all archives are listed with their total number of records. "},{"name":"get_source_type_stats","description":"Record count statistics per source type\n\nReturns statistics about source types. Without an archive_code all source types across the entire dataset are returned "},{"name":"get_event_type_stats","description":"Record count statistics per event type\n\nReturns statistics about event types. Without an archive_code all event types across the entire dataset are returned wit"},{"name":"get_comment_stats","description":"Comment count statistics\n\nReturns the total number of validated comments made on records. When no archive_code is provided, the global total is returned. When a"},{"name":"get_family_name_stats","description":"Family name frequency statistics\n\nReturns the number of times family names appear in events for the selected source types, place and period. Results are ordered"},{"name":"get_first_name_stats","description":"First name frequency statistics for a given place and year\n\nReturns the top-X list of first names in the specified place and year. When a person has multiple fo"},{"name":"get_profession_stats","description":"Profession frequency statistics\n\nReturns the number of times professions appear in records for the selected period and place. Results are ordered by frequency. "},{"name":"get_breakdown","description":"Cross-tabulation aggregation grouped by one dimension\n\nReturns record counts filtered by any combination of archive, source type, event type, event place and ye"},{"name":"get_historical_weather","description":"Historical weather measurements for a date and location\n\nReturns historical weather measurements from the nearest Dutch weather station for the specified date a"},{"name":"get_census_data","description":"Dutch census data for a place and year\n\nRetrieves census data for a Dutch place or municipality for the census year nearest to the specified year. Available cen"},{"name":"search_transcriptions","description":"Full-text search across page transcriptions\n\nPerforms a full-text search across the page transcriptions of historical documents indexed by Open Archives. Mirror"},{"name":"browse_transcriptions","description":"Browse transcriptions hierarchically\n\nReturns a hierarchical browse of available page transcriptions. Mirrors `/transcripties/lijst/`. Three modes, depending on"},{"name":"show_transcription","description":"Retrieve a single transcription\n\nReturns the full transcript of a single page along with its source citation. Mirrors `/transcripties/toon/<id>`. AI-generated s"},{"name":"view_transcription","description":"Open one or more transcribed document pages in an interactive deep-zoom viewer with the transcription text alongside. Pass page identifiers returned by search_t"}],"toolCount":22,"toolsHash":"5a1fa063865cfd6d3f228d376bfb9081cb40b965f698312026da10af83022a40","serverName":"openarchieven","capabilities":["tools","resources"],"serverVersion":"1.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T11:24:29.480Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":38,"error":null,"detail":{"tools":[{"name":"search_records","description":"Search genealogical records\n\nSearches the genealogical dataset and returns found persons and records. Supports filtering by archive, source type, event place, b"},{"name":"show_record","description":"Show a single genealogical record\n\nReturns one specific genealogical record in JSON format (UTF-8). The response conforms to the Archive 2 All (A2A) model. Also"},{"name":"match_record","description":"Match a person to birth and death records\n\nSearches the genealogical dataset by exact name and birth year and returns the Open Archives URIs of birth records, d"},{"name":"get_births_years_ago","description":"List births that occurred a specified number of years ago\n\nReturns a list of birth records for people born exactly the specified number of years ago from today."},{"name":"get_births","description":"Finds birth records"},{"name":"get_deaths","description":"Finds death records"},{"name":"get_marriages","description":"Finds marriage records of couples (bride or groom)"},{"name":"get_archives","description":"List all archives with statistics\n\nReturns an array of all participating archives including their archive code (used in other API calls), name, homepage URL, Tw"},{"name":"get_record_stats","description":"Record count statistics per archive\n\nReturns record count statistics. When no archive is specified, all archives are listed with their total number of records. "},{"name":"get_source_type_stats","description":"Record count statistics per source type\n\nReturns statistics about source types. Without an archive_code all source types across the entire dataset are returned "},{"name":"get_event_type_stats","description":"Record count statistics per event type\n\nReturns statistics about event types. Without an archive_code all event types across the entire dataset are returned wit"},{"name":"get_comment_stats","description":"Comment count statistics\n\nReturns the total number of validated comments made on records. When no archive_code is provided, the global total is returned. When a"},{"name":"get_family_name_stats","description":"Family name frequency statistics\n\nReturns the number of times family names appear in events for the selected source types, place and period. Results are ordered"},{"name":"get_first_name_stats","description":"First name frequency statistics for a given place and year\n\nReturns the top-X list of first names in the specified place and year. When a person has multiple fo"},{"name":"get_profession_stats","description":"Profession frequency statistics\n\nReturns the number of times professions appear in records for the selected period and place. Results are ordered by frequency. "},{"name":"get_breakdown","description":"Cross-tabulation aggregation grouped by one dimension\n\nReturns record counts filtered by any combination of archive, source type, event type, event place and ye"},{"name":"get_historical_weather","description":"Historical weather measurements for a date and location\n\nReturns historical weather measurements from the nearest Dutch weather station for the specified date a"},{"name":"get_census_data","description":"Dutch census data for a place and year\n\nRetrieves census data for a Dutch place or municipality for the census year nearest to the specified year. Available cen"},{"name":"search_transcriptions","description":"Full-text search across page transcriptions\n\nPerforms a full-text search across the page transcriptions of historical documents indexed by Open Archives. Mirror"},{"name":"browse_transcriptions","description":"Browse transcriptions hierarchically\n\nReturns a hierarchical browse of available page transcriptions. Mirrors `/transcripties/lijst/`. Three modes, depending on"},{"name":"show_transcription","description":"Retrieve a single transcription\n\nReturns the full transcript of a single page along with its source citation. Mirrors `/transcripties/toon/<id>`. AI-generated s"},{"name":"view_transcription","description":"Open one or more transcribed document pages in an interactive deep-zoom viewer with the transcription text alongside. Pass page identifiers returned by search_t"}],"toolCount":22,"toolsHash":"5a1fa063865cfd6d3f228d376bfb9081cb40b965f698312026da10af83022a40","serverName":"openarchieven","capabilities":["tools","resources"],"serverVersion":"1.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T04:31:55.065Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":32,"error":null,"detail":{"tools":[{"name":"search_records","description":"Search genealogical records\n\nSearches the genealogical dataset and returns found persons and records. Supports filtering by archive, source type, event place, b"},{"name":"show_record","description":"Show a single genealogical record\n\nReturns one specific genealogical record in JSON format (UTF-8). The response conforms to the Archive 2 All (A2A) model. Also"},{"name":"match_record","description":"Match a person to birth and death records\n\nSearches the genealogical dataset by exact name and birth year and returns the Open Archives URIs of birth records, d"},{"name":"get_births_years_ago","description":"List births that occurred a specified number of years ago\n\nReturns a list of birth records for people born exactly the specified number of years ago from today."},{"name":"get_births","description":"Finds birth records"},{"name":"get_deaths","description":"Finds death records"},{"name":"get_marriages","description":"Finds marriage records of couples (bride or groom)"},{"name":"get_archives","description":"List all archives with statistics\n\nReturns an array of all participating archives including their archive code (used in other API calls), name, homepage URL, Tw"},{"name":"get_record_stats","description":"Record count statistics per archive\n\nReturns record count statistics. When no archive is specified, all archives are listed with their total number of records. "},{"name":"get_source_type_stats","description":"Record count statistics per source type\n\nReturns statistics about source types. Without an archive_code all source types across the entire dataset are returned "},{"name":"get_event_type_stats","description":"Record count statistics per event type\n\nReturns statistics about event types. Without an archive_code all event types across the entire dataset are returned wit"},{"name":"get_comment_stats","description":"Comment count statistics\n\nReturns the total number of validated comments made on records. When no archive_code is provided, the global total is returned. When a"},{"name":"get_family_name_stats","description":"Family name frequency statistics\n\nReturns the number of times family names appear in events for the selected source types, place and period. Results are ordered"},{"name":"get_first_name_stats","description":"First name frequency statistics for a given place and year\n\nReturns the top-X list of first names in the specified place and year. When a person has multiple fo"},{"name":"get_profession_stats","description":"Profession frequency statistics\n\nReturns the number of times professions appear in records for the selected period and place. Results are ordered by frequency. "},{"name":"get_breakdown","description":"Cross-tabulation aggregation grouped by one dimension\n\nReturns record counts filtered by any combination of archive, source type, event type, event place and ye"},{"name":"get_historical_weather","description":"Historical weather measurements for a date and location\n\nReturns historical weather measurements from the nearest Dutch weather station for the specified date a"},{"name":"get_census_data","description":"Dutch census data for a place and year\n\nRetrieves census data for a Dutch place or municipality for the census year nearest to the specified year. Available cen"},{"name":"search_transcriptions","description":"Full-text search across page transcriptions\n\nPerforms a full-text search across the page transcriptions of historical documents indexed by Open Archives. Mirror"},{"name":"browse_transcriptions","description":"Browse transcriptions hierarchically\n\nReturns a hierarchical browse of available page transcriptions. Mirrors `/transcripties/lijst/`. Three modes, depending on"},{"name":"show_transcription","description":"Retrieve a single transcription\n\nReturns the full transcript of a single page along with its source citation. Mirrors `/transcripties/toon/<id>`. AI-generated s"},{"name":"view_transcription","description":"Open one or more transcribed document pages in an interactive deep-zoom viewer with the transcription text alongside. Pass page identifiers returned by search_t"}],"toolCount":22,"toolsHash":"5a1fa063865cfd6d3f228d376bfb9081cb40b965f698312026da10af83022a40","serverName":"openarchieven","capabilities":["tools","resources"],"serverVersion":"1.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T22:26:39.129Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":40,"error":null,"detail":{"tools":[{"name":"search_records","description":"Search genealogical records\n\nSearches the genealogical dataset and returns found persons and records. Supports filtering by archive, source type, event place, b"},{"name":"show_record","description":"Show a single genealogical record\n\nReturns one specific genealogical record in JSON format (UTF-8). The response conforms to the Archive 2 All (A2A) model. Also"},{"name":"match_record","description":"Match a person to birth and death records\n\nSearches the genealogical dataset by exact name and birth year and returns the Open Archives URIs of birth records, d"},{"name":"get_births_years_ago","description":"List births that occurred a specified number of years ago\n\nReturns a list of birth records for people born exactly the specified number of years ago from today."},{"name":"get_births","description":"Finds birth records"},{"name":"get_deaths","description":"Finds death records"},{"name":"get_marriages","description":"Finds marriage records of couples (bride or groom)"},{"name":"get_archives","description":"List all archives with statistics\n\nReturns an array of all participating archives including their archive code (used in other API calls), name, homepage URL, Tw"},{"name":"get_record_stats","description":"Record count statistics per archive\n\nReturns record count statistics. When no archive is specified, all archives are listed with their total number of records. "},{"name":"get_source_type_stats","description":"Record count statistics per source type\n\nReturns statistics about source types. Without an archive_code all source types across the entire dataset are returned "},{"name":"get_event_type_stats","description":"Record count statistics per event type\n\nReturns statistics about event types. Without an archive_code all event types across the entire dataset are returned wit"},{"name":"get_comment_stats","description":"Comment count statistics\n\nReturns the total number of validated comments made on records. When no archive_code is provided, the global total is returned. When a"},{"name":"get_family_name_stats","description":"Family name frequency statistics\n\nReturns the number of times family names appear in events for the selected source types, place and period. Results are ordered"},{"name":"get_first_name_stats","description":"First name frequency statistics for a given place and year\n\nReturns the top-X list of first names in the specified place and year. When a person has multiple fo"},{"name":"get_profession_stats","description":"Profession frequency statistics\n\nReturns the number of times professions appear in records for the selected period and place. Results are ordered by frequency. "},{"name":"get_breakdown","description":"Cross-tabulation aggregation grouped by one dimension\n\nReturns record counts filtered by any combination of archive, source type, event type, event place and ye"},{"name":"get_historical_weather","description":"Historical weather measurements for a date and location\n\nReturns historical weather measurements from the nearest Dutch weather station for the specified date a"},{"name":"get_census_data","description":"Dutch census data for a place and year\n\nRetrieves census data for a Dutch place or municipality for the census year nearest to the specified year. Available cen"},{"name":"search_transcriptions","description":"Full-text search across page transcriptions\n\nPerforms a full-text search across the page transcriptions of historical documents indexed by Open Archives. Mirror"},{"name":"browse_transcriptions","description":"Browse transcriptions hierarchically\n\nReturns a hierarchical browse of available page transcriptions. Mirrors `/transcripties/lijst/`. Three modes, depending on"},{"name":"show_transcription","description":"Retrieve a single transcription\n\nReturns the full transcript of a single page along with its source citation. Mirrors `/transcripties/toon/<id>`. AI-generated s"},{"name":"view_transcription","description":"Open one or more transcribed document pages in an interactive deep-zoom viewer with the transcription text alongside. Pass page identifiers returned by search_t"}],"toolCount":22,"toolsHash":"5a1fa063865cfd6d3f228d376bfb9081cb40b965f698312026da10af83022a40","serverName":"openarchieven","capabilities":["tools","resources"],"serverVersion":"1.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T15:33:30.908Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":43,"error":null,"detail":{"tools":[{"name":"search_records","description":"Search genealogical records\n\nSearches the genealogical dataset and returns found persons and records. Supports filtering by archive, source type, event place, b"},{"name":"show_record","description":"Show a single genealogical record\n\nReturns one specific genealogical record in JSON format (UTF-8). The response conforms to the Archive 2 All (A2A) model. Also"},{"name":"match_record","description":"Match a person to birth and death records\n\nSearches the genealogical dataset by exact name and birth year and returns the Open Archives URIs of birth records, d"},{"name":"get_births_years_ago","description":"List births that occurred a specified number of years ago\n\nReturns a list of birth records for people born exactly the specified number of years ago from today."},{"name":"get_births","description":"Finds birth records"},{"name":"get_deaths","description":"Finds death records"},{"name":"get_marriages","description":"Finds marriage records of couples (bride or groom)"},{"name":"get_archives","description":"List all archives with statistics\n\nReturns an array of all participating archives including their archive code (used in other API calls), name, homepage URL, Tw"},{"name":"get_record_stats","description":"Record count statistics per archive\n\nReturns record count statistics. When no archive is specified, all archives are listed with their total number of records. "},{"name":"get_source_type_stats","description":"Record count statistics per source type\n\nReturns statistics about source types. Without an archive_code all source types across the entire dataset are returned "},{"name":"get_event_type_stats","description":"Record count statistics per event type\n\nReturns statistics about event types. Without an archive_code all event types across the entire dataset are returned wit"},{"name":"get_comment_stats","description":"Comment count statistics\n\nReturns the total number of validated comments made on records. When no archive_code is provided, the global total is returned. When a"},{"name":"get_family_name_stats","description":"Family name frequency statistics\n\nReturns the number of times family names appear in events for the selected source types, place and period. Results are ordered"},{"name":"get_first_name_stats","description":"First name frequency statistics for a given place and year\n\nReturns the top-X list of first names in the specified place and year. When a person has multiple fo"},{"name":"get_profession_stats","description":"Profession frequency statistics\n\nReturns the number of times professions appear in records for the selected period and place. Results are ordered by frequency. "},{"name":"get_breakdown","description":"Cross-tabulation aggregation grouped by one dimension\n\nReturns record counts filtered by any combination of archive, source type, event type, event place and ye"},{"name":"get_historical_weather","description":"Historical weather measurements for a date and location\n\nReturns historical weather measurements from the nearest Dutch weather station for the specified date a"},{"name":"get_census_data","description":"Dutch census data for a place and year\n\nRetrieves census data for a Dutch place or municipality for the census year nearest to the specified year. Available cen"},{"name":"search_transcriptions","description":"Full-text search across page transcriptions\n\nPerforms a full-text search across the page transcriptions of historical documents indexed by Open Archives. Mirror"},{"name":"browse_transcriptions","description":"Browse transcriptions hierarchically\n\nReturns a hierarchical browse of available page transcriptions. Mirrors `/transcripties/lijst/`. Three modes, depending on"},{"name":"show_transcription","description":"Retrieve a single transcription\n\nReturns the full transcript of a single page along with its source citation. Mirrors `/transcripties/toon/<id>`. AI-generated s"},{"name":"view_transcription","description":"Open one or more transcribed document pages in an interactive deep-zoom viewer with the transcription text alongside. Pass page identifiers returned by search_t"}],"toolCount":22,"toolsHash":"5a1fa063865cfd6d3f228d376bfb9081cb40b965f698312026da10af83022a40","serverName":"openarchieven","capabilities":["tools","resources"],"serverVersion":"1.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T09:26:59.187Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":32,"error":null,"detail":{"tools":[{"name":"search_records","description":"Search genealogical records\n\nSearches the genealogical dataset and returns found persons and records. Supports filtering by archive, source type, event place, b"},{"name":"show_record","description":"Show a single genealogical record\n\nReturns one specific genealogical record in JSON format (UTF-8). The response conforms to the Archive 2 All (A2A) model. Also"},{"name":"match_record","description":"Match a person to birth and death records\n\nSearches the genealogical dataset by exact name and birth year and returns the Open Archives URIs of birth records, d"},{"name":"get_births_years_ago","description":"List births that occurred a specified number of years ago\n\nReturns a list of birth records for people born exactly the specified number of years ago from today."},{"name":"get_births","description":"Finds birth records"},{"name":"get_deaths","description":"Finds death records"},{"name":"get_marriages","description":"Finds marriage records of couples (bride or groom)"},{"name":"get_archives","description":"List all archives with statistics\n\nReturns an array of all participating archives including their archive code (used in other API calls), name, homepage URL, Tw"},{"name":"get_record_stats","description":"Record count statistics per archive\n\nReturns record count statistics. When no archive is specified, all archives are listed with their total number of records. "},{"name":"get_source_type_stats","description":"Record count statistics per source type\n\nReturns statistics about source types. Without an archive_code all source types across the entire dataset are returned "},{"name":"get_event_type_stats","description":"Record count statistics per event type\n\nReturns statistics about event types. Without an archive_code all event types across the entire dataset are returned wit"},{"name":"get_comment_stats","description":"Comment count statistics\n\nReturns the total number of validated comments made on records. When no archive_code is provided, the global total is returned. When a"},{"name":"get_family_name_stats","description":"Family name frequency statistics\n\nReturns the number of times family names appear in events for the selected source types, place and period. Results are ordered"},{"name":"get_first_name_stats","description":"First name frequency statistics for a given place and year\n\nReturns the top-X list of first names in the specified place and year. When a person has multiple fo"},{"name":"get_profession_stats","description":"Profession frequency statistics\n\nReturns the number of times professions appear in records for the selected period and place. Results are ordered by frequency. "},{"name":"get_breakdown","description":"Cross-tabulation aggregation grouped by one dimension\n\nReturns record counts filtered by any combination of archive, source type, event type, event place and ye"},{"name":"get_historical_weather","description":"Historical weather measurements for a date and location\n\nReturns historical weather measurements from the nearest Dutch weather station for the specified date a"},{"name":"get_census_data","description":"Dutch census data for a place and year\n\nRetrieves census data for a Dutch place or municipality for the census year nearest to the specified year. Available cen"},{"name":"search_transcriptions","description":"Full-text search across page transcriptions\n\nPerforms a full-text search across the page transcriptions of historical documents indexed by Open Archives. Mirror"},{"name":"browse_transcriptions","description":"Browse transcriptions hierarchically\n\nReturns a hierarchical browse of available page transcriptions. Mirrors `/transcripties/lijst/`. Three modes, depending on"},{"name":"show_transcription","description":"Retrieve a single transcription\n\nReturns the full transcript of a single page along with its source citation. Mirrors `/transcripties/toon/<id>`. AI-generated s"},{"name":"view_transcription","description":"Open one or more transcribed document pages in an interactive deep-zoom viewer with the transcription text alongside. Pass page identifiers returned by search_t"}],"toolCount":22,"toolsHash":"5a1fa063865cfd6d3f228d376bfb9081cb40b965f698312026da10af83022a40","serverName":"openarchieven","capabilities":["tools","resources"],"serverVersion":"1.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T02:26:55.537Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":45,"error":null,"detail":{"tools":[{"name":"search_records","description":"Search genealogical records\n\nSearches the genealogical dataset and returns found persons and records. Supports filtering by archive, source type, event place, b"},{"name":"show_record","description":"Show a single genealogical record\n\nReturns one specific genealogical record in JSON format (UTF-8). The response conforms to the Archive 2 All (A2A) model. Also"},{"name":"match_record","description":"Match a person to birth and death records\n\nSearches the genealogical dataset by exact name and birth year and returns the Open Archives URIs of birth records, d"},{"name":"get_births_years_ago","description":"List births that occurred a specified number of years ago\n\nReturns a list of birth records for people born exactly the specified number of years ago from today."},{"name":"get_births","description":"Finds birth records"},{"name":"get_deaths","description":"Finds death records"},{"name":"get_marriages","description":"Finds marriage records of couples (bride or groom)"},{"name":"get_archives","description":"List all archives with statistics\n\nReturns an array of all participating archives including their archive code (used in other API calls), name, homepage URL, Tw"},{"name":"get_record_stats","description":"Record count statistics per archive\n\nReturns record count statistics. When no archive is specified, all archives are listed with their total number of records. "},{"name":"get_source_type_stats","description":"Record count statistics per source type\n\nReturns statistics about source types. Without an archive_code all source types across the entire dataset are returned "},{"name":"get_event_type_stats","description":"Record count statistics per event type\n\nReturns statistics about event types. Without an archive_code all event types across the entire dataset are returned wit"},{"name":"get_comment_stats","description":"Comment count statistics\n\nReturns the total number of validated comments made on records. When no archive_code is provided, the global total is returned. When a"},{"name":"get_family_name_stats","description":"Family name frequency statistics\n\nReturns the number of times family names appear in events for the selected source types, place and period. Results are ordered"},{"name":"get_first_name_stats","description":"First name frequency statistics for a given place and year\n\nReturns the top-X list of first names in the specified place and year. When a person has multiple fo"},{"name":"get_profession_stats","description":"Profession frequency statistics\n\nReturns the number of times professions appear in records for the selected period and place. Results are ordered by frequency. "},{"name":"get_breakdown","description":"Cross-tabulation aggregation grouped by one dimension\n\nReturns record counts filtered by any combination of archive, source type, event type, event place and ye"},{"name":"get_historical_weather","description":"Historical weather measurements for a date and location\n\nReturns historical weather measurements from the nearest Dutch weather station for the specified date a"},{"name":"get_census_data","description":"Dutch census data for a place and year\n\nRetrieves census data for a Dutch place or municipality for the census year nearest to the specified year. Available cen"},{"name":"search_transcriptions","description":"Full-text search across page transcriptions\n\nPerforms a full-text search across the page transcriptions of historical documents indexed by Open Archives. Mirror"},{"name":"browse_transcriptions","description":"Browse transcriptions hierarchically\n\nReturns a hierarchical browse of available page transcriptions. Mirrors `/transcripties/lijst/`. Three modes, depending on"},{"name":"show_transcription","description":"Retrieve a single transcription\n\nReturns the full transcript of a single page along with its source citation. Mirrors `/transcripties/toon/<id>`. AI-generated s"},{"name":"view_transcription","description":"Open one or more transcribed document pages in an interactive deep-zoom viewer with the transcription text alongside. Pass page identifiers returned by search_t"}],"toolCount":22,"toolsHash":"5a1fa063865cfd6d3f228d376bfb9081cb40b965f698312026da10af83022a40","serverName":"openarchieven","capabilities":["tools","resources"],"serverVersion":"1.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T20:25:30.840Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":57,"error":null,"detail":{"tools":[{"name":"search_records","description":"Search genealogical records\n\nSearches the genealogical dataset and returns found persons and records. Supports filtering by archive, source type, event place, b"},{"name":"show_record","description":"Show a single genealogical record\n\nReturns one specific genealogical record in JSON format (UTF-8). The response conforms to the Archive 2 All (A2A) model. Also"},{"name":"match_record","description":"Match a person to birth and death records\n\nSearches the genealogical dataset by exact name and birth year and returns the Open Archives URIs of birth records, d"},{"name":"get_births_years_ago","description":"List births that occurred a specified number of years ago\n\nReturns a list of birth records for people born exactly the specified number of years ago from today."},{"name":"get_births","description":"Finds birth records"},{"name":"get_deaths","description":"Finds death records"},{"name":"get_marriages","description":"Finds marriage records of couples (bride or groom)"},{"name":"get_archives","description":"List all archives with statistics\n\nReturns an array of all participating archives including their archive code (used in other API calls), name, homepage URL, Tw"},{"name":"get_record_stats","description":"Record count statistics per archive\n\nReturns record count statistics. When no archive is specified, all archives are listed with their total number of records. "},{"name":"get_source_type_stats","description":"Record count statistics per source type\n\nReturns statistics about source types. Without an archive_code all source types across the entire dataset are returned "},{"name":"get_event_type_stats","description":"Record count statistics per event type\n\nReturns statistics about event types. Without an archive_code all event types across the entire dataset are returned wit"},{"name":"get_comment_stats","description":"Comment count statistics\n\nReturns the total number of validated comments made on records. When no archive_code is provided, the global total is returned. When a"},{"name":"get_family_name_stats","description":"Family name frequency statistics\n\nReturns the number of times family names appear in events for the selected source types, place and period. Results are ordered"},{"name":"get_first_name_stats","description":"First name frequency statistics for a given place and year\n\nReturns the top-X list of first names in the specified place and year. When a person has multiple fo"},{"name":"get_profession_stats","description":"Profession frequency statistics\n\nReturns the number of times professions appear in records for the selected period and place. Results are ordered by frequency. "},{"name":"get_breakdown","description":"Cross-tabulation aggregation grouped by one dimension\n\nReturns record counts filtered by any combination of archive, source type, event type, event place and ye"},{"name":"get_historical_weather","description":"Historical weather measurements for a date and location\n\nReturns historical weather measurements from the nearest Dutch weather station for the specified date a"},{"name":"get_census_data","description":"Dutch census data for a place and year\n\nRetrieves census data for a Dutch place or municipality for the census year nearest to the specified year. Available cen"},{"name":"search_transcriptions","description":"Full-text search across page transcriptions\n\nPerforms a full-text search across the page transcriptions of historical documents indexed by Open Archives. Mirror"},{"name":"browse_transcriptions","description":"Browse transcriptions hierarchically\n\nReturns a hierarchical browse of available page transcriptions. Mirrors `/transcripties/lijst/`. Three modes, depending on"},{"name":"show_transcription","description":"Retrieve a single transcription\n\nReturns the full transcript of a single page along with its source citation. Mirrors `/transcripties/toon/<id>`. AI-generated s"},{"name":"view_transcription","description":"Open one or more transcribed document pages in an interactive deep-zoom viewer with the transcription text alongside. Pass page identifiers returned by search_t"}],"toolCount":22,"toolsHash":"5a1fa063865cfd6d3f228d376bfb9081cb40b965f698312026da10af83022a40","serverName":"openarchieven","capabilities":["tools","resources"],"serverVersion":"1.1.1","protocolVersion":"2025-06-18"}}],"tools":[{"name":"search_records","description":"Search genealogical records\n\nSearches the genealogical dataset and returns found persons and records. Supports filtering by archive, source type, event place, b"},{"name":"show_record","description":"Show a single genealogical record\n\nReturns one specific genealogical record in JSON format (UTF-8). The response conforms to the Archive 2 All (A2A) model. Also"},{"name":"match_record","description":"Match a person to birth and death records\n\nSearches the genealogical dataset by exact name and birth year and returns the Open Archives URIs of birth records, d"},{"name":"get_births_years_ago","description":"List births that occurred a specified number of years ago\n\nReturns a list of birth records for people born exactly the specified number of years ago from today."},{"name":"get_births","description":"Finds birth records"},{"name":"get_deaths","description":"Finds death records"},{"name":"get_marriages","description":"Finds marriage records of couples (bride or groom)"},{"name":"get_archives","description":"List all archives with statistics\n\nReturns an array of all participating archives including their archive code (used in other API calls), name, homepage URL, Tw"},{"name":"get_record_stats","description":"Record count statistics per archive\n\nReturns record count statistics. When no archive is specified, all archives are listed with their total number of records. "},{"name":"get_source_type_stats","description":"Record count statistics per source type\n\nReturns statistics about source types. Without an archive_code all source types across the entire dataset are returned "},{"name":"get_event_type_stats","description":"Record count statistics per event type\n\nReturns statistics about event types. Without an archive_code all event types across the entire dataset are returned wit"},{"name":"get_comment_stats","description":"Comment count statistics\n\nReturns the total number of validated comments made on records. When no archive_code is provided, the global total is returned. When a"},{"name":"get_family_name_stats","description":"Family name frequency statistics\n\nReturns the number of times family names appear in events for the selected source types, place and period. Results are ordered"},{"name":"get_first_name_stats","description":"First name frequency statistics for a given place and year\n\nReturns the top-X list of first names in the specified place and year. When a person has multiple fo"},{"name":"get_profession_stats","description":"Profession frequency statistics\n\nReturns the number of times professions appear in records for the selected period and place. Results are ordered by frequency. "},{"name":"get_breakdown","description":"Cross-tabulation aggregation grouped by one dimension\n\nReturns record counts filtered by any combination of archive, source type, event type, event place and ye"},{"name":"get_historical_weather","description":"Historical weather measurements for a date and location\n\nReturns historical weather measurements from the nearest Dutch weather station for the specified date a"},{"name":"get_census_data","description":"Dutch census data for a place and year\n\nRetrieves census data for a Dutch place or municipality for the census year nearest to the specified year. Available cen"},{"name":"search_transcriptions","description":"Full-text search across page transcriptions\n\nPerforms a full-text search across the page transcriptions of historical documents indexed by Open Archives. Mirror"},{"name":"browse_transcriptions","description":"Browse transcriptions hierarchically\n\nReturns a hierarchical browse of available page transcriptions. Mirrors `/transcripties/lijst/`. Three modes, depending on"},{"name":"show_transcription","description":"Retrieve a single transcription\n\nReturns the full transcript of a single page along with its source citation. Mirrors `/transcripties/toon/<id>`. AI-generated s"},{"name":"view_transcription","description":"Open one or more transcribed document pages in an interactive deep-zoom viewer with the transcription text alongside. Pass page identifiers returned by search_t"}],"package":null,"toolSurface":{"id":"ts_4m6ptxbutw8j","endpointId":"ep_9h3fycg36bup","hash":"5a1fa063865cfd6d3f228d376bfb9081cb40b965f698312026da10af83022a40","toolCount":22,"serverName":"openarchieven","serverVersion":"1.1.1","protocolVersion":"2025-06-18","firstSeenAt":"2026-09-12T10:26:17.061Z","lastSeenAt":"2026-10-11T06:22:24.818Z","observations":107,"toolNames":["search_records","show_record","match_record","get_births_years_ago","get_births","get_deaths","get_marriages","get_archives","get_record_stats","get_source_type_stats","get_event_type_stats","get_comment_stats","get_family_name_stats","get_first_name_stats","get_profession_stats","get_breakdown","get_historical_weather","get_census_data","search_transcriptions","browse_transcriptions","show_transcription","view_transcription"],"distinctSurfaces":1},"endpointFacts":[{"id":"ep_9h3fycg36bup","url":"https://mcp.openarchieven.nl","type":"mcp_streamable_http","factsCheckedAt":"2026-10-09T22:26:39.162Z","auth":{"observedAt":"2026-10-09T22:26:39.206Z","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-09T22:26:39.229Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"mcp.openarchieven.nl","issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validFrom":"2026-08-30T15:59:50.000Z","validTo":"2026-11-28T15:59:49.000Z","daysToExpiry":48,"sanCount":1,"fingerprint256":"22:6F:5B:17:47:F5:08:C4:1C:6D:CF:D3:94:E7:10:11:D7:19:61:14:EF:89:D0:E7:CD:CD:44:E6:E7:E3:15:EE"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.coret/openarchieven-mcp-server","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.coret%2Fopenarchieven-mcp-server","firstSeenAt":"2026-09-06T12:19:14.497Z","fetchedAt":"2026-10-10T07:18:25.391Z","normalizedAt":"2026-10-10T07:18:25.391Z"},{"source":"a2a_card","key":"https://mcp.openarchieven.nl/.well-known/agent-card.json","url":"https://mcp.openarchieven.nl/.well-known/agent-card.json","firstSeenAt":"2026-09-20T12:23:13.311Z","fetchedAt":"2026-09-20T12:23:13.311Z","normalizedAt":"2026-09-20T12:23:13.311Z"}]},"firstSeenAt":"2026-09-06T12:19:14.497Z","updatedAt":"2026-10-11T06:24:50.649Z"}