# ScanMalware.com URL Scanner (remote · mcp.scanmalware.com)

MCP server for ScanMalware.com URL scanning, malware detection, and analysis.

- Trust score: 66/100 (medium)
- Change this week: +10
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- remote · `mcp.scanmalware.com`: 66/100 (this document), [markdown](https://verifymcp.io/servers/com-scanmalware-mcp-scanmalware-mcp/mcp.md), [page](https://verifymcp.io/servers/com-scanmalware-mcp-scanmalware-mcp/mcp)

## Channel facts

- Endpoint: `https://mcp.scanmalware.com/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.1.6`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Endpoint Security**: 80/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 37/100
  - AI-judged instruction clarity (poor).
  - Tool/resource definitions use about 4565 tokens (~35/item across 128 items; 128 tools + 0 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 71/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 0% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add --transport http com-scanmalware-mcp-scanmalware-mcp https://mcp.scanmalware.com/mcp
```

### Codex

```toml
[mcp_servers.com-scanmalware-mcp-scanmalware-mcp]
url = "https://mcp.scanmalware.com/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-scanmalware-mcp-scanmalware-mcp": {
      "type": "remote",
      "url": "https://mcp.scanmalware.com/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-scanmalware-mcp-scanmalware-mcp --url https://mcp.scanmalware.com/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-scanmalware-mcp-scanmalware-mcp:
    url: "https://mcp.scanmalware.com/mcp"
```

### Other

```json
{
  "mcpServers": {
    "com-scanmalware-mcp-scanmalware-mcp": {
      "type": "http",
      "url": "https://mcp.scanmalware.com/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-03 (score 66, +1)

No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-08-01 (score 65, +1)

No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-07-31 (score 64, +6)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 58, +1)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-29 (score 57, +1)

No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-07-27 (score 56, +9)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-26 (score 47)

First indexed and scored.

## MCP tools (128)

### `get_recent_scans` (~32 tokens)

Get Recent Scans

Get recent public scans (paginated).

Input parameters:

- `limit` (integer)
- `page` (integer)

### `submit_scan` (~40 tokens)

Submit Scan

Submit a URL for scanning.

Input parameters:

- `options`
- `scan_type` (string)
- `url` (string, required)
- `user_agent`

### `get_scan_summary` (~25 tokens)

Get Scan Summary

Get compact scan summary by scan_id.

Input parameters:

- `scan_id` (string, required)

### `wait_for_scan` (~48 tokens)

Wait For Scan

Poll until a scan reaches a terminal status, returning the final summary.

Input parameters:

- `poll_interval_s` (number)
- `scan_id` (string, required)
- `timeout_s` (number)

### `get_scan_result` (~25 tokens)

Get Scan Result

Get full scan result by scan_id.

Input parameters:

- `scan_id` (string, required)

### `search_scans` (~50 tokens)

Search Scans

Search scans (q must be at least 3 characters).

Input parameters:

- `limit` (integer)
- `page` (integer)
- `q` (string, required)
- `search_type` (string)

### `get_ai_analysis` (~28 tokens)

Get AI Analysis

Get AI analysis for a scan_id (if available).

Input parameters:

- `scan_id` (string, required)

### `get_scan_progress` (~24 tokens)

Get Scan Progress

Get scan progress by scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_scan_ioc` (~26 tokens)

Get Scan IOC

Get IOC matches for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_tls_details` (~25 tokens)

Get TLS Details

Get TLS details for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_tls_asn1` (~31 tokens)

Get TLS ASN1

Get TLS certificate ASN.1 data for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_technologies_by_scan` (~28 tokens)

Get Technologies By Scan

Get detected technologies for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_bot_protection` (~28 tokens)

Get Bot Protection

Get bot-protection detection for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_yara_matches` (~27 tokens)

Get YARA Matches

Get YARA matches for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_jarm_signatures` (~28 tokens)

Get JARM Signatures

Get JARM signatures for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_analyzer_results` (~26 tokens)

Get Analyzer Results

Get analyzer results for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_clipboard_events` (~26 tokens)

Get Clipboard Events

Get clipboard events for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_js_fingerprints` (~48 tokens)

Get JS Fingerprints

Get JavaScript fingerprints for a scan_id.

Input parameters:

- `include_functions`
- `include_http_headers`
- `include_vectors_info`
- `scan_id` (string, required)

### `get_scan_reports` (~31 tokens)

Get Scan Reports

Get available reports for a scan_id.

Input parameters:

- `report_type`
- `scan_id` (string, required)

### `get_domain_scans` (~36 tokens)

Get Domain Scans

Get recent scans for a domain.

Input parameters:

- `domain` (string, required)
- `limit` (integer)
- `status`

Output parameters:

- `result` (array)

### `get_domain_history` (~40 tokens)

Get Domain History

Get historical scans for a domain (paginated).

Input parameters:

- `domain` (string, required)
- `limit` (integer)
- `page` (integer)

### `get_domain_stats` (~23 tokens)

Get Domain Stats

Get summary statistics for a domain.

Input parameters:

- `domain` (string, required)

### `search_by_ip` (~40 tokens)

Search By IP

Search scans by IP address (paginated).

Input parameters:

- `ip_address` (string, required)
- `limit` (integer)
- `page` (integer)

### `get_ip_stats` (~38 tokens)

Get IP Stats

Get IP statistics (paginated).

Input parameters:

- `ip_address` (string, required)
- `limit` (integer)
- `page` (integer)

### `search_by_asn` (~41 tokens)

Search By ASN

Search scans by ASN (paginated).

Input parameters:

- `asn_number` (integer, required)
- `limit` (integer)
- `page` (integer)

### `search_similar_scans` (~50 tokens)

Search Similar Scans

Search for scans similar to a scan_id (paginated).

Input parameters:

- `limit` (integer)
- `methods`
- `page` (integer)
- `scan_id` (string, required)

### `search_semantic` (~45 tokens)

Search Semantic

Semantic search over scans (paginated).

Input parameters:

- `limit` (integer)
- `page` (integer)
- `query` (string, required)
- `threshold` (number)

### `search_by_favicon` (~49 tokens)

Search By Favicon

Search scans by favicon hash (paginated).

Input parameters:

- `hash_type` (string)
- `hash_value` (string, required)
- `limit` (integer)
- `page` (integer)

### `search_ai_high_risk` (~39 tokens)

Search AI High Risk

Search AI high-risk scans.

Input parameters:

- `limit` (integer)
- `min_confidence`
- `min_risk_score`

### `search_ai_scam_type` (~33 tokens)

Search AI Scam Type

Search AI scans by scam type.

Input parameters:

- `limit` (integer)
- `scam_type` (string, required)

### `search_ai_classification` (~30 tokens)

Search AI Classification

Search AI scans by classification.

Input parameters:

- `classification` (string, required)
- `limit` (integer)

### `get_analyzer_stats` (~15 tokens)

Get Analyzer Stats

Get analyzer statistics overview.

### `search_analyzer_high_risk` (~43 tokens)

Search Analyzer High Risk

Search analyzer high-risk scans (paginated).

Input parameters:

- `limit` (integer)
- `min_risk_score`
- `page` (integer)

### `get_favicon` (~25 tokens)

Get Favicon

Get favicon metadata for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_favicon_stats` (~14 tokens)

Get Favicon Stats

Get favicon statistics.

### `get_screenshot_stats` (~14 tokens)

Get Screenshot Stats

Get screenshot statistics.

### `search_similar_screenshots` (~50 tokens)

Search Similar Screenshots

Search for similar screenshots by hash.

Input parameters:

- `hash_type` (string)
- `hash_value` (integer, required)
- `limit` (integer)
- `max_distance` (integer)

Output parameters:

- `result` (array)

### `search_ocr` (~37 tokens)

Search OCR

Search OCR text (paginated).

Input parameters:

- `limit` (integer)
- `page` (integer)
- `q` (string, required)

### `search_ocr_pattern` (~47 tokens)

Search OCR Pattern

Search OCR by pattern (paginated).

Input parameters:

- `case_sensitive` (boolean)
- `limit` (integer)
- `page` (integer)
- `pattern` (string, required)

### `search_by_jarm` (~43 tokens)

Search By JARM

Search scans by JARM signature (paginated).

Input parameters:

- `jarm_signature` (string, required)
- `limit` (integer)
- `page` (integer)

### `search_by_fuzzy_hash` (~50 tokens)

Search By Fuzzy Hash

Search scans by fuzzy hash (paginated).

Input parameters:

- `hash_type` (string, required)
- `hash_value` (string, required)
- `limit` (integer)
- `page` (integer)

### `search_by_screenshot_hash` (~56 tokens)

Search By Screenshot Hash

Search scans by screenshot hash (paginated).

Input parameters:

- `hash_type` (string, required)
- `hash_value` (string, required)
- `limit` (integer)
- `page` (integer)
- `similarity_threshold`

### `search_suspicious_clipboard` (~39 tokens)

Search Suspicious Clipboard

Search suspicious clipboard indicators (paginated).

Input parameters:

- `limit` (integer)
- `page` (integer)
- `pattern`

### `get_recent_threats` (~28 tokens)

Get Recent Threats

Get recent malware threats.

Input parameters:

- `hours`
- `limit` (integer)

### `get_recent_yara_threats` (~31 tokens)

Get Recent YARA Threats

Get recent YARA threats.

Input parameters:

- `hours`
- `limit` (integer)

### `get_ct_certificates` (~25 tokens)

Get CT Certificates

Get certificate transparency data for a domain.

Input parameters:

- `domain` (string, required)

### `get_ct_dns_records` (~25 tokens)

Get CT DNS Records

Get CT DNS records for a domain.

Input parameters:

- `domain` (string, required)

### `get_ct_domains_by_ip` (~27 tokens)

Get CT Domains By IP

Find CT domains on an IP address.

Input parameters:

- `ip_address` (string, required)

### `get_ct_similar_domains` (~26 tokens)

Get CT Similar Domains

Find similar CT domains for a domain.

Input parameters:

- `domain` (string, required)

### `get_ct_timeline` (~25 tokens)

Get CT Timeline

Get CT certificate timeline for a domain.

Input parameters:

- `domain` (string, required)

### `get_api_root` (~14 tokens)

Get API Root

Get API root metadata.

### `get_health` (~13 tokens)

Get Health

Get API health status.

### `get_platform_stats` (~13 tokens)

Get Platform Stats

Get platform statistics.

### `get_latest_capabilities` (~15 tokens)

Get Latest Capabilities

Get latest capability stats.

### `get_capabilities_by_date` (~25 tokens)

Get Capabilities By Date

Get capability stats by date.

Input parameters:

- `scan_date` (string, required)

### `get_clipboard_stats` (~14 tokens)

Get Clipboard Stats

Get clipboard statistics.

### `get_cpe_stats` (~15 tokens)

Get CPE Stats

Get CPE statistics.

### `get_cpe_by_scan` (~28 tokens)

Get CPE By Scan

Get CPEs for a scan_id.

Input parameters:

- `scan_id` (string, required)

Output parameters:

- `result` (array)

### `search_cpe` (~42 tokens)

Search CPE

Search CPEs by pattern (paginated).

Input parameters:

- `cpe_pattern` (string, required)
- `limit` (integer)
- `page` (integer)

### `get_ids_alerts` (~26 tokens)

Get IDS Alerts

Get IDS alerts for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_jarm_stats` (~15 tokens)

Get JARM Stats

Get JARM statistics.

### `get_malware_stats` (~15 tokens)

Get Malware Stats

Get malware stats.

### `get_malware_by_scan` (~28 tokens)

Get Malware By Scan

Get malware details for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_yara_stats` (~15 tokens)

Get YARA Stats

Get YARA stats.

### `get_yara_by_scan` (~28 tokens)

Get YARA By Scan

Get YARA results for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_safe_browsing_stats` (~17 tokens)

Get Safe Browsing Stats

Get safe browsing stats.

### `get_safe_browsing` (~28 tokens)

Get Safe Browsing

Get safe browsing threats for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_top_tracking_keys` (~28 tokens)

Get Top Tracking Keys

Get top tracking keys.

Input parameters:

- `limit` (integer)
- `tracker_type`

### `search_tracking_key` (~51 tokens)

Search Tracking Key

Search by tracking key (paginated).

Input parameters:

- `key` (string, required)
- `limit` (integer)
- `page` (integer)
- `sort`
- `tracker_type` (string, required)

### `search_technologies` (~40 tokens)

Search Technologies

Search technologies (paginated).

Input parameters:

- `category`
- `limit` (integer)
- `page` (integer)
- `q`

### `get_technology_combinations` (~47 tokens)

Get Technology Combinations

Get technology combinations (paginated).

Input parameters:

- `limit` (integer)
- `min_occurrences`
- `page` (integer)
- `tech_name` (string, required)

### `get_popular_technologies` (~38 tokens)

Get Popular Technologies

Get popular technologies (paginated).

Input parameters:

- `days`
- `limit` (integer)
- `page` (integer)

### `get_technology_stats` (~14 tokens)

Get Technology Stats

Get technology stats.

### `search_by_nameserver` (~24 tokens)

Search By Nameserver

Search scans by nameserver.

Input parameters:

- `nameserver` (string, required)

### `get_rdap` (~26 tokens)

Get RDAP

Get RDAP details for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `search_by_registrar` (~40 tokens)

Search By Registrar

Search scans by registrar (paginated).

Input parameters:

- `limit` (integer)
- `page` (integer)
- `registrar_name` (string, required)

### `submit_scan_report` (~76 tokens)

Submit Scan Report

Submit a scan report.

Input parameters:

- `captcha_answer`
- `captcha_token`
- `report_details`
- `report_type` (string, required)
- `scan_id` (string, required)
- `skip_captcha`
- `user_agent`
- `x_forwarded_for`
- `x_real_ip`

### `get_ocr_stats` (~14 tokens)

Get OCR Stats

Get OCR stats.

### `get_ocr_by_scan` (~27 tokens)

Get OCR By Scan

Get OCR data for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_open_graph` (~26 tokens)

Get Open Graph

Get Open Graph data for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_pastejacking` (~29 tokens)

Get Pastejacking

Get pastejacking findings for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_netlog` (~25 tokens)

Get Netlog

Get network log for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `get_pcap_metadata` (~27 tokens)

Get PCAP Metadata

Get PCAP metadata for a scan_id.

Input parameters:

- `scan_id` (string, required)

### `search_favicon_mmh3` (~47 tokens)

Search Favicon MMH3

Search favicon by mmh3 hash (paginated).

Input parameters:

- `limit` (integer)
- `mmh3_hash` (integer, required)
- `page` (integer)

### `get_js_fingerprinter2` (~39 tokens)

Get JS Fingerprinter2

Get JS Fingerprinter2 results for a scan_id.

Input parameters:

- `include_detailed_events`
- `scan_id` (string, required)

### `get_js_fingerprinter2_stats` (~20 tokens)

Get JS Fingerprinter2 Stats

Get JS Fingerprinter2 stats.

### `get_js_fingerprinter2_health` (~21 tokens)

Get JS Fingerprinter2 Health

Get JS Fingerprinter2 health check.

### `get_js_fingerprinter2_coverage` (~22 tokens)

Get JS Fingerprinter2 Coverage

Get JS Fingerprinter2 fingerprint coverage.

### `search_js_obfuscation` (~45 tokens)

Search JS Obfuscation

Search JS obfuscation signals.

Input parameters:

- `has_eval`
- `limit` (integer)
- `min_risk_score`
- `risk_level`

### `search_js_malware_families` (~39 tokens)

Search JS Malware Families

Search JS malware families.

Input parameters:

- `limit` (integer)
- `min_cluster_size`
- `similarity_threshold`

### `search_js_fingerprinter2_composite_hash` (~39 tokens)

Search JS Fingerprinter2 Composite Hash

Search JS Fingerprinter2 by composite hash.

Input parameters:

- `composite_hash` (string, required)
- `limit` (integer)

### `search_js_fingerprinter2_signature` (~35 tokens)

Search JS Fingerprinter2 Signature

Search JS Fingerprinter2 by signature.

Input parameters:

- `limit` (integer)
- `signature` (string, required)

### `search_js_fingerprinter2_similar` (~49 tokens)

Search JS Fingerprinter2 Similar

Search JS Fingerprinter2 similar scans.

Input parameters:

- `include_self`
- `limit` (integer)
- `min_similarity`
- `scan_id` (string, required)

### `get_js_segments_by_scan` (~45 tokens)

Get JS Segments By Scan

Get JS segments for a scan_id.

Input parameters:

- `limit`
- `offset` (integer)
- `scan_id` (string, required)
- `script_url`

### `search_js_segments_by_hash` (~38 tokens)

Search JS Segments By Hash

Search JS segments by code hash.

Input parameters:

- `code_hash` (string, required)
- `limit`
- `offset` (integer)

### `search_js_segments_by_normalized_hash` (~40 tokens)

Search JS Segments By Normalized Hash

Search JS segments by normalized hash.

Input parameters:

- `limit`
- `normalized_hash` (string, required)
- `offset` (integer)

### `get_js_segments_suspicious` (~49 tokens)

Get JS Segments Suspicious

Get suspicious JS segments for a scan_id.

Input parameters:

- `limit`
- `min_risk_score`
- `offset` (integer)
- `scan_id` (string, required)

### `get_js_segments_unknown` (~46 tokens)

Get JS Segments Unknown

Get unknown JS segments for a scan_id.

Input parameters:

- `limit`
- `min_code_length`
- `offset` (integer)
- `scan_id` (string, required)

### `run_js_differential_analysis` (~48 tokens)

Run JS Differential Analysis

Run JS differential analysis for a scan_id.

Input parameters:

- `include_known_libraries` (boolean)
- `min_confidence` (number)
- `scan_id` (string, required)

### `get_js_library_inventory` (~27 tokens)

Get JS Library Inventory

Get JS fingerprint library inventory.

Input parameters:

- `library`
- `min_count`

### `search_js_fingerprint_patterns` (~63 tokens)

Search JS Fingerprint Patterns

Search JS fingerprints by patterns.

Input parameters:

- `cdn_mismatch`
- `has_crypto`
- `has_eval`
- `has_websocket`
- `high_entropy`
- `limit` (integer)
- `no_library`

### `search_js_fingerprint_obfuscated` (~64 tokens)

Search JS Fingerprint Obfuscated

Search obfuscated JS fingerprints.

Input parameters:

- `classification`
- `exclude_libraries`
- `max_score`
- `min_code_length`
- `min_score`
- `page` (integer)
- `per_page` (integer)

### `search_js_fingerprint_by_server` (~40 tokens)

Search JS Fingerprint By Server

Search JS fingerprints by server type.

Input parameters:

- `include_headers`
- `limit` (integer)
- `server_type` (string, required)

### `search_js_fingerprint_by_bundler` (~66 tokens)

Search JS Fingerprint By Bundler

Search JS fingerprints by bundler type.

Input parameters:

- `bundle_format`
- `bundler_type` (string, required)
- `include_libraries`
- `min_confidence`
- `page` (integer)
- `per_page` (integer)

### `search_js_fingerprint_by_cdn` (~51 tokens)

Search JS Fingerprint By CDN

Search JS fingerprints by CDN.

Input parameters:

- `cdn_cache_status`
- `cdn_type` (string, required)
- `limit` (integer)
- `unpinned_only`

### `search_js_fingerprint_by_library` (~68 tokens)

Search JS Fingerprint By Library

Search JS fingerprints by library name.

Input parameters:

- `include_cdn_only`
- `library_name` (string, required)
- `min_confidence`
- `page` (integer)
- `per_page` (integer)
- `version`
- `version_pattern`

### `search_js_fingerprint_by_library_version` (~55 tokens)

Search JS Fingerprint By Library Version

Search JS fingerprints by library version.

Input parameters:

- `group_by_url`
- `include_deprecated`
- `library` (string, required)
- `limit` (integer)
- `version` (string, required)

### `search_js_fingerprint_by_fuzzy_hash` (~42 tokens)

Search JS Fingerprint By Fuzzy Hash

Search JS fingerprints by fuzzy hash.

Input parameters:

- `fuzzy_hash` (string, required)
- `limit` (integer)
- `min_similarity`

### `search_js_fingerprint_by_md5` (~55 tokens)

Search JS Fingerprint By MD5

Search JS fingerprints by MD5 hash.

Input parameters:

- `from_date`
- `hash_value` (string, required)
- `include_scans`
- `limit` (integer)
- `to_date`

### `search_js_fingerprint_by_normalized_hash` (~55 tokens)

Search JS Fingerprint By Normalized Hash

Search JS fingerprints by normalized hash.

Input parameters:

- `from_date`
- `hash_value` (string, required)
- `include_scans`
- `limit` (integer)
- `to_date`

### `search_js_fingerprint_by_sha1` (~55 tokens)

Search JS Fingerprint By SHA1

Search JS fingerprints by SHA1 hash.

Input parameters:

- `from_date`
- `hash_value` (string, required)
- `include_scans`
- `limit` (integer)
- `to_date`

### `search_js_fingerprint_by_sha256` (~55 tokens)

Search JS Fingerprint By SHA256

Search JS fingerprints by SHA256 hash.

Input parameters:

- `from_date`
- `hash_value` (string, required)
- `include_scans`
- `limit` (integer)
- `to_date`

### `find_js_fingerprint_similar_by_hash` (~53 tokens)

Find JS Fingerprint Similar By Hash

Find similar JS fingerprints by hash.

Input parameters:

- `content_sha256` (string, required)
- `exclude_exact_matches` (boolean)
- `limit` (integer)
- `threshold` (number)

### `search_jsfingerprints_by_bundler` (~46 tokens)

Search JS Fingerprints By Bundler

Search JS fingerprints by bundler (paginated).

Input parameters:

- `bundler` (string, required)
- `limit` (integer)
- `offset` (integer)

### `search_jsfingerprints_by_library` (~42 tokens)

Search JS Fingerprints By Library

Search JS fingerprints by library (paginated).

Input parameters:

- `library` (string, required)
- `limit` (integer)
- `offset` (integer)

### `search_jsfingerprints_by_library_version` (~51 tokens)

Search JS Fingerprints By Library Version

Search JS fingerprints by library version (paginated).

Input parameters:

- `library` (string, required)
- `limit` (integer)
- `offset` (integer)
- `version` (string, required)

### `search_jsfingerprints_by_fuzzy_hash` (~46 tokens)

Search JS Fingerprints By Fuzzy Hash

Search JS fingerprints by fuzzy hash (paginated).

Input parameters:

- `fuzzy_hash` (string, required)
- `limit` (integer)
- `offset` (integer)

### `search_jsfingerprints_by_md5` (~45 tokens)

Search JS Fingerprints By MD5

Search JS fingerprints by MD5 (paginated).

Input parameters:

- `hash_value` (string, required)
- `limit` (integer)
- `offset` (integer)

### `search_jsfingerprints_by_normalized_hash` (~46 tokens)

Search JS Fingerprints By Normalized Hash

Search JS fingerprints by normalized hash (paginated).

Input parameters:

- `hash_value` (string, required)
- `limit` (integer)
- `offset` (integer)

### `search_jsfingerprints_by_sha1` (~45 tokens)

Search JS Fingerprints By SHA1

Search JS fingerprints by SHA1 (paginated).

Input parameters:

- `hash_value` (string, required)
- `limit` (integer)
- `offset` (integer)

### `search_jsfingerprints_by_sha256` (~45 tokens)

Search JS Fingerprints By SHA256

Search JS fingerprints by SHA256 (paginated).

Input parameters:

- `hash_value` (string, required)
- `limit` (integer)
- `offset` (integer)

### `get_jsfingerprint` (~37 tokens)

Get JS Fingerprint

Get JS fingerprint by ID.

Input parameters:

- `fingerprint_id` (integer, required)
- `include_functions`
- `include_http_headers`

### `get_jsfingerprint_similar` (~51 tokens)

Get JS Fingerprint Similar

Find similar JS fingerprints.

Input parameters:

- `exclude_same_scan`
- `fingerprint_id` (integer, required)
- `limit` (integer)
- `offset` (integer)
- `threshold`

### `get_jsfingerprint_similarity_counts` (~37 tokens)

Get JS Fingerprint Similarity Counts

Get JS fingerprint similarity counts.

Input parameters:

- `fingerprint_id` (integer, required)
- `max_count`
- `threshold`

### `get_jsfingerprint_source` (~24 tokens)

Get JS Fingerprint Source

Get JS fingerprint source.

Input parameters:

- `fingerprint_id` (integer, required)

### `get_jsfingerprint_bundle_stats` (~30 tokens)

Get JS Fingerprint Bundle Stats

Get JS fingerprint bundle statistics.

Input parameters:

- `from_date`
- `to_date`

### `get_jsfingerprint_library_stats` (~36 tokens)

Get JS Fingerprint Library Stats

Get JS fingerprint library statistics.

Input parameters:

- `from_date`
- `min_count`
- `to_date`

### `get_jsfingerprint_hash_prevalence` (~32 tokens)

Get JS Fingerprint Hash Prevalence

Get JS fingerprint hash prevalence for a scan_id.

Input parameters:

- `scan_id` (string, required)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-scanmalware-mcp-scanmalware-mcp/mcp#diagnostics

## Score history

- 2026-08-03: 66
- 2026-08-02: 65
- 2026-08-01: 65
- 2026-07-31: 64
- 2026-07-30: 58
- 2026-07-29: 57
- 2026-07-28: 56
- 2026-07-27: 56
- 2026-07-26: 47

## Links

- Remote endpoint: https://mcp.scanmalware.com/mcp
- Repository: https://github.com/scanmalware/mcp-server
- Website: https://mcp.scanmalware.com/
- Changelog RSS feed: https://verifymcp.io/servers/com-scanmalware-mcp-scanmalware-mcp/mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-scanmalware-mcp-scanmalware-mcp/mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/com-scanmalware-mcp-scanmalware-mcp/mcp
