{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_u8fv62j274ns","handle":"getpeppr","url":"https://wellknown.network/agents/getpeppr","links":{"self":"https://wellknown.network/agents/getpeppr/record.json","html":"https://wellknown.network/agents/getpeppr","markdown":"https://wellknown.network/agents/getpeppr/record.md","api":"https://wellknown.network/api/v1/agents/getpeppr","status":"https://wellknown.network/api/v1/agents/getpeppr/status","claim":"https://wellknown.network/agents/getpeppr/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/getpeppr/claim.json","badge":"https://wellknown.network/agents/getpeppr/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/getpeppr/history","tools":"https://wellknown.network/api/v1/agents/getpeppr/tools"},"ard":{"identifier":"urn:air:api.getpeppr.dev:server:getpeppr","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"getpeppr","summary":"Peppol e-invoicing: look up participants, validate invoices, and send sandbox test invoices.","description":"Peppol e-invoicing: look up participants, validate invoices, and send sandbox test invoices.","publisher":{"name":"dev.getpeppr","url":null},"homepage":"https://getpeppr.dev/docs/mcp/","repository":null,"version":"1.0.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://api.getpeppr.dev/mcp","type":"mcp_streamable_http","auth":null,"probeable":true},{"url":"https://api.getpeppr.dev/mcp/auth","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-10-19T16:27:32.690238Z","publishedAt":"2026-10-19T16:27:32.690238Z","registryName":"dev.getpeppr/mcp"},"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":"documents.invoice-processing","name":"Invoice Processing","confidence":1,"provenance":"derived"},{"slug":"code.execution","name":"Code Execution","confidence":0.911,"provenance":"derived"},{"slug":"code.documentation","name":"Code Documentation","confidence":0.583,"provenance":"derived"}],"categories":["code","documents"],"language":"pt"},"observed":{"status":"live","statusReason":"Responded 59m ago.","lastOkAt":"2026-10-31T21:26:49.784Z","lastProbedAt":"2026-10-31T21:26:49.784Z","statusComputedAt":"2026-10-31T21:30:28.693Z","reliability30d":{"probes":65,"successRate":1,"p50Ms":284,"basis":"mixed","measures":{"availability":"availability (some checks stopped at authentication)","latency":"response time (mixed)","tools":"partially observed","summary":"Some successful checks reached the service and some stopped at an authentication response; figures combine both."},"checks":{"total":65,"ok":65,"authBoundaryOk":32,"serviceOk":33,"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-31T21:26:49.784Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":270,"error":null,"detail":{"tools":[{"name":"plan_integration","description":"Returns the integration steps, code snippets and documentation links for adding Peppol to an application, for a single sender or for a platform that sends on be"},{"name":"search_docs","description":"Searches the prose of the public getpeppr documentation and returns up to 5 matching pages, each with its url and a short excerpt. Excerpts carry no code: open "},{"name":"validate_invoice","description":"Validates a Peppol BIS Billing 3.0 UBL document against the Peppol rules, or a getpeppr invoice JSON against the SDK rules, and explains each violation. It does"},{"name":"lookup_participant","description":"Says whether a Peppol identifier (scheme:identifier) is registered to receive documents on the production Peppol network, and which ones. A sandbox test custome"},{"name":"create_test_customer","description":"Platform accounts only: creates a test customer (sub-tenant legal entity) in the getpeppr sandbox and returns its registration state. Up to 10 active test custo"},{"name":"send_test_invoice","description":"Sends an invoice in the getpeppr sandbox to the Belgian test receiver 9925:BE0314595348, for your own company or for one of your test customers. Never sends a r"},{"name":"get_document_status","description":"Returns the status and lifecycle events of a sandbox document sent from your getpeppr account; call it with the documentId send_test_invoice returned. submitted"}],"toolCount":7,"toolsHash":"c90c5bfcf0b6e52e92730287cd6532f36d9d2e4e7e4281881aa3d0930d1d9df3","serverName":"getpeppr","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-31T15:28:03.418Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":315,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://api.getpeppr.dev/.well-known/oauth-protected-resource/mcp/auth\", scope=\"openid profile email user:org:read offline_access\""}},{"at":"2026-10-31T13:26:59.512Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":254,"error":null,"detail":{"tools":[{"name":"plan_integration","description":"Returns the integration steps, code snippets and documentation links for adding Peppol to an application, for a single sender or for a platform that sends on be"},{"name":"search_docs","description":"Searches the prose of the public getpeppr documentation and returns up to 5 matching pages, each with its url and a short excerpt. Excerpts carry no code: open "},{"name":"validate_invoice","description":"Validates a Peppol BIS Billing 3.0 UBL document against the Peppol rules, or a getpeppr invoice JSON against the SDK rules, and explains each violation. It does"},{"name":"lookup_participant","description":"Says whether a Peppol identifier (scheme:identifier) is registered to receive documents on the production Peppol network, and which ones. A sandbox test custome"},{"name":"create_test_customer","description":"Platform accounts only: creates a test customer (sub-tenant legal entity) in the getpeppr sandbox and returns its registration state. Up to 10 active test custo"},{"name":"send_test_invoice","description":"Sends an invoice in the getpeppr sandbox to the Belgian test receiver 9925:BE0314595348, for your own company or for one of your test customers. Never sends a r"},{"name":"get_document_status","description":"Returns the status and lifecycle events of a sandbox document sent from your getpeppr account; call it with the documentId send_test_invoice returned. submitted"}],"toolCount":7,"toolsHash":"c90c5bfcf0b6e52e92730287cd6532f36d9d2e4e7e4281881aa3d0930d1d9df3","serverName":"getpeppr","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-31T07:28:47.563Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":282,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://api.getpeppr.dev/.well-known/oauth-protected-resource/mcp/auth\", scope=\"openid profile email user:org:read offline_access\""}},{"at":"2026-10-31T05:27:20.106Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":273,"error":null,"detail":{"tools":[{"name":"plan_integration","description":"Returns the integration steps, code snippets and documentation links for adding Peppol to an application, for a single sender or for a platform that sends on be"},{"name":"search_docs","description":"Searches the prose of the public getpeppr documentation and returns up to 5 matching pages, each with its url and a short excerpt. Excerpts carry no code: open "},{"name":"validate_invoice","description":"Validates a Peppol BIS Billing 3.0 UBL document against the Peppol rules, or a getpeppr invoice JSON against the SDK rules, and explains each violation. It does"},{"name":"lookup_participant","description":"Says whether a Peppol identifier (scheme:identifier) is registered to receive documents on the production Peppol network, and which ones. A sandbox test custome"},{"name":"create_test_customer","description":"Platform accounts only: creates a test customer (sub-tenant legal entity) in the getpeppr sandbox and returns its registration state. Up to 10 active test custo"},{"name":"send_test_invoice","description":"Sends an invoice in the getpeppr sandbox to the Belgian test receiver 9925:BE0314595348, for your own company or for one of your test customers. Never sends a r"},{"name":"get_document_status","description":"Returns the status and lifecycle events of a sandbox document sent from your getpeppr account; call it with the documentId send_test_invoice returned. submitted"}],"toolCount":7,"toolsHash":"c90c5bfcf0b6e52e92730287cd6532f36d9d2e4e7e4281881aa3d0930d1d9df3","serverName":"getpeppr","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-30T23:27:20.540Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":417,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://api.getpeppr.dev/.well-known/oauth-protected-resource/mcp/auth\", scope=\"openid profile email user:org:read offline_access\""}},{"at":"2026-10-30T21:26:23.107Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":280,"error":null,"detail":{"tools":[{"name":"plan_integration","description":"Returns the integration steps, code snippets and documentation links for adding Peppol to an application, for a single sender or for a platform that sends on be"},{"name":"search_docs","description":"Searches the prose of the public getpeppr documentation and returns up to 5 matching pages, each with its url and a short excerpt. Excerpts carry no code: open "},{"name":"validate_invoice","description":"Validates a Peppol BIS Billing 3.0 UBL document against the Peppol rules, or a getpeppr invoice JSON against the SDK rules, and explains each violation. It does"},{"name":"lookup_participant","description":"Says whether a Peppol identifier (scheme:identifier) is registered to receive documents on the production Peppol network, and which ones. A sandbox test custome"},{"name":"create_test_customer","description":"Platform accounts only: creates a test customer (sub-tenant legal entity) in the getpeppr sandbox and returns its registration state. Up to 10 active test custo"},{"name":"send_test_invoice","description":"Sends an invoice in the getpeppr sandbox to the Belgian test receiver 9925:BE0314595348, for your own company or for one of your test customers. Never sends a r"},{"name":"get_document_status","description":"Returns the status and lifecycle events of a sandbox document sent from your getpeppr account; call it with the documentId send_test_invoice returned. submitted"}],"toolCount":7,"toolsHash":"c90c5bfcf0b6e52e92730287cd6532f36d9d2e4e7e4281881aa3d0930d1d9df3","serverName":"getpeppr","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-30T15:23:55.715Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":259,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://api.getpeppr.dev/.well-known/oauth-protected-resource/mcp/auth\", scope=\"openid profile email user:org:read offline_access\""}},{"at":"2026-10-30T14:27:22.712Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":258,"error":null,"detail":{"tools":[{"name":"plan_integration","description":"Returns the integration steps, code snippets and documentation links for adding Peppol to an application, for a single sender or for a platform that sends on be"},{"name":"search_docs","description":"Searches the prose of the public getpeppr documentation and returns up to 5 matching pages, each with its url and a short excerpt. Excerpts carry no code: open "},{"name":"validate_invoice","description":"Validates a Peppol BIS Billing 3.0 UBL document against the Peppol rules, or a getpeppr invoice JSON against the SDK rules, and explains each violation. It does"},{"name":"lookup_participant","description":"Says whether a Peppol identifier (scheme:identifier) is registered to receive documents on the production Peppol network, and which ones. A sandbox test custome"},{"name":"create_test_customer","description":"Platform accounts only: creates a test customer (sub-tenant legal entity) in the getpeppr sandbox and returns its registration state. Up to 10 active test custo"},{"name":"send_test_invoice","description":"Sends an invoice in the getpeppr sandbox to the Belgian test receiver 9925:BE0314595348, for your own company or for one of your test customers. Never sends a r"},{"name":"get_document_status","description":"Returns the status and lifecycle events of a sandbox document sent from your getpeppr account; call it with the documentId send_test_invoice returned. submitted"}],"toolCount":7,"toolsHash":"c90c5bfcf0b6e52e92730287cd6532f36d9d2e4e7e4281881aa3d0930d1d9df3","serverName":"getpeppr","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-30T07:23:34.164Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":297,"error":null,"detail":{"tools":[{"name":"plan_integration","description":"Returns the integration steps, code snippets and documentation links for adding Peppol to an application, for a single sender or for a platform that sends on be"},{"name":"search_docs","description":"Searches the prose of the public getpeppr documentation and returns up to 5 matching pages, each with its url and a short excerpt. Excerpts carry no code: open "},{"name":"validate_invoice","description":"Validates a Peppol BIS Billing 3.0 UBL document against the Peppol rules, or a getpeppr invoice JSON against the SDK rules, and explains each violation. It does"},{"name":"lookup_participant","description":"Says whether a Peppol identifier (scheme:identifier) is registered to receive documents on the production Peppol network, and which ones. A sandbox test custome"},{"name":"create_test_customer","description":"Platform accounts only: creates a test customer (sub-tenant legal entity) in the getpeppr sandbox and returns its registration state. Up to 10 active test custo"},{"name":"send_test_invoice","description":"Sends an invoice in the getpeppr sandbox to the Belgian test receiver 9925:BE0314595348, for your own company or for one of your test customers. Never sends a r"},{"name":"get_document_status","description":"Returns the status and lifecycle events of a sandbox document sent from your getpeppr account; call it with the documentId send_test_invoice returned. submitted"}],"toolCount":7,"toolsHash":"c90c5bfcf0b6e52e92730287cd6532f36d9d2e4e7e4281881aa3d0930d1d9df3","serverName":"getpeppr","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"plan_integration","description":"Returns the integration steps, code snippets and documentation links for adding Peppol to an application, for a single sender or for a platform that sends on be"},{"name":"search_docs","description":"Searches the prose of the public getpeppr documentation and returns up to 5 matching pages, each with its url and a short excerpt. Excerpts carry no code: open "},{"name":"validate_invoice","description":"Validates a Peppol BIS Billing 3.0 UBL document against the Peppol rules, or a getpeppr invoice JSON against the SDK rules, and explains each violation. It does"},{"name":"lookup_participant","description":"Says whether a Peppol identifier (scheme:identifier) is registered to receive documents on the production Peppol network, and which ones. A sandbox test custome"},{"name":"create_test_customer","description":"Platform accounts only: creates a test customer (sub-tenant legal entity) in the getpeppr sandbox and returns its registration state. Up to 10 active test custo"},{"name":"send_test_invoice","description":"Sends an invoice in the getpeppr sandbox to the Belgian test receiver 9925:BE0314595348, for your own company or for one of your test customers. Never sends a r"},{"name":"get_document_status","description":"Returns the status and lifecycle events of a sandbox document sent from your getpeppr account; call it with the documentId send_test_invoice returned. submitted"}],"package":null,"toolSurface":{"id":"ts_cqk4ptdbgnbp","endpointId":"ep_rfamt44evbjx","hash":"c90c5bfcf0b6e52e92730287cd6532f36d9d2e4e7e4281881aa3d0930d1d9df3","toolCount":7,"serverName":"getpeppr","serverVersion":"1.0.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-10-22T06:25:36.312Z","lastSeenAt":"2026-10-31T21:26:49.788Z","observations":33,"toolNames":["plan_integration","search_docs","validate_invoice","lookup_participant","create_test_customer","send_test_invoice","get_document_status"],"distinctSurfaces":1},"endpointFacts":[{"id":"ep_rfamt44evbjx","url":"https://api.getpeppr.dev/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-31T13:26:59.539Z","auth":{"observedAt":"2026-10-31T13:27:00.020Z","authRequired":false,"scheme":null,"resourceMetadata":{"url":"https://api.getpeppr.dev/.well-known/oauth-protected-resource/mcp","resource":"https://api.getpeppr.dev/mcp","authorizationServers":["https://clerk.getpeppr.dev"],"scopesSupported":["openid","profile","email","user:org:read","offline_access"]},"authorizationServer":{"url":"https://clerk.getpeppr.dev/.well-known/oauth-authorization-server","issuer":"https://clerk.getpeppr.dev","grantTypesSupported":["authorization_code","refresh_token","urn:ietf:params:oauth:grant-type:device_code"],"codeChallengeMethodsSupported":["S256"],"tokenEndpointAuthMethodsSupported":["client_secret_basic","none","client_secret_post"],"dynamicClientRegistration":true,"dpopSigningAlgValuesSupported":[],"clientIdMetadataDocumentSupported":true},"conformance":{"dpop":false,"rfc8414":true,"rfc9728":true,"pkceS256":true,"clientIdMetadataDocument":true,"dynamicClientRegistration":true}},"tls":{"observedAt":"2026-10-31T13:27:00.048Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"api.getpeppr.dev","issuer":{"commonName":"YR2","organization":"Let's Encrypt"},"validFrom":"2026-10-05T22:52:05.000Z","validTo":"2027-01-03T22:52:04.000Z","daysToExpiry":64,"sanCount":1,"fingerprint256":"9F:94:75:28:CA:45:25:C5:E1:23:F1:A1:7C:A3:D7:43:6F:D9:4E:26:01:5E:EE:73:27:AD:02:03:CA:30:DD:F0"}},{"id":"ep_f3yb9w3y5e3m","url":"https://api.getpeppr.dev/mcp/auth","type":"mcp_streamable_http","factsCheckedAt":"2026-10-30T07:20:48.256Z","auth":{"observedAt":"2026-10-30T07:20:48.699Z","authRequired":true,"scheme":"Bearer","resourceMetadata":{"url":"https://api.getpeppr.dev/.well-known/oauth-protected-resource/mcp/auth","resource":"https://api.getpeppr.dev/mcp/auth","authorizationServers":["https://clerk.getpeppr.dev"],"scopesSupported":["openid","profile","email","user:org:read","offline_access"]},"authorizationServer":{"url":"https://clerk.getpeppr.dev/.well-known/oauth-authorization-server","issuer":"https://clerk.getpeppr.dev","grantTypesSupported":["authorization_code","refresh_token","urn:ietf:params:oauth:grant-type:device_code"],"codeChallengeMethodsSupported":["S256"],"tokenEndpointAuthMethodsSupported":["client_secret_basic","none","client_secret_post"],"dynamicClientRegistration":true,"dpopSigningAlgValuesSupported":[],"clientIdMetadataDocumentSupported":true},"conformance":{"dpop":false,"rfc8414":true,"rfc9728":true,"pkceS256":true,"clientIdMetadataDocument":true,"dynamicClientRegistration":true}},"tls":{"observedAt":"2026-10-30T07:20:48.732Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"api.getpeppr.dev","issuer":{"commonName":"YR2","organization":"Let's Encrypt"},"validFrom":"2026-10-05T22:52:05.000Z","validTo":"2027-01-03T22:52:04.000Z","daysToExpiry":64,"sanCount":1,"fingerprint256":"9F:94:75:28:CA:45:25:C5:E1:23:F1:A1:7C:A3:D7:43:6F:D9:4E:26:01:5E:EE:73:27:AD:02:03:CA:30:DD:F0"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"dev.getpeppr/mcp","url":"https://registry.modelcontextprotocol.io/v0/servers/dev.getpeppr%2Fmcp","firstSeenAt":"2026-10-22T05:21:08.506Z","fetchedAt":"2026-10-29T01:19:45.344Z","normalizedAt":"2026-10-29T01:19:45.344Z"}]},"firstSeenAt":"2026-10-22T05:21:08.506Z","updatedAt":"2026-10-31T21:33:24.423Z"}