{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_3pwcux9zajhb","handle":"convention-sh","url":"https://wellknown.network/agents/convention-sh","links":{"self":"https://wellknown.network/agents/convention-sh/record.json","html":"https://wellknown.network/agents/convention-sh","markdown":"https://wellknown.network/agents/convention-sh/record.md","api":"https://wellknown.network/api/v1/agents/convention-sh","status":"https://wellknown.network/api/v1/agents/convention-sh/status","claim":"https://wellknown.network/agents/convention-sh/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/convention-sh/claim.json","badge":"https://wellknown.network/agents/convention-sh/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/convention-sh/history","tools":"https://wellknown.network/api/v1/agents/convention-sh/tools"},"ard":{"identifier":"urn:air:mcp.convention.sh:server:convention-sh","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"convention.sh","summary":"Ship production-ready TypeScript code in half the time, at half the cost.","description":"Ship production-ready TypeScript code in half the time, at half the cost.","publisher":{"name":"sh.convention","url":null},"homepage":"https://convention.sh","repository":null,"version":"1.0.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://mcp.convention.sh/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-05-02T01:23:53.171125Z","publishedAt":"2026-05-02T01:23:53.171125Z","registryName":"sh.convention/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":"dev.docs-lookup","name":"Documentation Lookup","confidence":0.54,"provenance":"derived"}],"categories":["dev"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 9m ago.","lastOkAt":"2026-10-10T20:27:20.499Z","lastProbedAt":"2026-10-10T20:27:20.499Z","statusComputedAt":"2026-10-10T20:29:19.548Z","reliability30d":{"probes":111,"successRate":1,"p50Ms":138,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":108,"ok":108,"authBoundaryOk":0,"serviceOk":108,"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-10T20:27:20.499Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":168,"error":null,"detail":{"tools":[{"name":"read_convention","description":"Read one convention from the convention.sh style guide by its `id`, to inform a code or file edit you are about to make. Convention bodies are reference materia"}],"toolCount":1,"toolsHash":"1def795279383ac1da3e0930a8c601d87d9ccadfaa3de7e55f027935996674e4","serverName":"convention.sh","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T13:24:44.397Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":153,"error":null,"detail":{"tools":[{"name":"read_convention","description":"Read one convention from the convention.sh style guide by its `id`, to inform a code or file edit you are about to make. Convention bodies are reference materia"}],"toolCount":1,"toolsHash":"1def795279383ac1da3e0930a8c601d87d9ccadfaa3de7e55f027935996674e4","serverName":"convention.sh","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T06:27:00.164Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":120,"error":null,"detail":{"tools":[{"name":"read_convention","description":"Read one convention from the convention.sh style guide by its `id`, to inform a code or file edit you are about to make. Convention bodies are reference materia"}],"toolCount":1,"toolsHash":"1def795279383ac1da3e0930a8c601d87d9ccadfaa3de7e55f027935996674e4","serverName":"convention.sh","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T23:30:25.922Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":165,"error":null,"detail":{"tools":[{"name":"read_convention","description":"Read one convention from the convention.sh style guide by its `id`, to inform a code or file edit you are about to make. Convention bodies are reference materia"}],"toolCount":1,"toolsHash":"1def795279383ac1da3e0930a8c601d87d9ccadfaa3de7e55f027935996674e4","serverName":"convention.sh","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T17:26:56.182Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":115,"error":null,"detail":{"tools":[{"name":"read_convention","description":"Read one convention from the convention.sh style guide by its `id`, to inform a code or file edit you are about to make. Convention bodies are reference materia"}],"toolCount":1,"toolsHash":"1def795279383ac1da3e0930a8c601d87d9ccadfaa3de7e55f027935996674e4","serverName":"convention.sh","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T10:23:24.614Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":133,"error":null,"detail":{"tools":[{"name":"read_convention","description":"Read one convention from the convention.sh style guide by its `id`, to inform a code or file edit you are about to make. Convention bodies are reference materia"}],"toolCount":1,"toolsHash":"1def795279383ac1da3e0930a8c601d87d9ccadfaa3de7e55f027935996674e4","serverName":"convention.sh","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T04:29:06.132Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":128,"error":null,"detail":{"tools":[{"name":"read_convention","description":"Read one convention from the convention.sh style guide by its `id`, to inform a code or file edit you are about to make. Convention bodies are reference materia"}],"toolCount":1,"toolsHash":"1def795279383ac1da3e0930a8c601d87d9ccadfaa3de7e55f027935996674e4","serverName":"convention.sh","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T22:24:15.894Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":117,"error":null,"detail":{"tools":[{"name":"read_convention","description":"Read one convention from the convention.sh style guide by its `id`, to inform a code or file edit you are about to make. Convention bodies are reference materia"}],"toolCount":1,"toolsHash":"1def795279383ac1da3e0930a8c601d87d9ccadfaa3de7e55f027935996674e4","serverName":"convention.sh","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T16:28:32.146Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":179,"error":null,"detail":{"tools":[{"name":"read_convention","description":"Read one convention from the convention.sh style guide by its `id`, to inform a code or file edit you are about to make. Convention bodies are reference materia"}],"toolCount":1,"toolsHash":"1def795279383ac1da3e0930a8c601d87d9ccadfaa3de7e55f027935996674e4","serverName":"convention.sh","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T10:25:13.281Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":200,"error":null,"detail":{"tools":[{"name":"read_convention","description":"Read one convention from the convention.sh style guide by its `id`, to inform a code or file edit you are about to make. Convention bodies are reference materia"}],"toolCount":1,"toolsHash":"1def795279383ac1da3e0930a8c601d87d9ccadfaa3de7e55f027935996674e4","serverName":"convention.sh","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"read_convention","description":"Read one convention from the convention.sh style guide by its `id`, to inform a code or file edit you are about to make. Convention bodies are reference materia"}],"package":null,"toolSurface":{"id":"ts_5deqkz7srms9","endpointId":"ep_vv5suscab2hs","hash":"1def795279383ac1da3e0930a8c601d87d9ccadfaa3de7e55f027935996674e4","toolCount":1,"serverName":"convention.sh","serverVersion":"1.0.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-09-12T11:27:40.782Z","lastSeenAt":"2026-10-10T20:27:20.503Z","observations":103,"toolNames":["read_convention"],"distinctSurfaces":1},"endpointFacts":[{"id":"ep_vv5suscab2hs","url":"https://mcp.convention.sh/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-09T17:26:56.189Z","auth":{"observedAt":"2026-10-09T17:26:56.304Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-09T17:26:56.334Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"convention.sh","issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validFrom":"2026-08-26T20:20:41.000Z","validTo":"2026-11-24T20:20:40.000Z","daysToExpiry":44,"sanCount":2,"fingerprint256":"6A:BE:65:59:DF:45:92:71:0B:1A:C9:F8:43:7E:12:0F:3B:1C:7F:63:AD:C5:62:CF:DF:8D:6E:10:0A:0F:10:7C"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"sh.convention/mcp","url":"https://registry.modelcontextprotocol.io/v0/servers/sh.convention%2Fmcp","firstSeenAt":"2026-09-07T08:21:38.867Z","fetchedAt":"2026-10-08T19:20:00.534Z","normalizedAt":"2026-10-08T19:20:00.534Z"}]},"firstSeenAt":"2026-09-07T08:21:38.867Z","updatedAt":"2026-10-10T20:30:06.404Z"}