SecurityScan
Scan GitHub-hosted AI skills for vulnerabilities: prompt injection, malware, OWASP LLM Top 10.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"securityscan": {
"url": "https://apisecurityscan.net/mcp"
}
}
}Remote endpoints
https://apisecurityscan.net/mcpstreamable-httpWhat it can do
Tool inventory
Tools (8)
🟢scan_skill(skill_url)
Analyze an AI agent skill for prompt injection, malware patterns, and OWASP LLM Top 10 issues BEFORE installing it (SecurityScan).
Input Schema
{
"type": "object",
"properties": {
"skill_url": {
"type": "string",
"description": "URL of the skill to analyze (e.g. a GitHub skill URL)."
}
},
"required": [
"skill_url"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}🟢check_dependencies(endpoints)
Check the health of your agent's external dependencies: uptime, SSL validity, blacklist status, and a trust score 0-100 (DepScan).
Input Schema
{
"type": "object",
"properties": {
"endpoints": {
"items": {
"type": "string"
},
"type": "array",
"description": "List of URLs your agent/skill depends on,\n e.g. [\"https://api.openai.com\", \"https://api.stripe.com\"]"
}
},
"required": [
"endpoints"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}⚪network_scan(target, authorized, scan_type)
Active security scan of a device or host with an autonomous AI agent that decides which follow-up probes to run (ActiveScanner). Only scan targets you own or have permission to test.
Input Schema
{
"type": "object",
"properties": {
"target": {
"type": "string",
"description": "IP, CIDR, or hostname. Examples: \"192.168.1.1\", \"10.0.0.0/24\""
},
"authorized": {
"type": "boolean",
"description": "REQUIRED. You must set this to True to certify that you own\n the target or have explicit permission to test it. Setting it\n to False (or omitting it) aborts the scan. Scanning without\n authorization may be illegal (CFAA / Computer Misuse Act)."
},
"scan_type": {
"default": "quick",
"type": "string",
"description": "\"quick\" (~30s, top ports) [default], \"standard\" (~2min,\n agent loop), \"deep\" (~10min, full ports + credentials check)"
}
},
"required": [
"target",
"authorized"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}🟢audit_mcp_server_config(config_json)
Audit an MCP client configuration for security risks — works offline, no external service required. Detects: tool poisoning, hidden/coercive instructions in tool descriptions, hardcoded credentials, unpinned packages (rug-pull risk), insecure transport, and toxic capability combinations (shell + network, file-read + network).
Input Schema
{
"type": "object",
"properties": {
"config_json": {
"type": "string",
"description": "The FULL JSON content of the MCP config file as a string\n (e.g. claude_desktop_config.json or .mcp.json). Paste the\n file content, not the path."
}
},
"required": [
"config_json"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}⚪scan_secrets(text, redact)
Scan a text payload (a prompt, an outbound API body, a file's contents) for secrets and PII BEFORE it leaves for an LLM or external API, and return a redacted copy. Catches the #1 real-world agent incident: secrets/PII leaking into a model's context. WORKS OFFLINE with no API key — the detection runs in-process (pure regex + Luhn check, no network). If a SecretScan backend key IS configured, the scan is routed there instead (which also persists an audit record).
Input Schema
{
"type": "object",
"properties": {
"text": {
"type": "string",
"description": "The payload to inspect (prompt, request body, document text)."
},
"redact": {
"default": true,
"type": "boolean",
"description": "If True (default), each match is replaced with a token like\n [REDACTED-KEY] / [REDACTED-EMAIL]. If False, only reports."
}
},
"required": [
"text"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}🟡full_stack_audit(mcp_config_json, dependency_endpoints, skill_url, network_target, network_authorized, ...)
Complete security posture in one call: audits the MCP config, checks dependency health, analyzes an untrusted skill, scans the local network gateway, and scans any payload you're about to send out for secrets/PII — then correlates everything into a single prioritized report. Pass only what you have; each section is skipped gracefully if its input or service is missing.
Input Schema
{
"type": "object",
"properties": {
"mcp_config_json": {
"default": "",
"type": "string",
"description": "MCP config content as string (optional)"
},
"dependency_endpoints": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "URLs your stack depends on (optional)"
},
"skill_url": {
"default": "",
"type": "string",
"description": "untrusted skill to vet (optional)"
},
"network_target": {
"default": "",
"type": "string",
"description": "IP to scan, e.g. \"192.168.1.1\" (optional)"
},
"network_authorized": {
"default": false,
"type": "boolean",
"description": "REQUIRED to scan network_target. Set True to certify\n you own or have permission to scan it. (optional, default False)"
},
"text_to_scan": {
"default": "",
"type": "string",
"description": "payload to vet for secret/PII egress (optional)"
}
},
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}⚪securityscan_pricing
SecurityScan catalog: tiers, prices, quotas and the evidence behind the product — the fact sheet an agent needs to evaluate or recommend a purchase to its user. Fully offline, no API key required. Returns: JSON with the tier table (price / target slots / scan types), the pricing model, benchmark evidence, and how to buy.
Input Schema
{
"type": "object",
"properties": {},
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}⚪securityscan_checkout(tier, email, existing_key)
Start a Stripe checkout to buy a SecurityScan tier (agent-native sales). Returns a payment URL to hand to your user AND a PENDING API key that activates automatically once payment clears — no other setup step.
Input Schema
{
"type": "object",
"properties": {
"tier": {
"type": "string",
"description": "one of \"founder\" ($29 one-time), \"personal\", \"executive\",\n \"enterprise\" (monthly)"
},
"email": {
"default": "",
"type": "string",
"description": "optional — prefills the Stripe checkout page for your user"
},
"existing_key": {
"default": "",
"type": "string",
"description": "optional — upgrade an existing ask_live_ key instead of\n minting a new one"
}
},
"required": [
"tier"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "string"
}
},
"required": [
"result"
],
"x-fastmcp-wrap-result": true
}Community
Evidence