{
 "id": "dev.stepcode/stepcode",
 "name": "stepcode",
 "description": "Read-only MCP access to stepcode.dev's how-to corpus: analysis pages by tool.",
 "connect": {
  "transport": "streamable-http",
  "url": "https://stepcode.dev/api/mcp"
 },
 "website": "https://stepcode.dev",
 "version": "1.0.0",
 "source": "official MCP registry (registry.modelcontextprotocol.io)",
 "reliability": {
  "verdict": "reliable",
  "attempts": 42,
  "successes": 42,
  "successRate": 1,
  "consecutiveSuccesses": 42,
  "lastStatus": "ok",
  "lastCheckedAt": "2026-10-19T19:20:42.431Z",
  "lastLatencyMs": 6050,
  "toolsAdvertised": 4,
  "method": "MCP initialize + tools/list from Faceabot, identified as FaceabotProbe/1.0 plus, when the server declares a read-only tool (readOnlyHint), one call of that tool with a neutral sample input to check it really returns a result. Servers on the 2026-07-28 MCP revision (no initialize handshake) get the same checks in that revision",
  "work": {
   "verdict": "proven_working",
   "tool": "list_analysis_families",
   "attempts": 42,
   "successes": 42,
   "successRate": 1,
   "consecutiveSuccesses": 42,
   "lastStatus": "ok",
   "lastMs": 2202,
   "sampleInput": "{}",
   "method": "Faceabot calls one read-only tool (annotations.readOnlyHint) with a neutral sample input and checks that it returns a non-empty result without error."
  }
 },
 "details": "https://faceabot.com/api/catalog?id=dev.stepcode%2Fstepcode",
 "page": "https://faceabot.com/tools/dev.stepcode/stepcode",
 "badge": {
  "image": "https://faceabot.com/badge/dev.stepcode/stepcode.svg",
  "markdown": "[![Measured by Faceabot](https://faceabot.com/badge/dev.stepcode/stepcode.svg)](https://faceabot.com/tools/dev.stepcode/stepcode)",
  "note": "Live reliability badge the publisher of this server can show on its README or website."
 },
 "recentChecks": [
  {
   "at": "2026-10-19T19:20:42.431Z",
   "ok": 1,
   "status": "ok",
   "ms": 6050,
   "f_status": "ok"
  },
  {
   "at": "2026-10-19T05:50:43.086Z",
   "ok": 1,
   "status": "ok",
   "ms": 6933,
   "f_status": "ok"
  },
  {
   "at": "2026-10-18T13:35:42.991Z",
   "ok": 1,
   "status": "ok",
   "ms": 6383,
   "f_status": "ok"
  },
  {
   "at": "2026-10-18T03:40:44.683Z",
   "ok": 1,
   "status": "ok",
   "ms": 7592,
   "f_status": "ok"
  },
  {
   "at": "2026-10-17T19:40:43.110Z",
   "ok": 1,
   "status": "ok",
   "ms": 6172,
   "f_status": "ok"
  },
  {
   "at": "2026-10-17T11:20:41.872Z",
   "ok": 1,
   "status": "ok",
   "ms": 5561,
   "f_status": "ok"
  },
  {
   "at": "2026-10-17T03:35:53.010Z",
   "ok": 1,
   "status": "ok",
   "ms": 7982,
   "f_status": "ok"
  },
  {
   "at": "2026-10-16T19:55:49.103Z",
   "ok": 1,
   "status": "ok",
   "ms": 8397,
   "f_status": "ok"
  },
  {
   "at": "2026-10-16T12:51:00.719Z",
   "ok": 1,
   "status": "ok",
   "ms": 6416,
   "f_status": "ok"
  },
  {
   "at": "2026-10-16T05:50:53.356Z",
   "ok": 1,
   "status": "ok",
   "ms": 6428,
   "f_status": "ok"
  },
  {
   "at": "2026-10-15T22:55:49.706Z",
   "ok": 1,
   "status": "ok",
   "ms": 7428,
   "f_status": "ok"
  },
  {
   "at": "2026-10-15T16:02:43.648Z",
   "ok": 1,
   "status": "ok",
   "ms": 8602,
   "f_status": "ok"
  },
  {
   "at": "2026-10-15T09:21:01.599Z",
   "ok": 1,
   "status": "ok",
   "ms": 4613,
   "f_status": "ok"
  },
  {
   "at": "2026-10-15T02:50:30.298Z",
   "ok": 1,
   "status": "ok",
   "ms": 3747,
   "f_status": "ok"
  },
  {
   "at": "2026-10-14T20:25:19.316Z",
   "ok": 1,
   "status": "ok",
   "ms": 6820,
   "f_status": "ok"
  },
  {
   "at": "2026-10-14T13:55:35.831Z",
   "ok": 1,
   "status": "ok",
   "ms": 5700,
   "f_status": "ok"
  },
  {
   "at": "2026-10-14T07:30:36.342Z",
   "ok": 1,
   "status": "ok",
   "ms": 4163,
   "f_status": "ok"
  },
  {
   "at": "2026-10-14T00:41:17.652Z",
   "ok": 1,
   "status": "ok",
   "ms": 9004,
   "f_status": "ok"
  },
  {
   "at": "2026-10-13T18:35:52.385Z",
   "ok": 1,
   "status": "ok",
   "ms": 7722,
   "f_status": "ok"
  },
  {
   "at": "2026-10-13T12:25:57.398Z",
   "ok": 1,
   "status": "ok",
   "ms": 10348,
   "f_status": "ok"
  }
 ],
 "trust": {
  "access": "no sign-in needed",
  "tools": 4,
  "declaredReadOnly": 4,
  "declaredCanWrite": 0,
  "declaredDestructive": 0,
  "toolDefinitionsFingerprint": "27e59f848b20ef3c0f63c97ff7c446fe",
  "toolDefinitionsLastChangedAt": null,
  "toolDefinitionChangesSinceFirstSeen": 0,
  "firstSeenAt": "2026-10-17T19:40:43.293Z",
  "protocol": "2025-06-18",
  "warnings": [],
  "note": "Facts observed by Faceabot when it last read this server's tool list. 'Can write' counts tools not declared read-only (annotations are self-declared). A changed fingerprint means tool names, descriptions or schemas changed since Faceabot first saw them: re-check before trusting an earlier approval."
 }
}