Mcp Greynoise — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Mcp Greynoise (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
MCP server for the GreyNoise API — check if IP addresses are internet background noise or potentially targeted attacks.
npx mcp-greynoiseThat's it. Works out of the box with 10 lookups/day (no API key needed).
GreyNoise collects and analyzes internet-wide scan traffic. It tells you:
When you see suspicious traffic in your logs:
| GreyNoise Result | Interpretation |
|---|---|
| NOISE + Malicious | Background attack traffic (scanners, botnets) — likely untargeted |
| NOISE + Benign | Security researchers, search crawlers — usually safe |
| RIOT | Known good service (CDN, DNS, cloud) — almost certainly benign |
| NOT NOISE | ⚠️ This IP is NOT mass-scanning — traffic may be targeted at you |
The "NOT NOISE" case is often the most important — it suggests someone is specifically interested in your systems.
<!-- TODO: Add GIF of Claude Desktop calling check_ip -->
Example output from `check_ip`:
IP: 51.91.185.74
Classification: MALICIOUS
Noise: YES - This IP has been observed scanning the internet
RIOT: NO - Not a known benign service IP
Last Seen: 2024-01-15
Details: https://viz.greynoise.io/ip/51.91.185.74
--- Interpretation ---
🚨 This IP is actively scanning the internet and classified as MALICIOUS.
Likely a scanner, botnet, or threat actor.npm install -g mcp-greynoisenpx mcp-greynoisegit clone https://github.com/nickjlucker/mcp-greynoise.git
cd mcp-greynoise
npm install
npm run build
node build/index.jsAdd to your claude_desktop_config.json:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"greynoise": {
"command": "npx",
"args": ["mcp-greynoise"],
"env": {
"GREYNOISE_API_KEY": "your-api-key-here"
}
}
}
}| Variable | Required | Description |
|---|---|---|
GREYNOISE_API_KEY | No | API key for higher rate limits (50/day vs 10/day) |
Get a free API key at viz.greynoise.io/signup.
⚠️ Never commit API keys. See .env.example for the recommended setup.check_ipCheck a single IP address against GreyNoise.
Input:
ip (string): IPv4 address to checkcheck_ipsCheck multiple IP addresses in one call (max 10).
Input:
ips (string[]): Array of IPv4 addressesExample output:
=== Results ===
8.8.8.8: RIOT (benign service) [Google]
51.91.185.74: NOISE - MALICIOUS
192.168.1.1: NOT NOISE (potentially targeted)
--- Legend ---
RIOT: Known benign service (CDN, DNS, etc.)
NOISE: IP is mass-scanning the internet
NOT NOISE: IP is NOT mass-scanning (traffic may be targeted)greynoise://statusReturns API status and rate limit information.
| Tier | Daily Lookups |
|---|---|
| Unauthenticated | 10 |
| Free account | 50 |
| Paid plans | Higher |
Rate limits are shared between API calls and the GreyNoise Visualizer.
This server:
Your API key is passed via environment variable and never logged.
# Install dependencies
npm install
# Run in development mode
npm run dev
# Build for production
npm run build
# Run built version
npm startMIT
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.