{
 "id": "io.github.toolweather/upstream",
 "name": "Upstream",
 "description": "Is this AI/dev API down? Is this model deprecated, what replaces it? Live status for ~40 APIs.",
 "connect": {
  "transport": "streamable-http",
  "url": "https://upstream.toolweather.workers.dev/mcp"
 },
 "website": "https://upstream-api.pages.dev",
 "version": "0.2.0",
 "source": "official MCP registry (registry.modelcontextprotocol.io)",
 "reliability": {
  "verdict": "reliable",
  "attempts": 12,
  "successes": 12,
  "successRate": 1,
  "consecutiveSuccesses": 12,
  "lastStatus": "ok",
  "lastCheckedAt": "2026-10-19T15:40:48.285Z",
  "lastLatencyMs": 9537,
  "toolsAdvertised": 5,
  "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": "partly_working",
   "tool": "get_digest",
   "attempts": 11,
   "successes": 7,
   "successRate": 0.636,
   "consecutiveSuccesses": 1,
   "lastStatus": "ok",
   "lastMs": 3060,
   "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=io.github.toolweather%2Fupstream",
 "page": "https://faceabot.com/tools/io.github.toolweather/upstream",
 "badge": {
  "image": "https://faceabot.com/badge/io.github.toolweather/upstream.svg",
  "markdown": "[![Measured by Faceabot](https://faceabot.com/badge/io.github.toolweather/upstream.svg)](https://faceabot.com/tools/io.github.toolweather/upstream)",
  "note": "Live reliability badge the publisher of this server can show on its README or website."
 },
 "recentChecks": [
  {
   "at": "2026-10-19T15:40:48.285Z",
   "ok": 1,
   "status": "ok",
   "ms": 9537,
   "f_status": "ok"
  },
  {
   "at": "2026-10-19T00:40:42.486Z",
   "ok": 1,
   "status": "ok",
   "ms": 5843,
   "f_status": "bad_response"
  },
  {
   "at": "2026-10-18T09:25:42.876Z",
   "ok": 1,
   "status": "ok",
   "ms": 7125,
   "f_status": "ok"
  },
  {
   "at": "2026-10-18T01:35:41.571Z",
   "ok": 1,
   "status": "ok",
   "ms": 4260,
   "f_status": "ok"
  },
  {
   "at": "2026-10-17T17:25:42.000Z",
   "ok": 1,
   "status": "ok",
   "ms": 5120,
   "f_status": "ok"
  },
  {
   "at": "2026-10-17T09:20:45.324Z",
   "ok": 1,
   "status": "ok",
   "ms": 5735,
   "f_status": "bad_response"
  },
  {
   "at": "2026-10-17T01:25:50.239Z",
   "ok": 1,
   "status": "ok",
   "ms": 7186,
   "f_status": "bad_response"
  },
  {
   "at": "2026-10-16T18:15:53.565Z",
   "ok": 1,
   "status": "ok",
   "ms": 5837,
   "f_status": "bad_response"
  },
  {
   "at": "2026-10-16T11:10:56.875Z",
   "ok": 1,
   "status": "ok",
   "ms": 6056,
   "f_status": "ok"
  },
  {
   "at": "2026-10-16T04:15:55.790Z",
   "ok": 1,
   "status": "ok",
   "ms": 4603,
   "f_status": "ok"
  },
  {
   "at": "2026-10-15T21:20:51.704Z",
   "ok": 1,
   "status": "ok",
   "ms": 5301,
   "f_status": "ok"
  },
  {
   "at": "2026-10-15T14:31:14.516Z",
   "ok": 1,
   "status": "ok",
   "ms": 4534,
   "f_status": "no_safe_tool"
  }
 ],
 "trust": {
  "access": "no sign-in needed",
  "tools": 5,
  "declaredReadOnly": 5,
  "declaredCanWrite": 0,
  "declaredDestructive": 0,
  "toolDefinitionsFingerprint": "1b5b5137fc89ffa6c564021db4229664",
  "toolDefinitionsLastChangedAt": null,
  "toolDefinitionChangesSinceFirstSeen": 0,
  "firstSeenAt": "2026-10-18T01:35:41.738Z",
  "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."
 }
}