{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_x2b524nurzer","handle":"offense","url":"https://wellknown.network/agents/offense","links":{"self":"https://wellknown.network/agents/offense/record.json","html":"https://wellknown.network/agents/offense","markdown":"https://wellknown.network/agents/offense/record.md","api":"https://wellknown.network/api/v1/agents/offense","status":"https://wellknown.network/api/v1/agents/offense/status","claim":"https://wellknown.network/agents/offense/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/offense/claim.json","badge":"https://wellknown.network/agents/offense/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/offense/history","tools":"https://wellknown.network/api/v1/agents/offense/tools"},"ard":{"identifier":"urn:air:offense.sh:server:offense","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Offense","summary":"Security tools for coding agents: dependency advisory audits and evidence for remediation.","description":"Security tools for coding agents: dependency advisory audits and evidence for remediation.","publisher":{"name":"offense-research","url":null},"homepage":"https://offense.sh","repository":"https://github.com/offense-research/offense","version":"0.7.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://offense.sh/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-10-31T00:13:39.063946Z","publishedAt":"2026-10-31T00:13:39.063946Z","registryName":"io.github.offense-research/offense"},"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":[{"slug":"dev.package-management","name":"Packages & Dependencies","confidence":1,"provenance":"derived"}],"categories":["dev"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 6h ago.","lastOkAt":"2026-11-05T16:23:26.084Z","lastProbedAt":"2026-11-05T16:23:26.084Z","statusComputedAt":"2026-11-05T16:26:48.490Z","reliability30d":{"probes":8,"successRate":1,"p50Ms":626,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":8,"ok":8,"authBoundaryOk":0,"serviceOk":8,"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-11-05T16:23:26.084Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":2166,"error":null,"detail":{"tools":[{"name":"offense.audit_dependencies","description":"Use Purple to audit sanitized npm/pnpm dependency metadata for known advisory matches and checked upgrade paths. Resume deferred targets with remediation.planni"}],"toolCount":1,"toolsHash":"bd074204528f51ab79a2888296a39804855c45acde3f95e29e49113d63f4dac2","serverName":"offense","capabilities":["tools"],"serverVersion":"0.7.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-05T07:28:34.495Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":586,"error":null,"detail":{"tools":[{"name":"offense.audit_dependencies","description":"Use Purple to audit sanitized npm/pnpm dependency metadata for known advisory matches and checked upgrade paths. Resume deferred targets with remediation.planni"}],"toolCount":1,"toolsHash":"bd074204528f51ab79a2888296a39804855c45acde3f95e29e49113d63f4dac2","serverName":"offense","capabilities":["tools"],"serverVersion":"0.7.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-04T23:23:57.968Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":530,"error":null,"detail":{"tools":[{"name":"offense.audit_dependencies","description":"Use Purple to audit sanitized npm/pnpm dependency metadata for known advisory matches and checked upgrade paths. Resume deferred targets with remediation.planni"}],"toolCount":1,"toolsHash":"bd074204528f51ab79a2888296a39804855c45acde3f95e29e49113d63f4dac2","serverName":"offense","capabilities":["tools"],"serverVersion":"0.7.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-04T15:27:06.739Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":986,"error":null,"detail":{"tools":[{"name":"offense.audit_dependencies","description":"Use Purple to audit sanitized npm/pnpm dependency metadata for known advisory matches and checked upgrade paths. Resume deferred targets with remediation.planni"}],"toolCount":1,"toolsHash":"bd074204528f51ab79a2888296a39804855c45acde3f95e29e49113d63f4dac2","serverName":"offense","capabilities":["tools"],"serverVersion":"0.7.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-04T06:26:22.629Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":462,"error":null,"detail":{"tools":[{"name":"offense.audit_dependencies","description":"Use Purple to audit sanitized npm/pnpm dependency metadata for known advisory matches and checked upgrade paths. Resume deferred targets with remediation.planni"}],"toolCount":1,"toolsHash":"bd074204528f51ab79a2888296a39804855c45acde3f95e29e49113d63f4dac2","serverName":"offense","capabilities":["tools"],"serverVersion":"0.7.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-03T22:28:49.417Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":510,"error":null,"detail":{"tools":[{"name":"offense.audit_dependencies","description":"Use Purple to audit sanitized npm/pnpm dependency metadata for known advisory matches and checked upgrade paths. Resume deferred targets with remediation.planni"}],"toolCount":1,"toolsHash":"bd074204528f51ab79a2888296a39804855c45acde3f95e29e49113d63f4dac2","serverName":"offense","capabilities":["tools"],"serverVersion":"0.7.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-03T14:28:20.390Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":667,"error":null,"detail":{"tools":[{"name":"offense.audit_dependencies","description":"Use Purple to audit sanitized npm/pnpm dependency metadata for known advisory matches and checked upgrade paths. Resume deferred targets with remediation.planni"}],"toolCount":1,"toolsHash":"bd074204528f51ab79a2888296a39804855c45acde3f95e29e49113d63f4dac2","serverName":"offense","capabilities":["tools"],"serverVersion":"0.7.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-03T06:31:34.412Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":1071,"error":null,"detail":{"tools":[{"name":"offense.audit_dependencies","description":"Use Purple to audit sanitized npm/pnpm dependency metadata for known advisory matches and checked upgrade paths. Resume deferred targets with remediation.planni"}],"toolCount":1,"toolsHash":"bd074204528f51ab79a2888296a39804855c45acde3f95e29e49113d63f4dac2","serverName":"offense","capabilities":["tools"],"serverVersion":"0.7.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"offense.audit_dependencies","description":"Use Purple to audit sanitized npm/pnpm dependency metadata for known advisory matches and checked upgrade paths. Resume deferred targets with remediation.planni"}],"package":null,"toolSurface":{"id":"ts_3qdvcb3zjcu4","endpointId":"ep_x3zrryd878fz","hash":"bd074204528f51ab79a2888296a39804855c45acde3f95e29e49113d63f4dac2","toolCount":1,"serverName":"offense","serverVersion":"0.7.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-11-03T06:31:34.424Z","lastSeenAt":"2026-11-05T16:23:26.096Z","observations":8,"toolNames":["offense.audit_dependencies"],"distinctSurfaces":1},"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.offense-research/offense","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.offense-research%2Foffense","firstSeenAt":"2026-11-03T04:17:43.521Z","fetchedAt":"2026-11-03T04:17:43.521Z","normalizedAt":"2026-11-03T04:17:43.521Z"}]},"firstSeenAt":"2026-11-03T04:17:43.521Z","updatedAt":"2026-11-05T16:28:11.596Z"}