{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_484psexqnjq7","handle":"rowsafe","url":"https://wellknown.network/agents/rowsafe","links":{"self":"https://wellknown.network/agents/rowsafe/record.json","html":"https://wellknown.network/agents/rowsafe","markdown":"https://wellknown.network/agents/rowsafe/record.md","api":"https://wellknown.network/api/v1/agents/rowsafe","status":"https://wellknown.network/api/v1/agents/rowsafe/status","claim":"https://wellknown.network/agents/rowsafe/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/rowsafe/claim.json","badge":"https://wellknown.network/agents/rowsafe/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/rowsafe/history","tools":"https://wellknown.network/api/v1/agents/rowsafe/tools"},"ard":{"identifier":"urn:air:api.rowsafe.sh:server:rowsafe","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Rowsafe","summary":"PostgreSQL backups and a safety net for AI agents: check recoverability, set restore points.","description":"PostgreSQL backups and a safety net for AI agents: check recoverability, set restore points.","publisher":{"name":"sh.rowsafe","url":null},"homepage":"https://rowsafe.sh/docs/reference/mcp","repository":"https://github.com/rowsafe/rowsafe","version":"0.4.2","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://api.rowsafe.sh/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-10-01T22:29:30.389399Z","publishedAt":"2026-10-01T22:29:30.389399Z","registryName":"sh.rowsafe/rowsafe"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[],"categories":[],"language":"en"},"observed":{"status":"live","statusReason":"Responded 2h ago.","lastOkAt":"2026-10-10T02:31:11.084Z","lastProbedAt":"2026-10-10T02:31:11.084Z","statusComputedAt":"2026-10-10T02:32:05.573Z","reliability30d":{"probes":26,"successRate":1,"p50Ms":11,"basis":"auth_boundary","measures":{"availability":"authentication boundary reached","latency":"time to authentication response","tools":"not measured — authentication required","summary":"Every successful check was an authentication response (401/403). The endpoint exists and enforces authentication; nothing behind that boundary — tools, behaviour, service health — has been observed."},"checks":{"total":26,"ok":26,"authBoundaryOk":26,"serviceOk":0,"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-10T02:31:11.084Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":10,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://api.rowsafe.sh/.well-known/oauth-protected-resource/mcp\", scope=\"rowsafe:read rowsafe:marks rowsafe:act\", realm=\"rowsafe\""}},{"at":"2026-10-09T20:29:54.914Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":10,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://api.rowsafe.sh/.well-known/oauth-protected-resource/mcp\", scope=\"rowsafe:read rowsafe:marks rowsafe:act\", realm=\"rowsafe\""}},{"at":"2026-10-09T13:30:53.511Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":24,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://api.rowsafe.sh/.well-known/oauth-protected-resource/mcp\", scope=\"rowsafe:read rowsafe:marks rowsafe:act\", realm=\"rowsafe\""}},{"at":"2026-10-09T06:21:40.099Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":10,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://api.rowsafe.sh/.well-known/oauth-protected-resource/mcp\", scope=\"rowsafe:read rowsafe:marks rowsafe:act\", realm=\"rowsafe\""}},{"at":"2026-10-08T23:23:00.781Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":10,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://api.rowsafe.sh/.well-known/oauth-protected-resource/mcp\", scope=\"rowsafe:read rowsafe:marks rowsafe:act\", realm=\"rowsafe\""}},{"at":"2026-10-08T17:26:56.766Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":11,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://api.rowsafe.sh/.well-known/oauth-protected-resource/mcp\", scope=\"rowsafe:read rowsafe:marks rowsafe:act\", realm=\"rowsafe\""}},{"at":"2026-10-08T10:23:46.465Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":14,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://api.rowsafe.sh/.well-known/oauth-protected-resource/mcp\", scope=\"rowsafe:read rowsafe:marks rowsafe:act\", realm=\"rowsafe\""}},{"at":"2026-10-08T03:24:51.592Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":10,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://api.rowsafe.sh/.well-known/oauth-protected-resource/mcp\", scope=\"rowsafe:read rowsafe:marks rowsafe:act\", realm=\"rowsafe\""}},{"at":"2026-10-07T20:29:57.375Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":11,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://api.rowsafe.sh/.well-known/oauth-protected-resource/mcp\", scope=\"rowsafe:read rowsafe:marks rowsafe:act\", realm=\"rowsafe\""}},{"at":"2026-10-07T13:26:40.985Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":11,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://api.rowsafe.sh/.well-known/oauth-protected-resource/mcp\", scope=\"rowsafe:read rowsafe:marks rowsafe:act\", realm=\"rowsafe\""}}],"tools":null,"package":null,"toolSurface":null,"endpointFacts":[{"id":"ep_ka7mw8xmug6b","url":"https://api.rowsafe.sh/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-06T23:26:47.598Z","auth":{"observedAt":"2026-10-06T23:26:47.619Z","authRequired":true,"scheme":"Bearer","resourceMetadata":{"url":"https://api.rowsafe.sh/.well-known/oauth-protected-resource/mcp","resource":"https://api.rowsafe.sh/mcp","authorizationServers":["https://api.rowsafe.sh"],"scopesSupported":["rowsafe:read","rowsafe:marks","rowsafe:act"]},"authorizationServer":{"url":"https://api.rowsafe.sh/.well-known/oauth-authorization-server","issuer":"https://api.rowsafe.sh","grantTypesSupported":["authorization_code","refresh_token"],"codeChallengeMethodsSupported":["S256"],"tokenEndpointAuthMethodsSupported":["none"],"dynamicClientRegistration":true,"dpopSigningAlgValuesSupported":[],"clientIdMetadataDocumentSupported":false},"conformance":{"dpop":false,"rfc8414":true,"rfc9728":true,"pkceS256":true,"clientIdMetadataDocument":false,"dynamicClientRegistration":true}},"tls":{"observedAt":"2026-10-06T23:26:47.644Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"api.rowsafe.sh","issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validFrom":"2026-09-24T03:49:53.000Z","validTo":"2026-12-23T03:49:52.000Z","daysToExpiry":73,"sanCount":1,"fingerprint256":"C4:3D:DB:D3:87:D5:C4:C0:B6:8C:C2:89:DF:FE:C0:6B:84:E2:06:8B:72:38:44:8E:C4:DD:51:10:21:C0:61:07"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"sh.rowsafe/rowsafe","url":"https://registry.modelcontextprotocol.io/v0/servers/sh.rowsafe%2Frowsafe","firstSeenAt":"2026-10-03T01:22:37.414Z","fetchedAt":"2026-10-08T19:20:00.889Z","normalizedAt":"2026-10-08T19:20:00.889Z"}]},"firstSeenAt":"2026-10-03T01:22:37.414Z","updatedAt":"2026-10-03T01:22:51.162Z"}