Skip to main content
Glama

Get Pulse

get_pulse
Read-onlyIdempotent

Fetch a single OTX pulse: full description, references, indicators, attack IDs, targeted countries, malware families, industries, and creation/modification dates.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pulse_idYesOTX pulse ID (hex string)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesPulse ID (hex string)
nameYesPulse name
tagsYesAssociated tags
authorYesPulse author name
createdYesCreation timestamp
otx_urlYesOTX web URL for pulse
modifiedYesLast modification timestamp
attack_idsYesMITRE ATT&CK IDs
indicatorsNoFull list of indicators (IPs, domains, URLs, hashes)
industriesYesTargeted industries
descriptionYesFull pulse description (up to 8000 chars)
indicators_countYesNumber of indicators in pulse
malware_familiesYesAssociated malware families
targeted_countriesYesCountries targeted by threat

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "pulse_id": "5f8b9c2d1e4a6f7g8h9i0j1k"
      +  }
      +]
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "attack_ids": {
      +      "description": "MITRE ATT&CK IDs",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "author": {
      +      "description": "Pulse author name",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "created": {
      +      "description": "Creation timestamp",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "description": {
      +      "description": "Full pulse description (up to 8000 chars)",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "id": {
      +      "description": "Pulse ID (hex string)",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "indicators": {
      +      "description": "Full list of indicators (IPs, domains, URLs, hashes)",
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "indicators_count": {
      +      "description": "Number of indicators in pulse",
      +      "type": [
      +        "number",
      +        "null"
      +      ]
      +    },
      +    "industries": {
      +      "description": "Targeted industries",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "malware_families": {
      +      "description": "Associated malware families",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "modified": {
      +      "description": "Last modification timestamp",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "name": {
      +      "description": "Pulse name",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "otx_url": {
      +      "description": "OTX web URL for pulse",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "tags": {
      +      "description": "Associated tags",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "targeted_countries": {
      +      "description": "Countries targeted by threat",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "id",
      +    "name",
      +    "description",
      +    "author",
      +    "created",
      +    "modified",
      +    "tags",
      +    "targeted_countries",
      +    "malware_families",
      +    "attack_ids",
      +    "industries",
      +    "indicators_count",
      +    "otx_url"
      +  ],
      +  "type": "object"
      +}
  2. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint true; description adds detail on accessed data (full description, references, etc.) without contradicting.

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?

Single sentence, front-loaded with purpose, no unnecessary words.

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

Completeness5/5

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

With annotations covering safety, output schema present, and description listing output fields, tool is fully specified.

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 has 100% coverage with clear description of pulse_id as hex string; description lists output fields but adds no new parameter meaning.

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

Purpose5/5

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

The description uses specific verb 'fetch' and resource 'single OTX pulse', listing key attributes. It clearly distinguishes from sibling 'search_pulses' which is for multiple.

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

Usage Guidelines4/5

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

Implicitly indicates use when needing a specific pulse by ID (single), but lacks explicit comparison to search_pulses or when-not-to-use.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.