このMCPでできること
Scans code and dependencies for quantum-vulnerable cryptography and supports deterministic triage, verification, and post-quantum migration guidance.
ツール
入力スキーマ
{'type': 'object', 'required': ['findings', 'verdicts'], 'properties': {'findings': {'type': 'array', 'items': {'type': 'object', 'required': ['ruleId', 'location'], 'properties': {'cwe': {'type': 'string', 'description': 'e.g. "CWE-327".'}, 'hndl': {'type': 'boolean', 'description': 'Exposed to harvest-now-decrypt-later.'}, 'title': {'type': 'string'}, 'ruleId': {'type': 'string', 'description': 'Stable rule id, e.g. "rsa-keygen".'}, 'message': {'type': 'string'}, 'category': {'type': 'string'}, 'location': {'type': 'object', 'required': ['file'], 'properties': {'file': {'type': 'string'}, 'line': {'type': 'number'}}, 'description': 'Where the finding is.'}, 'severity': {'type': 'string', 'description': 'critical | high | medium | low | info.'}, 'algorithm': {'type': 'string', 'description': 'Classical algorithm family, when applicable.'}, 'confidence': {'type': 'string'}, 'remediation': {'type': 'string'}}, 'description': 'A single finding from `scan_path --format json`.'}, 'description': 'The findings that were triaged.'}, 'verdicts': {'type': 'array', 'items': {'type': 'object', 'required': ['fingerprint', 'exposureScore', 'priority', 'rationale'], 'properties': {'priority': {'enum': ['now', 'soon', 'later'], 'type': 'string'}, 'rationale': {'type': 'string', 'description': 'Why this exposure score / priority.'}, 'fingerprint': {'type': 'string', 'description': 'Fingerprint of the finding this verdict applies to.'}, 'exposureScore': {'type': 'number', 'description': 'Real-world exposure (higher = more exposed).'}}, 'description': 'A triage verdict for one finding.'}, 'description': 'One verdict per finding, keyed by fingerprint.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['finding', 'originalContent', 'newContent'], 'properties': {'finding': {'type': 'object', 'description': 'The scan finding being fixed (needs a string ruleId and location.file).'}, 'newContent': {'type': 'string', 'description': 'Your proposed full corrected file content.'}, 'originalContent': {'type': 'string', 'description': "The file's current full content."}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': "Package name to look up (e.g. 'node-forge', 'jsonwebtoken')."}, 'ecosystem': {'type': 'string', 'description': 'Package ecosystem. Default: npm.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'properties': {'ruleId': {'type': 'string', 'description': "The finding's rule id, matching a detector id prefix."}, 'algorithm': {'type': 'string', 'description': 'The classical algorithm family involved (e.g. RSA, ECDH, ECDSA).'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'properties': {'ruleId': {'type': 'string', 'description': "A finding's ruleId (resolved to its algorithm)."}, 'algorithm': {'type': 'string', 'description': 'Classical algorithm family to migrate away from.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'properties': {}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['findings'], 'properties': {'findings': {'type': 'array', 'items': {'type': 'object', 'required': ['ruleId', 'location'], 'properties': {'cwe': {'type': 'string', 'description': 'e.g. "CWE-327".'}, 'hndl': {'type': 'boolean', 'description': 'Exposed to harvest-now-decrypt-later.'}, 'title': {'type': 'string'}, 'ruleId': {'type': 'string', 'description': 'Stable rule id, e.g. "rsa-keygen".'}, 'message': {'type': 'string'}, 'category': {'type': 'string'}, 'location': {'type': 'object', 'required': ['file'], 'properties': {'file': {'type': 'string'}, 'line': {'type': 'number'}}, 'description': 'Where the finding is.'}, 'severity': {'type': 'string', 'description': 'critical | high | medium | low | info.'}, 'algorithm': {'type': 'string', 'description': 'Classical algorithm family, when applicable.'}, 'confidence': {'type': 'string'}, 'remediation': {'type': 'string'}}, 'description': 'A single finding from `scan_path --format json`.'}, 'description': "Findings from a scan's JSON output."}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['before', 'after'], 'properties': {'after': {'type': 'array', 'items': {'type': 'object', 'required': ['ruleId', 'location'], 'properties': {'cwe': {'type': 'string', 'description': 'e.g. "CWE-327".'}, 'hndl': {'type': 'boolean', 'description': 'Exposed to harvest-now-decrypt-later.'}, 'title': {'type': 'string'}, 'ruleId': {'type': 'string', 'description': 'Stable rule id, e.g. "rsa-keygen".'}, 'message': {'type': 'string'}, 'category': {'type': 'string'}, 'location': {'type': 'object', 'required': ['file'], 'properties': {'file': {'type': 'string'}, 'line': {'type': 'number'}}, 'description': 'Where the finding is.'}, 'severity': {'type': 'string', 'description': 'critical | high | medium | low | info.'}, 'algorithm': {'type': 'string', 'description': 'Classical algorithm family, when applicable.'}, 'confidence': {'type': 'string'}, 'remediation': {'type': 'string'}}, 'description': 'A single finding from `scan_path --format json`.'}, 'description': 'Findings after the change.'}, 'before': {'type': 'array', 'items': {'type': 'object', 'required': ['ruleId', 'location'], 'properties': {'cwe': {'type': 'string', 'description': 'e.g. "CWE-327".'}, 'hndl': {'type': 'boolean', 'description': 'Exposed to harvest-now-decrypt-later.'}, 'title': {'type': 'string'}, 'ruleId': {'type': 'string', 'description': 'Stable rule id, e.g. "rsa-keygen".'}, 'message': {'type': 'string'}, 'category': {'type': 'string'}, 'location': {'type': 'object', 'required': ['file'], 'properties': {'file': {'type': 'string'}, 'line': {'type': 'number'}}, 'description': 'Where the finding is.'}, 'severity': {'type': 'string', 'description': 'critical | high | medium | low | info.'}, 'algorithm': {'type': 'string', 'description': 'Classical algorithm family, when applicable.'}, 'confidence': {'type': 'string'}, 'remediation': {'type': 'string'}}, 'description': 'A single finding from `scan_path --format json`.'}, 'description': "Findings before the change (from a scan's JSON findings)."}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'properties': {'tier': {'enum': ['category-3', 'category-5'], 'type': 'string', 'description': "Security tier: 'category-3' (default, commercial — ML-KEM-768 / ML-DSA-65) or 'category-5' (CNSA 2.0 / NSS, long-lived secrets — ML-KEM-1024 / ML-DSA-87)."}, 'context': {'type': 'string', 'description': 'Free-text description of the cryptographic usage (used when no algorithm is given).'}, 'algorithm': {'type': 'string', 'description': 'Classical algorithm family to migrate away from.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['findings'], 'properties': {'findings': {'type': 'array', 'items': {'type': 'object', 'required': ['ruleId', 'location'], 'properties': {'cwe': {'type': 'string', 'description': 'e.g. "CWE-327".'}, 'hndl': {'type': 'boolean', 'description': 'Exposed to harvest-now-decrypt-later.'}, 'title': {'type': 'string'}, 'ruleId': {'type': 'string', 'description': 'Stable rule id, e.g. "rsa-keygen".'}, 'message': {'type': 'string'}, 'category': {'type': 'string'}, 'location': {'type': 'object', 'required': ['file'], 'properties': {'file': {'type': 'string'}, 'line': {'type': 'number'}}, 'description': 'Where the finding is.'}, 'severity': {'type': 'string', 'description': 'critical | high | medium | low | info.'}, 'algorithm': {'type': 'string', 'description': 'Classical algorithm family, when applicable.'}, 'confidence': {'type': 'string'}, 'remediation': {'type': 'string'}}, 'description': 'A single finding from `scan_path --format json`.'}, 'description': "Findings from a scan's JSON output."}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['code'], 'properties': {'code': {'type': 'string', 'description': 'The source code to check.'}, 'filename': {'type': 'string', 'description': "Optional filename; its extension selects the detectors (overrides 'language')."}, 'language': {'type': 'string', 'description': 'Language of the code (js, ts, python, go, java, csharp, rust, ruby, c, …).'}}, 'additionalProperties': False}
最近のツール変更
類似のMCPサーバー
hyperion
Acts as a paid MCP tool marketplace and utility gateway with server discovery, HTTP and JavaScript tools, research, data conversi…
Vee3
Manages Clerk authentication infrastructure, including users, organizations, domains, sessions, tokens, OAuth, SSO, machines, per…
IA-QA — 130+ QA & Dev Tools for AI Agents
Provides deterministic QA, evaluation, testing, code analysis, prompt and RAG checks, model comparison, and web security diagnost…
validoria-mcp
Runs continuous website, API, and webshop tests covering security, SEO, performance, accessibility, browser journeys, and inciden…
HubVibe: Pay-per-Call Tools for AI Agents: Web Search, Email Verify, KYC, Stocks, Crypto, News, Data
Offers paid utilities for web audits, HTTP fetching and extraction, BigQuery analysis, LLM processing, code execution, blockchain…
developer-tools
Provides general-purpose developer utilities for encoding, hashing, encryption, JSON, HTML, CSS, networking, and related data tra…
Qiniso
Provides deterministic formatting, parsing, holiday and tax lookups, address handling, and checksum or structure validation for i…
ContrastAPI
Provides security research and assessment tools covering CVEs, IOCs, dependencies, secrets, injection risks, HTTP headers, domain…