{
 "about": {
  "data_collected": "2026-11-10",
  "licence": "CC BY 4.0",
  "report": "https://spellwarden.ai/research/mcp-server-security-2026-11"
 },
 "catalog": {
  "by_kind": {
   "mcp_server": {
    "gate": 7,
    "left_out_by_operator": 3,
    "listed": 14,
    "review_concerns": 3
   },
   "plugin": {
    "listed": 1,
    "scan_error": 3
   },
   "skill": {
    "left_out_by_operator": 3,
    "listed": 37,
    "not_curated": 7,
    "review_concerns": 38,
    "scan_error": 36,
    "scan_failed": 8
   }
  },
  "dates": "2026-11-06 to 2026-11-07",
  "gate_tool_text": 1,
  "imported": 160,
  "listed": 52,
  "listed_share": 32.5,
  "outcomes": {
   "gate": 7,
   "left_out_by_operator": 6,
   "listed": 52,
   "not_curated": 7,
   "review_concerns": 41,
   "scan_error": 39,
   "scan_failed": 8
  },
  "round": "2026-11",
  "scan_error_reasons": {
   "symlink": 10,
   "too_large": 2,
   "too_many_files": 20,
   "unsafe_path": 7
  }
 },
 "handcheck": {
  "clear_serious": 1,
  "clear_serious_note": "S12 tells the model to call the tool without asking and not to mention it to the user afterwards. The other five serious labels are borderline: not mentioning a paid report unless asked (S25), not showing a link that works as a credential (S37), relaying server text word for word (S01), a scripted persona told not to mention a name (S39), and pre-filling personal details from the conversation while never showing links (S33).",
  "hidden_word": {
   "flagged_hosts": 964,
   "hosts_hidden_only": 543,
   "hosts_with_hidden": 620,
   "source": "data/descriptions-flagged.jsonl.gz: every listed tool's full description (as the probe records it, up to 1,000 characters) on the 967 hosts first flagged, re-probed on 2026-11-10; 964 still flagged"
  },
  "labels": {
   "asks_for_data": 1,
   "benign": 45,
   "concealment_or_override": 5,
   "steering": 9
  },
  "population_hosts": 965,
  "sample": 60,
  "seed": 20261110,
  "tie_break": "more serious"
 },
 "probe": {
  "answered_not_mcp": 76,
  "asm_readable": 8577,
  "asm_readable_share_of_refused": 85.106,
  "cimd": 3089,
  "cimd_share_of_oauth": 36.479,
  "dcr": 5366,
  "dcr_share_of_oauth": 63.368,
  "deprecated_features_hosts": 715,
  "discover": 1088,
  "endpoints_on_host": {
   "1": 29226,
   "10+": 69,
   "2": 895,
   "3": 94,
   "4": 36,
   "5": 19,
   "6": 27,
   "7": 17,
   "8": 13,
   "9": 6
  },
  "first_probe": "2026-11-10T06:19:40Z",
  "handshake": 14940,
  "handshake_other_status": 101,
  "hosts_probed": 30402,
  "instruction_hosts": 967,
  "instruction_hosts_high": 932,
  "instruction_hosts_medium": 35,
  "instruction_hosts_share_of_open_with_tools": 5.884,
  "instruction_tools": 1444,
  "last_probe": "2026-11-10T06:29:10Z",
  "mcp_hosts": 26548,
  "migration_ready": 6,
  "oauth": 8468,
  "oauth_share_of_refused": 84.025,
  "open": 16470,
  "open_all_read_only": 6744,
  "open_mcp001": {
   "high": 9729,
   "low": 10,
   "medium": 6731
  },
  "open_no_handshake": 1669,
  "open_no_handshake_top_domain_hosts": 912,
  "open_not_read_only": 9691,
  "open_not_read_only_share_of_open_with_tools": 58.966,
  "open_scanner_high_without_such_tool": 38,
  "open_share_of_mcp": 62.039,
  "open_tools_median": 6,
  "open_tools_total_complete": 196542,
  "open_with_tools": 16435,
  "other_status": {
   "400": 430,
   "402": 208,
   "404": 769,
   "405": 100,
   "429": 241,
   "502": 195,
   "503": 191,
   "530": 88
  },
  "other_status_5xx": 589,
  "other_status_rest": 316,
  "payment_required": 208,
  "reachable": 29277,
  "reachable_share": 96.3,
  "refused": 10078,
  "refused_401": 9929,
  "refused_403": 149,
  "refused_by_mode": {
   "oauth-cimd": 3089,
   "oauth-dcr": 5366,
   "static-key": 1292,
   "unknown": 318,
   "xaa": 13
  },
  "refused_share_of_mcp": 37.961,
  "rule_hosts": {
   "SW-MCP-001": 16546,
   "SW-MCP-002": 1292,
   "SW-MCP-003": 5366,
   "SW-MCP-004": 56,
   "SW-MCP-005": 13897,
   "SW-MCP-006": 1708,
   "SW-MCP-007": 13852,
   "SW-MCP-008": 715,
   "SW-MCP-010": 124,
   "SW-MCP-011": 967
  },
  "rules_version": "2026.11.3",
  "scanner_version": "1.10.0",
  "sessions": 1569,
  "sessions_share_of_handshake": 10.502,
  "spec_2025_11_25": 10488,
  "spec_2025_11_25_share": 71.522,
  "spec_current": 769,
  "spec_current_share": 5.244,
  "spec_known": 14664,
  "spec_versions": {
   "2024-11-05": 496,
   "2025-03-26": 506,
   "2025-06-18": 2400,
   "2025-11-05": 5,
   "2025-11-25": 10488,
   "2026-07-28": 769
  },
  "static_key": 1292,
  "tools_destructive": 15064,
  "tools_no_hint": 41165,
  "tools_no_hint_share": 20.945,
  "tools_read_only": 116663,
  "tools_read_only_share": 59.358,
  "transport_sse": 56,
  "transport_sse_in_handshake": 0,
  "unreachable": 1125,
  "unreachable_errors": {
   "fetch_failed": 1123,
   "private_address": 2
  },
  "xaa": 13
 },
 "registry": {
  "active_servers": 59944,
  "bulk_namespaces": 21,
  "bulk_servers": 11398,
  "bulk_share": 19.014,
  "distinct_hosts": 30402,
  "distinct_urls": 41643,
  "fetched_at": "2026-11-10T06:07:30Z",
  "github_namespace_servers": 33933,
  "github_namespace_share": 56.608,
  "header_api_key": 939,
  "header_authorization": 5626,
  "header_payment_signature": 379,
  "largest_namespace_servers": 2366,
  "latest_published_by_month": {
   "2025-09": 341,
   "2025-10": 222,
   "2025-11": 138,
   "2025-12": 198,
   "2026-01": 278,
   "2026-02": 780,
   "2026-03": 1421,
   "2026-04": 1537,
   "2026-05": 1976,
   "2026-06": 2350,
   "2026-07": 3558,
   "2026-08": 5633,
   "2026-09": 9832,
   "2026-10": 18216,
   "2026-11": 13464
  },
  "latest_published_recent": 31680,
  "latest_published_recent_share": 52.849,
  "named_unpinned": 15,
  "namespaces": 37147,
  "oci_digest_pinned": 17,
  "oci_images": 1729,
  "package_entries": 25455,
  "packages_by_type": {
   "cargo": 124,
   "mcpb": 2231,
   "npm": 16143,
   "nuget": 174,
   "oci": 1729,
   "pypi": 5054
  },
  "packages_needing_secret": 9916,
  "packages_stdio": 24873,
  "remote_declared_sse": 1132,
  "remote_entries": 41812,
  "remotes_with_headers": 7258,
  "remotes_with_headers_share": 17.359,
  "single_server_namespaces": 33803,
  "templated_urls": 405,
  "top10_servers": 9916,
  "top10_share": 16.542,
  "untemplated_urls": 41238,
  "with_both": 4535,
  "with_neither": 665,
  "with_package": 23328,
  "with_remote": 40486,
  "with_remote_share": 67.54
 }
}
