Skip to content
ConduitConduit

Vendor health

Conduit continuously monitors the vendor MCP server containers behind each integration and exposes their health to the organizations that use them. Vendor Health lets a customer see, at a glance, whether the vendors their AI agents depend on are up.

For the credential side of vendor connections, see Vendor Connections.


For each vendor an organization has connected, Vendor Health reports a current status, the last time it was checked, the observed latency, and — when something is wrong — an error detail. It answers one question quickly: “is the tool my agent is about to call actually reachable right now?”

The view is org-scoped — an organization sees only the vendors it has connected, never the global vendor list and never another tenant’s vendors.

Status Tenant-facing label Meaning What it means for tool calls
healthy Connected The vendor container is responding and latency is within the normal threshold. Tool calls should succeed normally.
reachable Responding The container answered, but the monitor’s unauthenticated probe was auth-gated (HTTP 401/403) — the vendor is alive and serving, it just rejected the credless health check. Tool calls should succeed normally; only the probe itself couldn’t fully verify.
degraded Degraded The container is responding, but latency is over the threshold, or it has had 1–2 consecutive probe failures (below the hard down threshold). Tool calls may still work but could be slow or intermittently fail. Treat as a warning.
down Not responding The container has failed 3 or more consecutive health probes. Tool calls to this vendor are expected to fail until it recovers.
unknown Checking… The vendor has not been probed yet, or no state is available (e.g. shortly after a gateway restart) — and, permanently, for vendors that run at your URL rather than a shared one. No health signal yet — not an error, just no data.

Why some vendors stay on “Checking…” forever

Section titled “Why some vendors stay on “Checking…” forever”

A few catalog vendors run one instance per customer at a URL you supply — 3CX, Hudu, and NetSuite today. The health monitor is a single global sweep with no tenant credentials, so it has no URL to probe for these and deliberately skips them. They sit on unknown / “Checking…” for the life of the connection.

That is not an outage and not a stalled check. Such a vendor is never counted among the “not responding” integrations on the status page, and a connected one works normally regardless of what its card shows. To verify one of these is genuinely healthy, call one of its tools — that is the only check that exercises your instance.

degraded is the amber middle ground: it exists so a slow-but-up vendor is visibly distinct from both fully-healthy and fully-down. reachable exists so a vendor whose auth-gated container correctly rejects an unauthenticated probe isn’t mislabeled as down.

A background monitor polls each vendor container on a fixed interval (default 60 seconds) and caches the result. The health view reads that cache — it does not live-probe vendors when you open the page. This keeps the view fast and avoids a burst of probes every time someone looks.

Because the data is cached, each vendor entry includes a lastChecked timestamp. If lastChecked is more than a couple of minutes old, the monitor itself may be behind — the timestamp is how you tell a fresh healthy from a stale one.

  • Dashboard — the vendor health view is part of the connections surface in the Conduit dashboard.
  • API — GET /api/orgs/:orgId/vendor-health (Auth0 session, member+). Returns the org’s connected vendors with the per-vendor object below. See the API reference.

Each vendor entry has this shape:

{
"vendorSlug": "datto-rmm",
"displayName": "Datto RMM",
"status": "healthy",
"lastChecked": "2026-05-17T13:00:00.000Z",
"latencyMs": 142,
"version": "1.4.0",
"errorDetail": null
}

errorDetail is populated only when status is degraded or down.

  • History / uptime trends. Vendor Health is current-state only — there is no per-vendor uptime percentage, sparkline, or incident history. It answers “is this vendor up now”, not “what was its uptime last week”.
  • Conduit’s own health. Vendor Health is about the vendor containers Conduit proxies to, not Conduit itself. Conduit’s own liveness is the unauthenticated GET /health endpoint.
  • A vendor’s upstream API. A healthy status means the vendor’s MCP container is responding to Conduit. If the vendor’s own upstream API is having problems, that surfaces as tool-call errors, not as a down health state. See Vendor Connections § Troubleshooting.

Alongside the tenant-scoped view above, GET /health is an unauthenticated liveness check for the Conduit gateway, used by uptime monitors. It reports only that the process is up — it says nothing about individual vendors.