Skip to content

mesh.doctor

Every prerequisite proved on this machine alone — the declaration parses, the identity loads and, under an allowlist, is on it, the repository has a mesh identity, a UDP socket binds, the multicast group joins, broadcast enables, and the discovery and link protocols sign and verify end to end in memory — and then the server's own verdict: in a shared server, whether an enabled declaration actually activated the mesh and, when it did not, the server's reason, which fails the report. Each failed check names its impact and its remedy. Deterministic, no second node required.

Every prerequisite proved on this machine alone — the declaration parses, the identity loads and, under an allowlist, is on it, the repository has a mesh identity, a UDP socket binds, the multicast group joins, broadcast enables, and the discovery and link protocols sign and verify end to end in memory — and then the server's own verdict: in a shared server, whether an enabled declaration actually activated the mesh and, when it did not, the server's reason, which fails the report. Each failed check names its impact and its remedy. Deterministic, no second node required.

Exposure

Where this one definition is reachable. Absence is explicit: a surface not listed does not carry it.

surfaceas
MCPtool majordomus_mesh_doctor
HTTPGET /api/v1/mesh/doctor operationId mesh.doctor
command linemajordomus mesh doctor

Schemas

The canonical input and output, from the Rust types; the MCP tool schema and the OpenAPI parameters and responses are derived from these.

input · Empty

No input.

No properties: the capability takes no input.

JSON Schema
{
  "additionalProperties": false,
  "description": "No input.",
  "title": "Empty",
  "type": "object"
}

output · MeshDoctorReport

The whole self-check.
propertytyperequireddescription
checks array yes The checks, in the order they ran.
ok boolean yes Whether every check holds.
JSON Schema
{
  "$defs": {
    "DoctorCheck": {
      "description": "One check's verdict.",
      "properties": {
        "check": {
          "description": "What was checked.",
          "type": "string"
        },
        "detail": {
          "description": "The evidence: a path, an address, an error.",
          "type": "string"
        },
        "impact": {
          "description": "What a failure or a limitation means for the mesh.",
          "type": [
            "string",
            "null"
          ]
        },
        "ok": {
          "description": "Whether it holds.",
          "type": "boolean"
        },
        "remediation": {
          "description": "What to do about it.",
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "check",
        "ok",
        "detail"
      ],
      "type": "object"
    }
  },
  "description": "The whole self-check.",
  "properties": {
    "checks": {
      "description": "The checks, in the order they ran.",
      "items": {
        "$ref": "#/$defs/DoctorCheck"
      },
      "type": "array"
    },
    "ok": {
      "description": "Whether every check holds.",
      "type": "boolean"
    }
  },
  "required": [
    "ok",
    "checks"
  ],
  "title": "MeshDoctorReport",
  "type": "object"
}

Policies

benchmark
required — a target on every transport the exposure declares; the cases are the input type's
cache
disabled — every call runs the handler

Benchmark targets

Derived from the registry for this repository: one requirement per transport, and the cases the input type provides. The whole matrix is on the benchmarks page.

transportstatecasestargets
directcovered1default
mcpcovered1default
httpcovered1default

Searches the titles and descriptions of every page this site publishes.