QNSQY
Linux only, local: post-quantum CBOM scan, encrypt to public keys, verify. Takes no secrets
Description from the maker (original English)
Safety checks before you sign, pay or install: contract, token and package scans, phishing, OFAC.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://tanod.dev/mcp/securityRun this in your terminal
claude mcp add --transport http security https://tanod.dev/mcp/securityPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"security": {
"url": "https://tanod.dev/mcp/security"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"security": {
"type": "http",
"url": "https://tanod.dev/mcp/security"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://tanod.dev/mcp/securityMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Tool names and descriptions exactly as the server reported them on Nov 6, 2026. The maker wrote them, not us; we show them as plain text.
scan_contract_sourcepactlint: Scan Solidity source code for security bugs before you deploy, review or depend on it. For a deployed verified contract use scan_contract_address. Runs solc, Slither and custom DeFi detectors (unchecked ERC-20 returns, zero slippage limits, oracle misuse, ERC-4626 infla
scan_contract_addresspactlint: Scan a deployed, verified contract on Ethereum or Base for security bugs, by address. For source you hold use scan_contract_source. Fetches the verified source from Sourcify. Runs solc, Slither and custom DeFi detectors (unchecked ERC-20 returns, zero slippage limits, o
check_contract_before_interactiontxpeek: Check an address for risk right before you send a transaction to it, approve it, or buy its token (Base or Ethereum). For a full scan of verified source use scan_contract_address; for a token's sellability use check_token_honeypot. Returns verdict (low | caution | high |
check_token_honeypotchainpeek: Honeypot check: can this token be sold? Simulated buy and sell with tax. For a verdict that adds contract flags use check_token_safety. Returns a simulated buy and sell-back of an ERC-20 on Base or Ethereum (Uniswap V2/V3, Aerodrome): `honeypot` (true, false or "unknow
check_token_safetychainpeek: Use when an agent needs a token risk check before buying an ERC-20 on Base or Ethereum, with a plain-language take. For a written summary and share card use token_verdict; for Solana use check_solana_token_safety. Returns one verdict with reasons and a one-sentence pla
token_verdictchainpeek: Token risk verdict in plain language for a Base or Ethereum token, with a shareable card. For the simulation alone use check_token_honeypot. Returns a plain-language verdict (high_risk, caution, no_major_flags_found or unknown) on an ERC-20 with reasons, a 2-3 sentence
check_solana_token_safetychainpeek: Check a Solana token for rug risk: mint and freeze authority, top holders, sell quote. For authorities alone use get_solana_token_info; for ERC-20 tokens use check_token_safety. Returns a check of the mint: mint and freeze authority, Token-2022 risks (transfer fee, per
scan_agent_packagetoolsniff: Scan an AI-agent skill or MCP server package before installing it. To see whether a remote MCP server answers use check_mcp_server. Reads every file as text in a sandbox. Returns a verdict, a risk_score 0-100 and file:line findings: prompt injection, tool poisoning, re
check_url_phishingchainpeek: Check if a URL or domain is phishing or a scam. For up to 1,000 URLs use check_urls_phishing_batch; for headers use check_security_headers. Returns whether a URL's host (or a domain) is on public phishing/scam domain lists: `listed`, the `matched_domain`, the `sources`
check_urls_phishing_batchchainpeek: Check up to 1,000 URLs or domains for phishing or scams in one batch. For one URL use check_url_phishing. Returns the URL check for 1-1,000 URLs, hosts or domains in one call. A screening aid: the host and its parent domains are matched against two public lists, PhishD
check_sanctionschainpeek: screen one crypto address against the US OFAC SDN list's digital currency addresses. For up to 1,000 addresses use check_sanctions_batch; for lookalikes use check_address_poisoning. EVM and bech32 addresses match case-insensitively; base58 BTC, TRX and other formats mu
check_sanctions_batchchainpeek: Screen up to 1,000 crypto addresses against OFAC sanctions in one batch. For one address use check_sanctions. Returns the OFAC sanctions screen of 1-1,000 crypto addresses in one call. EVM and bech32 addresses match case-insensitively, other formats exactly as listed.
detect_proxychainpeek: detect whether a contract is a proxy, and of which kind. For code size and hash use get_contract_code. Reads the code, the EIP-1967 / EIP-1822 / OpenZeppelin legacy slots and slot 0, then one multicall. Returns `is_contract`, `is_proxy`, `kind` (eip1967_transparent | e
decode_calldatachainpeek: decode EVM transaction calldata. To run a read call use eth_call; to fetch a transaction use get_transaction. Input: `calldata` and optional `signature`; with no signature the selector is looked up and every candidate that decodes cleanly is returned. Typically 0.2-1 s
get_allowancechainpeek: read an ERC-20 allowance on Ethereum, Base or Robinhood Chain. For every live approval of a wallet use audit_token_approvals. A token that is not a readable ERC-20 is a 422 (not charged). A malformed or inconsistent node answer is a 5xx and is not charged. Typically 0.
inspect_domaindnspeek: inspect a domain's DNS, email authentication and TLS cert in one call. For registration data use rdap_lookup; for availability use check_domain_availability. Returns DNS records, SPF/DMARC/DKIM/MTA-STS findings with a deliverability score_out_of_8, and the cert (expiry,
check_security_headerssitepeek: grade a public page's HTTP security headers. For a phishing-list check use check_url_phishing; for DNS and TLS use inspect_domain. Grades the final response after redirects: HSTS, CSP, X-Frame-Options / frame-ancestors, X-Content-Type-Options, Referrer-Policy, Permissio
verify_emaildnspeek: verify an email address before you send to it or accept it at sign-up. For the domain's SPF, DMARC and DKIM use inspect_domain. Checks syntax (practical RFC 5322 / 5321 limits, IDNA domains), MX records, null MX (RFC 7505), the A/AAAA fallback (RFC 5321), whether an MX h
get_verification_codednspeek: Get the verification code or magic link from an email without the email body. To check an address before sending use verify_email. Returns the one-time code(s) and verification link(s) from a raw email or text, the sender domain, SPF/DKIM/DMARC results from its Authentic
rdap_lookupdnspeek: RDAP (the successor of whois) registration lookup. For DNS and TLS use inspect_domain; for an IP's ASN and reverse DNS use ip_lookup. Input: `query`, a domain, an IPv4 or IPv6 address or an AS number. For a domain: registrar (name, IANA id), created / updated / expires,
text_unicode_inspectutilpeek: Find invisible, bidi and homoglyph Unicode characters in text. For injected instructions use check_text_for_prompt_injection. Returns a security-oriented Unicode inspection: `risk` (low / medium / high) with reasons; invisible characters (zero-width, tag characters that
check_address_poisoningchainpeek: Check a transfer recipient for address poisoning: lookalikes in the sender's history. For balance, gas and blacklist checks too use transfer_preflight; for OFAC use check_sanctions. Returns a `risk` (high | medium | low) for paying `to`: reads `from`'s transfers of one
audit_token_approvalschainpeek: List a wallet's live token approvals and get revoke transactions. For tokens already pulled out use check_wallet_drain; for one allowance use get_allowance. Returns the live ERC-20 and Permit2 allowances of `wallet`: amount, `unlimited`, spender code (key-controlled, c
check_wallet_drainchainpeek: Check a wallet for a drain: find tokens pulled out without its signature. For live approvals with revoke transactions use audit_token_approvals. Returns a `verdict` (drained | review | clean) for `wallet` over the latest 2,000 blocks: each transfer out of USDC and USDT
get_wallet_counterpartieschainpeek: List a wallet's top counterparties: who an address sends to and receives from, by count and volume. For the raw transfer list use get_erc20_transfers. Returns who `address` transacts with over the latest `days` days (1-90; default 30) of ERC-20 transfers; plus `tokens`
check_text_for_secretsutilpeek: Scan text for leaked secrets: API keys, tokens, private keys and seed phrases. For personal data use redact_pii; for injected instructions use check_text_for_prompt_injection. Returns every API key, token, private key or BIP-39 seed phrase in a text (AWS, GitHub, GitLab
repo_infoutilpeek: Get health facts for a GitHub repository: activity, licence, dependents, Scorecard. Returns GitHub repository health facts: stars, licence, activity, latest release, dependents and OpenSSF Scorecard. Data: ecosyste.ms (CC BY-SA 4.0), OpenSSF Scorecard (CDLA-Permissive-2
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026
The registry lists no source repo, so we cannot match the publisher (tanod.dev) to the code
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 700 ms (HTTP 200)
No sign-in needed
Read 27 tool descriptions and found no hidden instructions to the AI
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 2 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.
The GitHub repo last changed –, and the latest version (0.1.1) reached the registry 4 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: QNSQY, EchelonGraph CVE & Exposure, WatchGuard MCP
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Linux only, local: post-quantum CBOM scan, encrypt to public keys, verify. Takes no secrets
CVE, KEV, EPSS, SBOM and advisory lookups; per-CVE exposure from Shodan data (© Shodan). Keyless.
WatchGuard Cloud Firebox, Endpoint Security, ThreatSync, NDR and AuthPoint APIs for every customer
No README found in the repo