{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_ds4xtzjrfpbr","handle":"body-lab","url":"https://wellknown.network/agents/body-lab","links":{"self":"https://wellknown.network/agents/body-lab/record.json","html":"https://wellknown.network/agents/body-lab","markdown":"https://wellknown.network/agents/body-lab/record.md","api":"https://wellknown.network/api/v1/agents/body-lab","status":"https://wellknown.network/api/v1/agents/body-lab/status","claim":"https://wellknown.network/agents/body-lab/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/body-lab/claim.json","badge":"https://wellknown.network/agents/body-lab/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/body-lab/history","tools":"https://wellknown.network/api/v1/agents/body-lab/tools"},"ard":{"identifier":"urn:air:bodylab.lol:server:body-lab","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Body Lab","summary":"Body Lab training: today's prescribed session and why, load, recovery, activities and strength.","description":"Body Lab training: today's prescribed session and why, load, recovery, activities and strength.","publisher":{"name":"lol.bodylab","url":null},"homepage":"https://bodylab.lol","repository":"https://github.com/bodylab-lol/mcp","version":"1.0.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://bodylab.lol/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-09-14T03:17:59.620631Z","publishedAt":"2026-09-14T03:17:59.620631Z","registryName":"lol.bodylab/body-lab"},"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":"unavailable","statusReason":"6 consecutive checks failed; last success 22d ago.","lastOkAt":"2026-09-19T02:26:38.955Z","lastProbedAt":"2026-10-04T15:29:31.877Z","statusComputedAt":"2026-10-04T15:31:18.308Z","reliability30d":{"probes":20,"successRate":0.7,"p50Ms":160,"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":20,"ok":14,"authBoundaryOk":14,"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-04T15:29:31.877Z","kind":"http_head","ok":false,"httpStatus":null,"latencyMs":null,"error":"disallowed by robots.txt","detail":null},{"at":"2026-09-27T05:26:29.408Z","kind":"http_head","ok":false,"httpStatus":null,"latencyMs":null,"error":"disallowed by robots.txt","detail":null},{"at":"2026-09-22T23:24:54.439Z","kind":"http_head","ok":false,"httpStatus":null,"latencyMs":null,"error":"disallowed by robots.txt","detail":null},{"at":"2026-09-20T21:23:03.437Z","kind":"http_head","ok":false,"httpStatus":null,"latencyMs":null,"error":"disallowed by robots.txt","detail":null},{"at":"2026-09-19T21:26:29.073Z","kind":"http_head","ok":false,"httpStatus":null,"latencyMs":null,"error":"disallowed by robots.txt","detail":null},{"at":"2026-09-19T09:27:26.568Z","kind":"http_head","ok":false,"httpStatus":null,"latencyMs":null,"error":"disallowed by robots.txt","detail":null},{"at":"2026-09-19T02:26:38.955Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":165,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer error=\"invalid_token\", error_description=\"Missing Authorization header\", scope=\"body:read body:write labs:read labs:write training:read\", resource_metadata=\"https://bodylab.lol/.well-known/oaut"}},{"at":"2026-09-18T19:30:13.319Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":153,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer error=\"invalid_token\", error_description=\"Missing Authorization header\", scope=\"body:read body:write labs:read labs:write training:read\", resource_metadata=\"https://bodylab.lol/.well-known/oaut"}},{"at":"2026-09-18T13:26:26.004Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":153,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer error=\"invalid_token\", error_description=\"Missing Authorization header\", scope=\"body:read body:write labs:read labs:write training:read\", resource_metadata=\"https://bodylab.lol/.well-known/oaut"}},{"at":"2026-09-18T07:25:51.430Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":163,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer error=\"invalid_token\", error_description=\"Missing Authorization header\", scope=\"body:read body:write labs:read labs:write training:read\", resource_metadata=\"https://bodylab.lol/.well-known/oaut"}}],"tools":null,"package":null,"toolSurface":null,"endpointFacts":[{"id":"ep_z3c7wj2p2jax","url":"https://bodylab.lol/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-09-22T23:24:54.400Z","auth":{"observedAt":"2026-09-19T02:26:39.268Z","authRequired":true,"scheme":"Bearer","resourceMetadata":{"url":"https://bodylab.lol/.well-known/oauth-protected-resource/mcp","resource":"https://bodylab.lol/mcp","authorizationServers":["https://bodylab.lol"],"scopesSupported":["training:read","labs:read","labs:write","body:read","body:write"]},"authorizationServer":{"url":"https://bodylab.lol/.well-known/oauth-authorization-server","issuer":"https://bodylab.lol","grantTypesSupported":["authorization_code","refresh_token"],"codeChallengeMethodsSupported":["S256"],"tokenEndpointAuthMethodsSupported":["none"],"dynamicClientRegistration":true,"dpopSigningAlgValuesSupported":[],"clientIdMetadataDocumentSupported":true},"conformance":{"dpop":false,"rfc8414":true,"rfc9728":true,"pkceS256":true,"clientIdMetadataDocument":true,"dynamicClientRegistration":true}},"tls":{"observedAt":"2026-09-22T23:24:54.703Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"bodylab.lol","issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validFrom":"2026-09-13T20:14:45.000Z","validTo":"2026-12-12T20:14:44.000Z","daysToExpiry":63,"sanCount":1,"fingerprint256":"CA:40:EB:93:07:79:C7:89:9A:27:3B:C7:71:18:D4:6E:98:B5:EE:7B:5C:D8:6E:1A:87:C4:E2:38:A6:F0:85:AB"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"lol.bodylab/body-lab","url":"https://registry.modelcontextprotocol.io/v0/servers/lol.bodylab%2Fbody-lab","firstSeenAt":"2026-09-15T14:23:10.167Z","fetchedAt":"2026-10-08T18:22:07.513Z","normalizedAt":"2026-10-08T18:22:07.513Z"}]},"firstSeenAt":"2026-09-15T14:23:10.167Z","updatedAt":"2026-09-15T14:23:19.458Z"}