Skip to main content
Glama
MRFrazer25

vulnerability-exposure-mcp

Threat lists check

threat_lists_check
Read-onlyIdempotent

Check a public IP against Spamhaus DROP and GreyNoise to identify criminal or hijacked networks and scanning or business-service reputation without API keys.

Instructions

Keyless reputation for a public IP: Spamhaus DROP (networks hijacked or run by criminals) and GreyNoise (whether it scans the internet, or is a known business service). Already run for an IP target. GreyNoise allows 10 lookups a day without GREYNOISE_API_KEY.

Input Schema

NameRequiredDescriptionDefault
ip_addressYes
investigation_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds real value beyond that: it explains what each source contributes and discloses a hard rate limit plus the no-key fallback, which annotations cannot express.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core capability is front-loaded and the parenthetical glosses on Spamhaus DROP and GreyNoise earn their space. The trailing 'Already run for an IP target' sentence is the one piece that is vague rather than informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description should describe what a result looks like, and it does not (listing vs. verdict vs. raw payload). Combined with an entirely undocumented investigation_id parameter, an agent knows the gist but not the call contract.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, and it does not. The required ip_address is implied by 'for a public IP', but investigation_id is never mentioned or explained anywhere.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('keyless reputation for a public IP') and names the two underlying sources (Spamhaus DROP, GreyNoise). It does not explicitly differentiate itself from sibling IP-reputation tools like abuseipdb_check or virustotal_check, so an agent must infer the distinction from the source names alone.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'Already run for an IP target' hints at when it is relevant but is grammatically unclear and never states when to prefer this over abuseipdb_check, virustotal_check, or shodan_search. The rate-limit note ('10 lookups a day without GREYNOISE_API_KEY') is genuinely useful usage context but addresses constraints, not tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.