{
  "framework": "Universal Honeypot Benchmarking Standard (UHBS) v4.2.1",
  "evaluation_type": "Full-Spectrum (Static Audit + Dynamic Sandbox)",
  "target": {
    "name": "honeymcp-mcp",
    "kind": "generic",
    "host": "127.0.0.1",
    "port": 18080,
    "source_root": "/Users/mz/UHBS/.local/labs/honeymcp",
    "profile_class": "Web-API",
    "protocols": [
      "mcp"
    ],
    "ports_map": {
      "mcp": 18080
    }
  },
  "baseline": null,
  "uhqs": {
    "target": "honeymcp-mcp",
    "S_A": 70.64,
    "S_B": 94.28,
    "S_C": 55.0,
    "C": 75.0,
    "S_E": 100.0,
    "S_F": 70.0,
    "delta_c": 0.5625,
    "uhqs": 43.04,
    "weights": {
      "protocol": 0.25,
      "behavior": 0.2,
      "telemetry": 0.2,
      "scale": 0.15,
      "static": 0.2
    },
    "profile_class": "Web-API",
    "grade": "GRADE F (Fail)",
    "phase": "profile+static+sandbox+dynamic+score",
    "version": "4.2.1",
    "containment_measured": true
  },
  "hqs": {
    "target": "honeymcp-mcp",
    "S_A": 70.64,
    "S_B": 94.28,
    "S_C": 55.0,
    "C": 75.0,
    "S_E": 100.0,
    "S_F": 70.0,
    "delta_c": 0.5625,
    "uhqs": 43.04,
    "weights": {
      "protocol": 0.25,
      "behavior": 0.2,
      "telemetry": 0.2,
      "scale": 0.15,
      "static": 0.2
    },
    "profile_class": "Web-API",
    "grade": "GRADE F (Fail)",
    "phase": "profile+static+sandbox+dynamic+score",
    "version": "4.2.1",
    "containment_measured": true
  },
  "modules": [
    {
      "module": "SANDBOX",
      "dimension": "sandbox",
      "score": 70.0,
      "status": "PASSED",
      "checks": [
        {
          "id": "sandbox.reach.mcp",
          "team": "blue",
          "passed": true,
          "detail": "127.0.0.1:18080 open",
          "score": 25.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "sandbox.airgap_attested",
          "team": "blue",
          "passed": true,
          "detail": "operator attested air-gapped sandbox (UHBS_AIRGAP_ATTESTED=1)",
          "score": 25.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "sandbox.egress_deny_tooling",
          "team": "blue",
          "passed": false,
          "detail": "host-egress-deny.sh not found",
          "score": 10.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "sandbox.gateway_log_configured",
          "team": "blue",
          "passed": false,
          "detail": "gateway log path not set",
          "score": 10.0,
          "evidence": [],
          "critical": false
        }
      ],
      "metrics": {
        "reachable_protocols": 1
      },
      "notes": [
        "Phase 3 preflight \u2014 does not replace real air-gap deployment"
      ],
      "error": null
    },
    {
      "module": "F",
      "dimension": "static",
      "score": 70.0,
      "status": "PASSED",
      "checks": [
        {
          "id": "white.static_private_keys",
          "team": "white",
          "passed": true,
          "detail": "0 static private keys",
          "score": 10.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "white.hardcoded_ssh_banners",
          "team": "white",
          "passed": true,
          "detail": "0 hardcoded SSH banners",
          "score": 5.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "white.predictable_seeds",
          "team": "white",
          "passed": true,
          "detail": "0 predictable PRNG seeds",
          "score": 5.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "white.hardcoded_macs",
          "team": "white",
          "passed": true,
          "detail": "0 hardcoded MAC addresses",
          "score": 5.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "white.prompt_corpus_present",
          "team": "white",
          "passed": true,
          "detail": "6 prompt/persona files scanned",
          "score": 5.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "white.prompt_boundaries",
          "team": "white",
          "passed": true,
          "detail": "no weak delimiter/extract patterns",
          "score": 10.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "white.fallback_strings",
          "team": "white",
          "passed": true,
          "detail": "no plain-text LLM fallback artifacts",
          "score": 10.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "white.sast_tools",
          "team": "white",
          "passed": true,
          "detail": "SAST tools skipped by flag",
          "score": 15.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "white.vfs_posix_coverage",
          "team": "white",
          "passed": false,
          "detail": "POSIX coverage 0% (0/104)",
          "score": 0.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "white.blocking_calls",
          "team": "white",
          "passed": true,
          "detail": "sleep/blocking markers in non-test code\u22480",
          "score": 5.0,
          "evidence": [],
          "critical": false
        }
      ],
      "metrics": {
        "source_root": "/Users/mz/UHBS/.local/labs/honeymcp"
      },
      "notes": [
        "Module F white-box audit (keys/prompts/SAST/VFS)"
      ],
      "error": null
    },
    {
      "module": "A",
      "dimension": "protocol",
      "score": 70.64,
      "status": "PASSED",
      "checks": [
        {
          "id": "mcp.fsm.invalid_jsonrpc",
          "team": "blue",
          "passed": true,
          "detail": "JSON-RPC error code=-32700",
          "score": 100.0,
          "evidence": [
            "{\"error\":{\"code\":-32700,\"message\":\"parse error: key must be a string at line 1 column 2\"},\"id\":null,\"jsonrpc\":\"2.0\"}"
          ],
          "critical": false
        },
        {
          "id": "mcp.fsm.unknown_method",
          "team": "blue",
          "passed": true,
          "detail": "code=-32601",
          "score": 100.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "mcp.fsm.out_of_order",
          "team": "red",
          "passed": true,
          "detail": "rejected tools/call before initialize",
          "score": 100.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "mcp.fsm.uninitialized_call",
          "team": "red",
          "passed": false,
          "detail": "allowed tools/list before notifications/initialized",
          "score": 0.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "mcp.nego.initialize",
          "team": "blue",
          "passed": true,
          "detail": "protocolVersion=2024-11-05",
          "score": 100.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "mcp.nego.initialized_notification",
          "team": "blue",
          "passed": true,
          "detail": "notifications/initialized accepted (no id)",
          "score": 100.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "mcp.nego.tools_list",
          "team": "blue",
          "passed": true,
          "detail": "tools=11",
          "score": 100.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "mcp.timing.sample_size",
          "team": "blue",
          "passed": true,
          "detail": "n=20 requested=20 errors=0 (tools/list RTT)",
          "score": 100.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "mcp.timing.iat_jitter",
          "team": "red",
          "passed": true,
          "detail": "median=5.347ms pstdev=1.290ms tools/list RTT",
          "score": 100.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "mcp.module_a.composite",
          "team": "blue",
          "passed": true,
          "detail": "fsm=27 nego=100 timing=100",
          "score": 70.6366,
          "evidence": [],
          "critical": false
        }
      ],
      "metrics": {
        "per_protocol": {
          "mcp": 70.64
        },
        "protocols": [
          "mcp"
        ],
        "timing_samples": 20,
        "available_plugins": [
          "ftp",
          "generic",
          "git",
          "http",
          "mcp",
          "modbus",
          "mysql",
          "ntp",
          "rdp",
          "redis",
          "sip",
          "smb",
          "smtp",
          "snmp",
          "ssh",
          "telnet",
          "tftp",
          "vnc"
        ]
      },
      "notes": [
        "UHBS Module A \u2014 plugins=['mcp']",
        "class=Web-API strict_rfc=True"
      ],
      "error": null
    },
    {
      "module": "B",
      "dimension": "behavior",
      "score": 94.28,
      "status": "PASSED",
      "checks": [
        {
          "id": "mcp.state.session_consistent",
          "team": "blue",
          "passed": true,
          "detail": "stable tools/list shape",
          "score": 100.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "mcp.payload.tool_echo",
          "team": "red",
          "passed": true,
          "detail": "tools/call get_caller_identity ok",
          "score": 70.0,
          "evidence": [
            "get_caller_identity",
            "{\"message\": \"uhbs_echo_nonce_A\"}"
          ],
          "critical": false
        },
        {
          "id": "mcp.payload.prompt_injection",
          "team": "red",
          "passed": true,
          "detail": "no prompt/policy leak in tool result or error",
          "score": 100.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "mcp.fuzz.binary",
          "team": "red",
          "passed": true,
          "detail": "survived binary blast",
          "score": 100.0,
          "evidence": [],
          "critical": false
        }
      ],
      "metrics": {
        "per_protocol": {
          "mcp": 94.28
        },
        "class": "Web-API",
        "surface_depth": "interactive"
      },
      "notes": [
        "UHBS Module B class=Web-API",
        "surface_depth=interactive"
      ],
      "error": null
    },
    {
      "module": "C",
      "dimension": "telemetry",
      "score": 55.0,
      "status": "PARTIAL",
      "checks": [
        {
          "id": "mcp.fuzz.binary",
          "team": "red",
          "passed": true,
          "detail": "survived binary blast",
          "score": 100.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "c1.json_parse_clean",
          "team": "blue",
          "passed": true,
          "detail": "0 malformed / 0 records",
          "score": 20.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "c1.stix_2_1",
          "team": "blue",
          "passed": false,
          "detail": "no STIX objects found",
          "score": 0.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "c1.otel_or_ecs",
          "team": "blue",
          "passed": false,
          "detail": "otel_docs=0 ecs_docs=0",
          "score": 5.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "c1.payload_hashes",
          "team": "blue",
          "passed": false,
          "detail": "no md5/sha256 fields",
          "score": 0.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "c1.mitre_mapping",
          "team": "blue",
          "passed": false,
          "detail": "no MITRE tags",
          "score": 0.0,
          "evidence": [],
          "critical": false
        }
      ],
      "metrics": {},
      "notes": [
        "UHBS C1 schema: STIX 2.1 / OTel / ECS best-effort validators"
      ],
      "error": null
    },
    {
      "module": "D",
      "dimension": "containment",
      "score": 75.0,
      "status": "PARTIAL",
      "checks": [
        {
          "id": "d1.shell_exec_unavailable",
          "team": "blue",
          "passed": true,
          "detail": "no explicit SSH listener (ports.ssh / ssh_port) \u2014 remote shell egress/LPE probes skipped for this protocol",
          "score": 0.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "d1.egress_gateway_log",
          "team": "blue",
          "passed": true,
          "detail": "UHBS_EGRESS_GATEWAY_LOG unset \u2014 gateway evidence not attached (lab)",
          "score": 10.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "d1.airgap_attested",
          "team": "blue",
          "passed": true,
          "detail": "UHBS_AIRGAP_ATTESTED=1 (operator attestation; not a substitute for shell probes on SSH decoys)",
          "score": 0.0,
          "evidence": [],
          "critical": false
        }
      ],
      "metrics": {
        "breakout": false,
        "allowed_outbound_traffic": false,
        "shell_exec": false,
        "protocols": [
          "mcp"
        ]
      },
      "notes": [
        "Module D (protocol-agnostic): no SSH exec surface configured \u2014 Safety Gate cannot fully clear without shell probes or UHBS_EGRESS_GATEWAY_LOG evidence. Non-SSH decoys are graded on gateway/airgap attestation only."
      ],
      "error": null
    },
    {
      "module": "E",
      "dimension": "scale",
      "score": 100.0,
      "status": "PASSED",
      "checks": [
        {
          "id": "e1.p95_vs_tps",
          "team": "blue",
          "passed": true,
          "detail": "P50=11.2ms P95=15.7ms P99=16.6ms TPS_limit=3000.0ms proto=mcp",
          "score": 45.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "e1.error_rate",
          "team": "blue",
          "passed": true,
          "detail": "errors=0/15 rate=0.00%",
          "score": 20.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "e2.exhaustion_input",
          "team": "red",
          "passed": true,
          "detail": "completed exhaustion/fuzz blast",
          "score": 15.0,
          "evidence": [],
          "critical": false
        },
        {
          "id": "e2.circuit_breaker_alive",
          "team": "blue",
          "passed": true,
          "detail": "service alive after load (connect 0.1ms)",
          "score": 20.0,
          "evidence": [],
          "critical": false
        }
      ],
      "metrics": {
        "p50_ms": 11.22,
        "p95_ms": 15.74,
        "p99_ms": 16.61,
        "p95_limit_ms": 3000.0,
        "errors": 0,
        "concurrency": 5,
        "requests": 15,
        "wall_s": 0.11,
        "protocol": "mcp"
      },
      "notes": [],
      "error": null
    }
  ],
  "extras": {
    "target_scores": {
      "protocol": 70.64,
      "behavior": 94.28,
      "telemetry": 55.0,
      "containment": 75.0,
      "scale": 100.0,
      "static": 70.0
    },
    "uhqs_version": "4.2.1",
    "tps": {
      "name": "honeymcp-mcp-quick",
      "class": "Web-API",
      "protocols": [
        "mcp"
      ],
      "expected_p95_latency_ms": 3000.0
    },
    "surface_depth": "interactive",
    "surface_reason": "exercised allowlisted tool get_caller_identity"
  }
}