get_live_servers
Read the project's live servers — the streaming server telemetry behind the Dashboard's Live Servers section. Returns one entry per reporting source, each with its identity meta, the latest sample, a recent sample window, and connected UI sessions.
warning
This is in-memory and per web instance, so it is empty unless a telemetry agent is currently streaming. Reading it also signals "someone is watching," which is what makes installed agents begin streaming — so a first call is often empty and a second call moments later has data. For durable, run-scoped history use list_server_metrics.
Request
GET /api/v1/ops/projects/{project}/telemetry/live
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
project | path | string | yes | The project's public id. |
- cURL
- CLI
- MCP
curl -H "Authorization: Bearer $TESTVIBE_API_KEY" \
"$TESTVIBE_SERVER/api/v1/ops/projects/$PROJECT/telemetry/live"
testvibe telemetry live
Tool get_live_servers — optional project.
Response
[
{
"source": "testvibe-web-prod",
"lastSeenUtc": "2026-07-06T15:04:11Z",
"meta": { "environment": "Production", "os": "Ubuntu 22.04", "runtime": ".NET 10.0" },
"latest": { "ts": "2026-07-06T15:04:11Z", "cpu": 18.4, "memMB": 742.0, "sessions": 12, "memPerSessionMB": 61.8, "custom": { "GC heap (MB)": 55.0, "Threads": 34 } },
"sampleCount": 180,
"samples": [ { "ts": "…", "cpu": 17.1, "memMB": 738.0, "sessions": 12 } ],
"sessionCount": 12,
"sessions": [ { "id": "…", "clientId": "…", "browser": "Chrome 126", "os": "Windows", "width": 1920, "height": 1080, "startedUtc": "…", "forms": [ { "name": "Dashboard", "type": "MainForm" } ] } ]
}
]
samples is the recent window (most recent ~60); sampleCount is how many the ring currently holds.
Errors
| HTTP | When |
|---|---|
404 not_found | No such project in this workspace. |