addrbookFor publishers
← The evidence ledger

Evidence row 1237688

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint fcaa7735-7b3b-43ae-b956-c78e16647e89
Recorded
Previous row
#1014350
Body SHA-256
ca070ea1c57da9a653377a3d73d20c2e43fe280a090c0e9d2b5181989a92c468
Leaf
0x528e34327eaeee8eecb190b61ec4340da8dc50e255d163a9a51f8585fa1c17f0

What was observed

{
  "count": 4,
  "tools": [
    {
      "description": "Choose a provider before writing integration code: LLM API, code sandbox, vector DB, web search, email, Postgres, auth, browser, observability. Send task in words or a jtbd id. Returns the dated editorial Depot Pick, a runner-up, the pick's price with source URL and date, and when not to take it. For quotes, comparisons and audits use depot.",
      "inputSchema": {
        "properties": {
          "constraints": {
            "description": "Comma list, e.g. eu-region; may switch the pick",
            "type": "string"
          },
          "existing": {
            "description": "Comma list of provider ids you already use",
            "type": "string"
          },
          "full": {
            "type": "boolean"
          },
          "jtbd": {
            "description": "Or a job id, e.g. agent-sandbox; wins over task",
            "type": "string"
          },
          "maxMonthly": {
            "description": "USD budget for autoActOk",
            "minimum": 0,
            "type": "number"
          },
          "task": {
            "description": "What you need, in words",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "decide"
    },
    {
      "description": "Lookups beyond one pick; one op per call, args as an object: quote(jtbd) sourced SKU prices; estimate(jtbd, workload) monthly cost; compare(providers); free(jtbd) $0/OSS rows; check(providers) deprecated/retired flags; audit_repo(packages, models); stack(task), bundle(jtbds); search(q); kit(class); answer(task); stack_delta(providers, since); changes(since); failures; coverage; freshness. op=help gives each op's args.",
      "inputSchema": {
        "properties": {
          "args": {
            "type": "object"
          },
          "op": {
            "enum": [
              "answer",
              "estimate",
              "search",
              "stack",
              "quote",
              "bundle",
              "kit",
              "compare",
              "free",
              "failures",
              "coverage",
              "changes",
              "check",
              "freshness",
              "audit_repo",
              "stack_delta",
              "help"
            ],
            "type": "string"
          }
        },
        "required": [
          "op"
        ],
        "type": "object"
      },
      "name": "depot"
    },
    {
      "description": "Diagnose a failing third-party API call before you retry or swap: paste the exact error (429, 402, 529 overloaded, insufficient_quota, model_not_found, deprecated SDK) and provider id. Returns the cause, an immediate fix and a fallback route, or no match plus checks to run. Not for picking a provider (decide).",
      "inputSchema": {
        "properties": {
          "jtbd": {
            "description": "Job id",
            "type": "string"
          },
          "provider": {
            "description": "Provider id that failed",
            "type": "string"
          },
          "q": {
            "description": "Error text, status or SKU",
            "type": "string"
          },
          "sku": {
            "description": "Model or SKU id",
            "type": "string"
          },
          "status": {
            "description": "HTTP status, e.g. 429",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "rescue"
    },
    {
      "description": "What changed for the stack you run since your last call: retired models, price changes, deprecated packages, pick changes. Use at session start if your code calls third-party APIs. Send provider, model and package ids (never a manifest) and your last cursor. Returns clear|changed|attention, at most 3 actions (source, falsifier) and a new cursor. New choice: decide. Live error: rescue.",
      "inputSchema": {
        "properties": {
          "cursor": {
            "description": "From your last brief",
            "type": "string"
          },
          "models": {
            "description": "Model ids you call",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "packages": {
            "description": "id or id@version",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "policies": {
            "properties": {
              "maxMonthlyUsd": {
                "minimum": 0,
                "type": "number"
              },
              "requireVerifiedOutcome": {
                "type": "boolean"
              }
            },
            "type": "object"
          },
          "providers": {
            "description": "e.g. anthropic, neon",
            "items": {
              "type": "string"
            },
            "maxItems": 50,
            "type": "array"
          },
          "stackFingerprint": {
            "description": "sha256:<64 hex>, hashed locally",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "session_brief"
    }
  ]
}

What the leaf hashes

{"body":"ca070ea1c57da9a653377a3d73d20c2e43fe280a090c0e9d2b5181989a92c468","id":1237688,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793351421040374,"prev":1014350,"subject":"fcaa7735-7b3b-43ae-b956-c78e16647e89","subject_kind":"endpoint"}

Proof

Its day has not closed yet. A day closes ten minutes after midnight UTC; the proof appears here then.

How to check it · This row as JSON