{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_w9xsv7acaf8z","handle":"codebahn","url":"https://wellknown.network/agents/codebahn","links":{"self":"https://wellknown.network/agents/codebahn/record.json","html":"https://wellknown.network/agents/codebahn","markdown":"https://wellknown.network/agents/codebahn/record.md","api":"https://wellknown.network/api/v1/agents/codebahn","status":"https://wellknown.network/api/v1/agents/codebahn/status","claim":"https://wellknown.network/agents/codebahn/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/codebahn/claim.json","badge":"https://wellknown.network/agents/codebahn/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/codebahn/history","tools":"https://wellknown.network/api/v1/agents/codebahn/tools"},"ard":{"identifier":"urn:air:codebahn.net:server:codebahn","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"codebahn","summary":"Codebahn is the private GitHub alternative: fast Git and CI for developers and teams.","description":"Codebahn is the private GitHub alternative: fast Git and CI for developers and teams.","publisher":{"name":"codebahn","url":null},"homepage":null,"repository":"https://github.com/codebahn/codebahn-cli","version":"0.4.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://codebahn.net/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-10-06T09:22:16.773063Z","publishedAt":"2026-10-06T09:22:16.773063Z","registryName":"io.github.codebahn/codebahn"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"dev.version-control","name":"Version Control","confidence":0.745,"provenance":"derived"}],"categories":["dev"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 44m ago.","lastOkAt":"2026-10-10T00:29:25.086Z","lastProbedAt":"2026-10-10T00:29:25.086Z","statusComputedAt":"2026-10-10T00:30:11.397Z","reliability30d":{"probes":95,"successRate":1,"p50Ms":14,"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":95,"ok":95,"authBoundaryOk":95,"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-10T00:29:25.086Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":13,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://codebahn.net/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-09T18:25:25.979Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":13,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://codebahn.net/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-09T11:26:29.719Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":15,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://codebahn.net/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-09T04:28:34.856Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":12,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://codebahn.net/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-08T22:24:49.159Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":21,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://codebahn.net/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-08T16:28:13.976Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":15,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://codebahn.net/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-08T09:24:18.191Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":14,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://codebahn.net/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-08T03:24:47.793Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":14,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://codebahn.net/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-07T21:27:57.601Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":11,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://codebahn.net/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-07T14:30:13.199Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":22,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://codebahn.net/.well-known/oauth-protected-resource/mcp\""}}],"tools":null,"package":null,"toolSurface":null,"endpointFacts":[{"id":"ep_aaaz5b9fk7fe","url":"https://codebahn.net/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-07T21:27:57.592Z","auth":{"observedAt":"2026-10-07T21:27:57.625Z","authRequired":true,"scheme":"Bearer","resourceMetadata":{"url":"https://codebahn.net/.well-known/oauth-protected-resource/mcp","resource":"https://codebahn.net/mcp","authorizationServers":["https://codebahn.net"],"scopesSupported":[]},"authorizationServer":{"url":"https://codebahn.net/.well-known/oauth-authorization-server","issuer":"https://codebahn.net","grantTypesSupported":["authorization_code","refresh_token"],"codeChallengeMethodsSupported":["S256","plain"],"tokenEndpointAuthMethodsSupported":["none","client_secret_basic","client_secret_post"],"dynamicClientRegistration":false,"dpopSigningAlgValuesSupported":[],"clientIdMetadataDocumentSupported":true},"conformance":{"dpop":false,"rfc8414":true,"rfc9728":true,"pkceS256":true,"clientIdMetadataDocument":true,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-07T21:27:57.653Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"codebahn.net","issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validFrom":"2026-09-26T05:22:08.000Z","validTo":"2026-12-25T05:22:07.000Z","daysToExpiry":76,"sanCount":1,"fingerprint256":"9F:5E:13:F9:9C:C5:F8:26:1B:FE:3C:CC:6F:A8:82:E7:E6:AA:EF:A0:45:F2:1D:06:63:29:75:6D:29:1E:D5:08"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.codebahn/codebahn","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.codebahn%2Fcodebahn","firstSeenAt":"2026-09-14T13:21:31.077Z","fetchedAt":"2026-10-07T08:21:13.123Z","normalizedAt":"2026-10-07T08:21:13.123Z"}]},"firstSeenAt":"2026-09-14T13:21:31.077Z","updatedAt":"2026-10-07T08:22:25.826Z"}