Integrations

Drop-in for the tools you already run.

OpsKeeper integrates with the AgentTeams Dashboard, the Grafana stack, and the standard data plane. New workers join via the stdio MCP proxy — no SDK lock-in.

AgentTeams Dashboard

The agentteams-plugin-installer turns the AgentTeams Dashboard into the OpsKeeper plugin console. Adds five extension points and an HTTP API on top of the file-system PluginRegistry.

  • Extension points: sidebar-menu, route, dashboard-widget, detail-panel, toolbar
  • HTTP API: /v1/plugins list/get/install/uninstall/enable/disable/sync/push
  • Hard limits: 10 MB zip, 50 MB extract, 1000 files, zip-slip protection

OpsKeeper TeamHarness

A worker-side plugin that lets the six operational workers call OpsKeeper through a stdio MCP proxy. 17 MCP tools, Bearer + HMAC + W3C traceparent auth.

  • stdio MCP server, Streamable HTTP-compatible
  • FastAPI router at /api/opskeeper-teamharness/{health,sync,install-plugin}
  • Hot-deploy with qwenpaw plugin install

Observability

First-class integration with the Grafana stack — Prometheus scrape, Loki log streams, Tempo traces, and provisioned Grafana dashboards for the closed loop.

  • Metric scrape config ships with the repo
  • Log/metric/trace correlation by trace_id
  • Provisioned dashboards: closed-loop, audit ledger, skill health

Data plane

PostgreSQL for incident memory and append-only ledger, Qdrant for vector retrieval, Nacos for skill registry.

  • PostgreSQL: ledger + state machine serialization via MySQL GET_LOCK
  • Qdrant: keyword recall + RRF ranking, retained candidate-decision evidence
  • Nacos Config: HTTP 2.x API + local fallback + 30s hot reload

Tooling

W3C traceparent propagation end-to-end across worker → MCP proxy → control plane → web console. OpenTelemetry-compatible.

  • OpenTelemetry SDK with W3C traceparent
  • Propagates across stdio MCP boundaries
  • Drop-in OTLP adapter for AgentLoop / LoongSuite (roadmap)

Security

Append-only event log, SHA256-chained proposal audit, Bearer + HMAC on plugin endpoints, role-based auth on every API.

  • loop_event_log append-only (DB trigger enforced)
  • chat_proposal_audit SHA256 hash chain + in-repo verifier
  • Bearer + HMAC on plugin endpoints
stdio MCP

Any worker. One protocol.

The OpsKeeper Worker plugin speaks JSON-RPC over stdio. Discover 17 tools, propagate W3C traceparent, and authenticate with Bearer + HMAC. Streamable HTTP is on the roadmap.

tools/list
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/list",
  "params": {}
}
// → 17 tools exposed by opskeeper-teamharness:
//   loop.investigate
//   loop.correlate
//   recovery.verify
//   recovery.execute
//   metric.query
//   incident.list / incident.get
//   postgres.analyze_status
//   host.get_load / host.get_processes / host.restart_service
//   knowledge.query / knowledge.write
//   hitl.decide
//   state.put / state.get
//   incident.record
Install

Two commands and you have a worker.

Install the Dashboard plugin, or run the MCP proxy directly for any worker. Hot-deploy with qwenpaw plugin install.

install · plugin + mcp
# Build + install the AgentTeams Dashboard plugin
make build-plugins                     # zip lands in dist/plugins/

# Or run the stdio MCP proxy directly for any worker
cd plugins/opskeeper-teamharness
OPSKEEPER_BACKEND_URL=http://localhost:8080 \
OPSKEEPER_GATEWAY_KEY="$GATEWAY_KEY" \
python3 mcp/server.py