Skip to main content
Glama
greynoise-mcp-server

greynoise-mcp-server

Official

List Callback IPs

list-callback-ips
Read-only

Retrieve paginated callback/C2 IPs filtered by attack stage, first/last seen dates, file attributes, and scanner associations to support threat hunting and incident triage.

Instructions

Paginated list of callback/C2 IPs filtered by attack stage, first/last seen date ranges, file attributes, and scanner associations. Dates are YYYY-MM-DD.

Input Schema

NameRequiredDescriptionDefault
ipsNoFilter to this specific set of callback IPs
pageNoZero-indexed page number (default 0)
file_hashNoFile SHA256 hash
file_nameNoFile name substring match
file_typeNoFile MIME type (e.g. "application/x-executable")
has_filesNotrue = only IPs with malware files; false = only IPs without files
page_sizeNoResults per page, 1-100 (default 20)
is_stage_1Notrue = file was downloaded from this IP (stage 1)
is_stage_2Notrue = suspected C2 based on VT/sandbox analysis (stage 2)
scanner_ipsNoFilter to IPs associated with these scanner IPs
last_seen_afterNoOnly IPs last seen after this date (YYYY-MM-DD)
first_seen_afterNoOnly IPs first seen after this date (YYYY-MM-DD)
last_seen_beforeNoOnly IPs last seen before this date (YYYY-MM-DD)
first_seen_beforeNoOnly IPs first seen before this date (YYYY-MM-DD)

Output Schema

NameRequiredDescriptionDefault
pageNo
itemsNo
totalNo
page_sizeNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changedv0.5.5
    • removedOutput schema / properties / items / items / properties / attack_stage / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / items / items / properties / attack_stage / type
      Added value: +[
      +  "number",
      +  "null"
      +]
    • removedOutput schema / properties / items / items / properties / first_seen / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / items / items / properties / first_seen / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / items / items / properties / last_seen / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / items / items / properties / last_seen / type
      Added value: +[
      +  "string",
      +  "null"
      +]
  2. Addedv0.5.3

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds pagination and date-format context, but does not mention authentication, rate limits, or return behavior; the output schema covers return values.

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

Conciseness5/5

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

Two sentences, front-loaded with the core purpose and followed by the key date-format constraint. No wasted wording.

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

Completeness4/5

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

Given the rich schema, output schema, and annotations, the description is sufficient for an agent to understand the tool's scope. It is slightly incomplete because it does not route the agent among closely related callback-IP siblings.

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

Parameters3/5

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

Schema description coverage is 100%, so all 14 parameters are already documented in the schema. The description only restates filter categories and the YYYY-MM-DD date format, adding little semantic meaning beyond the schema.

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: "Paginated list of callback/C2 IPs," and names the filter dimensions. It is clearly a listing tool, but it does not explicitly distinguish itself from siblings such as callback-ip-lookup, export-callback-ips, or callback-overview.

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

Usage Guidelines2/5

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

The description explains what can be filtered but gives no guidance on when to use this tool versus callback-ip-lookup, export-callback-ips, or callback-overview. There are no exclusions or alternative-selection cues.

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