{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_uq4np3svrk5q","handle":"peppolstatus","url":"https://wellknown.network/agents/peppolstatus","links":{"self":"https://wellknown.network/agents/peppolstatus/record.json","html":"https://wellknown.network/agents/peppolstatus","markdown":"https://wellknown.network/agents/peppolstatus/record.md","api":"https://wellknown.network/api/v1/agents/peppolstatus","status":"https://wellknown.network/api/v1/agents/peppolstatus/status","claim":"https://wellknown.network/agents/peppolstatus/claim","claimApi":"https://wellknown.network/api/v1/claims","badge":"https://wellknown.network/agents/peppolstatus/badge.svg","openapi":"https://wellknown.network/openapi.json"},"ard":{"identifier":"urn:air:mcp.peppolstatus.com:server:peppolstatus","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"PeppolStatus","summary":"Peppol market intelligence and network monitoring: migrations, provider churn, leads, and uptime.","description":"Peppol market intelligence and network monitoring: migrations, provider churn, leads, and uptime.","publisher":{"name":"com.peppolstatus","url":null},"homepage":"https://peppolstatus.com/mcp","repository":null,"version":"1.0.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://mcp.peppolstatus.com","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-08-06T14:04:34.633364Z","publishedAt":"2026-08-06T14:04:34.633364Z","registryName":"com.peppolstatus/api"},"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":"dev.monitoring","name":"Monitoring & Observability","confidence":1,"provenance":"derived"},{"slug":"security.scanning","name":"Security Scanning","confidence":0.569,"provenance":"derived"},{"slug":"research.people-companies","name":"People & Company Research","confidence":0.554,"provenance":"derived"},{"slug":"content.marketing","name":"Marketing","confidence":0.54,"provenance":"derived"},{"slug":"dev.filesystem","name":"Filesystem","confidence":0.54,"provenance":"derived"},{"slug":"analytics.reporting","name":"Reporting & Dashboards","confidence":0.54,"provenance":"derived"},{"slug":"ai.agent-discovery","name":"Agent Discovery","confidence":0.54,"provenance":"derived"},{"slug":"security.identity","name":"Identity & Access","confidence":0.525,"provenance":"derived"}],"categories":["ai","analytics","content","dev","research","security"]},"observed":{"status":"live","statusReason":"Responded 1h ago.","lastOkAt":"2026-09-05T22:26:20.434Z","lastProbedAt":"2026-09-05T22:26:20.434Z","statusComputedAt":"2026-09-05T22:26:44.291Z","reliability30d":{"probes":1,"successRate":1,"p50Ms":34},"latestObservations":[{"at":"2026-09-05T22:26:20.434Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":34,"error":null,"detail":{"tools":[{"name":"list_hosts","description":"List monitored hosts\n\nEvery monitored host with its current verdict, latest hourly all-locations latency and 24h uptime, worst-first, plus a network-wide rollup"},{"name":"get_host","description":"Get a host's current state\n\nCurrent role, verdict, network attribution (IPs/PTR), TLS certificate and operating provider for a host. `?at=` returns point-in-tim"},{"name":"list_host_incidents","description":"List a host's incidents\n\nIncidents for one host, newest-first, cursor-paginated."},{"name":"get_host_uptime","description":"Get a host's uptime aggregates\n\nThe aggregate ladder for a host at a chosen resolution, per-location plus the `__all__` rollup, optionally windowed by `[from, t"},{"name":"list_host_software","description":"List all hosts' software (Market)\n\nEvery host with open software fingerprint rows, one row per (hostname, role) with the vendor / version / hosting axes folded "},{"name":"get_host_software","description":"Get a host's software fingerprint\n\nThe detected software of a host across ALL its roles: vendor, version and hosting per role, each with its confidence tier, fi"},{"name":"list_host_software_history","description":"List a host's software-fingerprint history\n\nThe closed (superseded) software rows for one host, newest-first, cursor-paginated. Each row is one axis transition "},{"name":"list_incidents","description":"List incidents\n\nThe global incident feed, newest-first, cursor-paginated."},{"name":"get_participant","description":"Get a participant's current state\n\nDirectory presence, SML registration + current SMP, business card, the company-register enrichment block, endpoints and servi"},{"name":"list_participant_events","description":"List a participant's change events\n\nThe participant's typed change events, newest-first, cursor-paginated."},{"name":"get_participant_history","description":"List a participant's temporal history\n\nThe participant's temporal rows across the directory/card/registration/SMP fact families, newest-first, cursor-paginated."},{"name":"get_participant_availability","description":"Get a participant's measured availability\n\nThe real, probe-measured reachability of one Peppol ID over time. Two lanes — the participant's SMP host (discovery) "},{"name":"get_network_summary","description":"Get the network summary\n\nCurrent host verdict counts, open incidents and anomalies in the last 24h, plus how fresh the Peppol Directory export behind every othe"},{"name":"get_network_history","description":"Get the network verdict history\n\nThe host verdict mix over time, derived from the temporal verdict table in one windowed pass: per UTC day, the rows open at 00:"},{"name":"get_summary","description":"Get the public dashboard summary\n\nThe free marketing-dashboard rollup: the network-wide host rollup (fleet count + mean uptime/latency), the hourly fleet-averag"},{"name":"get_adoption","description":"Get a country's adoption aggregates\n\nPeppol adoption for one country as one bare object: headline totals (universe, on_peppol, penetration), the single-dimensio"},{"name":"list_providers","description":"List providers\n\nThe OpenPeppol member registry with role flags, country, mapped hostnames and per-provider participant counts (market share), busiest first. Not"},{"name":"get_provider","description":"Get a curated provider\n\nA curated provider navigable to its seats and each seat's observed hosts."},{"name":"list_public_providers","description":"List public provider profiles\n\nThe FREE, crawlable public subset for each curated provider, busiest first: identity + role flags, the seat-directory columns (le"},{"name":"get_public_provider","description":"Get a public provider profile\n\nThe FREE, crawlable public subset for one curated provider (same shape as a `GET /v1/providers/public` item). Reachable with no A"},{"name":"get_provider_sla","description":"List provider SLA scorecards\n\nPer-provider SLA scorecards for one trailing period: checks-weighted uptime across each provider's mapped hosts, incident count, t"},{"name":"get_provider_sla_by_key","description":"Get a provider's SLA scorecards\n\nOne provider's SLA scorecards, one per trailing period (30d and 90d). `key` is the provider's natural key (as reported by `GET "},{"name":"list_provider_certs","description":"Get a provider's certificate posture\n\nA curated provider's whole-fleet certificate posture in one call: per-Seat cert counts, soonest expiry, expired / expiring"},{"name":"list_access_points","description":"List access points\n\nThe Access Point directory: every Provider in its serving role, with its member seats and roster size (current participant count), busiest f"},{"name":"get_access_point","description":"Get an access point\n\nOne Provider's detail: display name, verified flag, member seats (each with its embedded provider or unverified cert-CN), roster size, and "},{"name":"get_access_point_churn","description":"Get an access point's churn\n\nAn Access Point's joiner / mover / leaver activity over a period: a daily category series with derived net growth, period totals, a"},{"name":"list_access_point_churn_participants","description":"List participants behind a churn category\n\nThe drill-down: the participant IDs behind one churn category count for this Provider over the period. Bounded to 500"},{"name":"list_smps","description":"List SMPs\n\nThe SMP directory: every current SMP hostname with the seat(s) and provider that sign its metadata, busiest first. A hostname is listed if it current"},{"name":"get_seat","description":"Get a seat\n\nA Peppol certificate seat: its embedded provider (verified mapping or unverified cert-CN fallback) and the hosts it was observed operating."},{"name":"get_seat_sla","description":"Get a seat's SLA scorecards\n\nOne seat's SLA scorecards, one per trailing period (30d and 90d). `seatId` is the seat identifier (as reported by `GET /v1/aps/{key"},{"name":"list_events","description":"List global change events\n\nEvery typed change event, newest-first, cursor-paginated. Any anomaly an event triggered is embedded on it. `cursor` walks older even"},{"name":"list_participants","description":"List participants\n\nThe participant set, keyset-paginated. Default sort is first-seen newest-first. Comma-array filters (`country`, `scheme`, `smp`, `ap`, `docty"},{"name":"get_participant_stats","description":"Participant facet stats\n\nGlobal participant facet counts (per country/scheme/smp/ap/doctype/transport_profile, registered share, provenance split) plus an estim"},{"name":"get_participant_stats_history","description":"Participant facet history\n\nA daily time series over one participant facet dimension (adoption curves / QoQ trends), from daily snapshots of the rollup. History "},{"name":"get_participant_joiners","description":"Network joiners curve\n\nThe real onboarding curve (issue #222): joiner counts bucketed by derived network join date (business-card RegistrationDate, else genuine"},{"name":"get_software_stats","description":"Software landscape\n\nThe free host-software landscape (issue #490): k-anonymised vendor share (k=5, the sub-k tail folded into `other`), version distribution wit"},{"name":"get_software_stats_history","description":"Software landscape history\n\nThe software landscape over time, derived from the temporal software table in one windowed pass: per UTC day, the host-weighted iden"},{"name":"get_doctype_stats","description":"Document-type landscape\n\nThe free document-type landscape (issue #647): per-family participant share (Invoice, Order, Credit Note, …), the wildcard-doctype buck"},{"name":"get_doctype_stats_history","description":"Document-type landscape history\n\nThe document-type landscape over time: per UTC day, the participant count for each family, from the doctype history rollup. Key"},{"name":"get_doctype_family","description":"Doctypes within a family\n\nThe concrete document types within one family (issue #647): each doctype's local name, version, participant count, and share of the fa"},{"name":"get_doctype_family_countries","description":"A family's receivers by country\n\nOne document family's receiving participants sliced by ISO-3166 alpha-2 country (issue #652), each with its share of the family"},{"name":"get_doctype_family_providers","description":"A family's receivers by provider\n\nOne document family's receiving participants sliced by hosting provider (issue #652), attributed via the SMP-hosted footprint "},{"name":"get_country_churn","description":"Per-country participant churn\n\nNew (joiner) vs departed (leaver) participants for one country, as a daily series and an all-time monthly rollup, from the hourly"},{"name":"get_country_providers","description":"Providers serving a country\n\nThe Access Points serving one country, ranked two ways from the hourly rollup: `providers` by participant (Peppol-ID) count, and `p"},{"name":"list_anomalies","description":"List anomalies\n\nThe anomaly feed, newest-first, cursor-paginated."},{"name":"list_software_anomalies","description":"List software anomalies\n\nThe software-fingerprinting anomaly feed (spec §6): version downgrades and vendor swaps, both graded `notice`. A `market` carve-out — t"},{"name":"get_anomaly","description":"Get an anomaly\n\nOne anomaly by its stable content-derived key."},{"name":"get_sml_status","description":"Get SML/SMK zone status\n\nOne entry per monitored zone: quorum verdict, per-location canary breakdown, DNAME cutover state, management-host TLS snapshot and zone"},{"name":"get_id_quality","description":"Peppol ID quality summary\n\nPer-scheme (ICD) summary of the structural identifier checks: how many participants were checked, how many failed their scheme's rule"},{"name":"list_id_quality_malformed","description":"List malformed participant identifiers\n\nThe individual identifiers that failed their scheme's structural rule, keyset-paginated on (scheme, value). The first pa"},{"name":"get_id_quality_hosting","description":"Hosting rollup for malformed identifiers\n\nWhich Access Points and SMPs serve the malformed identifiers, honouring the same `scheme`/`reason`/`q` filters as the "}],"toolCount":51,"serverName":"peppolstatus","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"list_hosts","description":"List monitored hosts\n\nEvery monitored host with its current verdict, latest hourly all-locations latency and 24h uptime, worst-first, plus a network-wide rollup"},{"name":"get_host","description":"Get a host's current state\n\nCurrent role, verdict, network attribution (IPs/PTR), TLS certificate and operating provider for a host. `?at=` returns point-in-tim"},{"name":"list_host_incidents","description":"List a host's incidents\n\nIncidents for one host, newest-first, cursor-paginated."},{"name":"get_host_uptime","description":"Get a host's uptime aggregates\n\nThe aggregate ladder for a host at a chosen resolution, per-location plus the `__all__` rollup, optionally windowed by `[from, t"},{"name":"list_host_software","description":"List all hosts' software (Market)\n\nEvery host with open software fingerprint rows, one row per (hostname, role) with the vendor / version / hosting axes folded "},{"name":"get_host_software","description":"Get a host's software fingerprint\n\nThe detected software of a host across ALL its roles: vendor, version and hosting per role, each with its confidence tier, fi"},{"name":"list_host_software_history","description":"List a host's software-fingerprint history\n\nThe closed (superseded) software rows for one host, newest-first, cursor-paginated. Each row is one axis transition "},{"name":"list_incidents","description":"List incidents\n\nThe global incident feed, newest-first, cursor-paginated."},{"name":"get_participant","description":"Get a participant's current state\n\nDirectory presence, SML registration + current SMP, business card, the company-register enrichment block, endpoints and servi"},{"name":"list_participant_events","description":"List a participant's change events\n\nThe participant's typed change events, newest-first, cursor-paginated."},{"name":"get_participant_history","description":"List a participant's temporal history\n\nThe participant's temporal rows across the directory/card/registration/SMP fact families, newest-first, cursor-paginated."},{"name":"get_participant_availability","description":"Get a participant's measured availability\n\nThe real, probe-measured reachability of one Peppol ID over time. Two lanes — the participant's SMP host (discovery) "},{"name":"get_network_summary","description":"Get the network summary\n\nCurrent host verdict counts, open incidents and anomalies in the last 24h, plus how fresh the Peppol Directory export behind every othe"},{"name":"get_network_history","description":"Get the network verdict history\n\nThe host verdict mix over time, derived from the temporal verdict table in one windowed pass: per UTC day, the rows open at 00:"},{"name":"get_summary","description":"Get the public dashboard summary\n\nThe free marketing-dashboard rollup: the network-wide host rollup (fleet count + mean uptime/latency), the hourly fleet-averag"},{"name":"get_adoption","description":"Get a country's adoption aggregates\n\nPeppol adoption for one country as one bare object: headline totals (universe, on_peppol, penetration), the single-dimensio"},{"name":"list_providers","description":"List providers\n\nThe OpenPeppol member registry with role flags, country, mapped hostnames and per-provider participant counts (market share), busiest first. Not"},{"name":"get_provider","description":"Get a curated provider\n\nA curated provider navigable to its seats and each seat's observed hosts."},{"name":"list_public_providers","description":"List public provider profiles\n\nThe FREE, crawlable public subset for each curated provider, busiest first: identity + role flags, the seat-directory columns (le"},{"name":"get_public_provider","description":"Get a public provider profile\n\nThe FREE, crawlable public subset for one curated provider (same shape as a `GET /v1/providers/public` item). Reachable with no A"},{"name":"get_provider_sla","description":"List provider SLA scorecards\n\nPer-provider SLA scorecards for one trailing period: checks-weighted uptime across each provider's mapped hosts, incident count, t"},{"name":"get_provider_sla_by_key","description":"Get a provider's SLA scorecards\n\nOne provider's SLA scorecards, one per trailing period (30d and 90d). `key` is the provider's natural key (as reported by `GET "},{"name":"list_provider_certs","description":"Get a provider's certificate posture\n\nA curated provider's whole-fleet certificate posture in one call: per-Seat cert counts, soonest expiry, expired / expiring"},{"name":"list_access_points","description":"List access points\n\nThe Access Point directory: every Provider in its serving role, with its member seats and roster size (current participant count), busiest f"},{"name":"get_access_point","description":"Get an access point\n\nOne Provider's detail: display name, verified flag, member seats (each with its embedded provider or unverified cert-CN), roster size, and "},{"name":"get_access_point_churn","description":"Get an access point's churn\n\nAn Access Point's joiner / mover / leaver activity over a period: a daily category series with derived net growth, period totals, a"},{"name":"list_access_point_churn_participants","description":"List participants behind a churn category\n\nThe drill-down: the participant IDs behind one churn category count for this Provider over the period. Bounded to 500"},{"name":"list_smps","description":"List SMPs\n\nThe SMP directory: every current SMP hostname with the seat(s) and provider that sign its metadata, busiest first. A hostname is listed if it current"},{"name":"get_seat","description":"Get a seat\n\nA Peppol certificate seat: its embedded provider (verified mapping or unverified cert-CN fallback) and the hosts it was observed operating."},{"name":"get_seat_sla","description":"Get a seat's SLA scorecards\n\nOne seat's SLA scorecards, one per trailing period (30d and 90d). `seatId` is the seat identifier (as reported by `GET /v1/aps/{key"},{"name":"list_events","description":"List global change events\n\nEvery typed change event, newest-first, cursor-paginated. Any anomaly an event triggered is embedded on it. `cursor` walks older even"},{"name":"list_participants","description":"List participants\n\nThe participant set, keyset-paginated. Default sort is first-seen newest-first. Comma-array filters (`country`, `scheme`, `smp`, `ap`, `docty"},{"name":"get_participant_stats","description":"Participant facet stats\n\nGlobal participant facet counts (per country/scheme/smp/ap/doctype/transport_profile, registered share, provenance split) plus an estim"},{"name":"get_participant_stats_history","description":"Participant facet history\n\nA daily time series over one participant facet dimension (adoption curves / QoQ trends), from daily snapshots of the rollup. History "},{"name":"get_participant_joiners","description":"Network joiners curve\n\nThe real onboarding curve (issue #222): joiner counts bucketed by derived network join date (business-card RegistrationDate, else genuine"},{"name":"get_software_stats","description":"Software landscape\n\nThe free host-software landscape (issue #490): k-anonymised vendor share (k=5, the sub-k tail folded into `other`), version distribution wit"},{"name":"get_software_stats_history","description":"Software landscape history\n\nThe software landscape over time, derived from the temporal software table in one windowed pass: per UTC day, the host-weighted iden"},{"name":"get_doctype_stats","description":"Document-type landscape\n\nThe free document-type landscape (issue #647): per-family participant share (Invoice, Order, Credit Note, …), the wildcard-doctype buck"},{"name":"get_doctype_stats_history","description":"Document-type landscape history\n\nThe document-type landscape over time: per UTC day, the participant count for each family, from the doctype history rollup. Key"},{"name":"get_doctype_family","description":"Doctypes within a family\n\nThe concrete document types within one family (issue #647): each doctype's local name, version, participant count, and share of the fa"},{"name":"get_doctype_family_countries","description":"A family's receivers by country\n\nOne document family's receiving participants sliced by ISO-3166 alpha-2 country (issue #652), each with its share of the family"},{"name":"get_doctype_family_providers","description":"A family's receivers by provider\n\nOne document family's receiving participants sliced by hosting provider (issue #652), attributed via the SMP-hosted footprint "},{"name":"get_country_churn","description":"Per-country participant churn\n\nNew (joiner) vs departed (leaver) participants for one country, as a daily series and an all-time monthly rollup, from the hourly"},{"name":"get_country_providers","description":"Providers serving a country\n\nThe Access Points serving one country, ranked two ways from the hourly rollup: `providers` by participant (Peppol-ID) count, and `p"},{"name":"list_anomalies","description":"List anomalies\n\nThe anomaly feed, newest-first, cursor-paginated."},{"name":"list_software_anomalies","description":"List software anomalies\n\nThe software-fingerprinting anomaly feed (spec §6): version downgrades and vendor swaps, both graded `notice`. A `market` carve-out — t"},{"name":"get_anomaly","description":"Get an anomaly\n\nOne anomaly by its stable content-derived key."},{"name":"get_sml_status","description":"Get SML/SMK zone status\n\nOne entry per monitored zone: quorum verdict, per-location canary breakdown, DNAME cutover state, management-host TLS snapshot and zone"},{"name":"get_id_quality","description":"Peppol ID quality summary\n\nPer-scheme (ICD) summary of the structural identifier checks: how many participants were checked, how many failed their scheme's rule"},{"name":"list_id_quality_malformed","description":"List malformed participant identifiers\n\nThe individual identifiers that failed their scheme's structural rule, keyset-paginated on (scheme, value). The first pa"},{"name":"get_id_quality_hosting","description":"Hosting rollup for malformed identifiers\n\nWhich Access Points and SMPs serve the malformed identifiers, honouring the same `scheme`/`reason`/`q` filters as the "}],"package":null},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"com.peppolstatus/api","url":"https://registry.modelcontextprotocol.io/v0/servers/com.peppolstatus%2Fapi","firstSeenAt":"2026-09-05T20:18:54.168Z","fetchedAt":"2026-09-05T20:18:54.168Z","normalizedAt":"2026-09-05T20:18:54.168Z"}]},"firstSeenAt":"2026-09-05T20:18:54.168Z","updatedAt":"2026-09-05T22:26:55.990Z"}