Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

com.threadlinqs/intelthreadlinqs-mcp

NPM · INTELTHREADLINQS-MCP · SCANNED SEP 21

Threadlinqs threat-intelligence MCP — 73 tools: threats, detections, IOCs, actors, C2, MITRE, CVEs

0 this week 85 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security98
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 31 of 96 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability88
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (excellent).Pass
  • Tool/resource definitions use about 8204 tokens (~94/item across 87 items; 73 tools + 14 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management93
  • Stability observed for 28 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage99
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 97% of tool parameters carry a description.Partial
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 73 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 74 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
  • Supports UI / widget rendering.Pass
Install

How do I install the com.threadlinqs/intelthreadlinqs-mcp server?

com.threadlinqs/intelthreadlinqs-mcp runs locally as an npm package, launched with npx -y intelthreadlinqs-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · intelthreadlinqs-mcp

# add to Claude Code
claude mcp add com-threadlinqs-intelthreadlinqs-mcp -- npx -y intelthreadlinqs-mcp
// .cursor/mcp.json
{
  "mcpServers": {
    "com-threadlinqs-intelthreadlinqs-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "intelthreadlinqs-mcp"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "com-threadlinqs-intelthreadlinqs-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "intelthreadlinqs-mcp"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add com-threadlinqs-intelthreadlinqs-mcp -- npx -y intelthreadlinqs-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-threadlinqs-intelthreadlinqs-mcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "intelthreadlinqs-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add com-threadlinqs-intelthreadlinqs-mcp --command npx --arg -y --arg intelthreadlinqs-mcp
# ~/.hermes/config.yaml
mcp_servers:
  com-threadlinqs-intelthreadlinqs-mcp:
    command: "npx"
    args: ["-y", "intelthreadlinqs-mcp"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "com-threadlinqs-intelthreadlinqs-mcp": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "intelthreadlinqs-mcp"
      ]
    }
  }
}
# add to Vellum
assistant mcp add com-threadlinqs-intelthreadlinqs-mcp -t stdio -c npx -a -y intelthreadlinqs-mcp
// mcp.json
{
  "mcpServers": {
    "com-threadlinqs-intelthreadlinqs-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "intelthreadlinqs-mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 20 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 87 to 90. That category is still filling its 30-day observation window: 26 days of observed history at the previous scan, 27 at this one. The score rises as the window fills, whether or not the server changes.

  • 18 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.

  • 17 Sept 26 −3
    • Stability: pass → 0.80 functional
  • 16 Sept 26 0
    • Stability: 0.97 → pass security
  • 15 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.

  • 13 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 87 to 90. That category is still filling its 30-day observation window: 26 days of observed history at the previous scan, 27 at this one. The score rises as the window fills, whether or not the server changes.

  • 11 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.

  • 10 Sept 26 −3
    • Stability: pass → 0.80 functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 21 Sept 2026 · Analysed npm/intelthreadlinqs-mcp@8.1.1

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Dependencies 96 packages
Packages resolved 96
Stale 31
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 73 exposed · ~7,781 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
bulk_get_cves ~49

Fetch up to 20 enriched CVEs by ID in one call. Returns {cves, missing, count}.

NameTypeReqDescription
cve_idsarrayyesCVE IDs (max 20)
NameTypeReqDescription
countinteger
cvesarrayyes
missingarrayyes

No examples provided.

bulk_get_threats ~58

Fetch up to 20 threats by ID in one call. Returns {threats, missing, count}. Use when you already have a list of threat IDs.

NameTypeReqDescription
threat_idsarrayyesThreat IDs (max 20)
NameTypeReqDescription
countinteger
missingarrayyes
threatsarrayyes

No examples provided.

explain_correlation ~128

Why two threats are linked: the per-channel similarity decomposition (techniques, IOCs, CVEs, products, CWEs, context), which channel dominates and by how much, the concrete shared artifacts, the signal count, and quality flags for high-confidence/low-evidence and stale links. Use when get_similar_threats gives a score and you need the evidence behind it. Pass the pair in either order. Returns 404 when the engine has no edge between them.

NameTypeReqDescription
threat_astringyesFirst threat ID.
threat_bstringyesSecond threat ID.
NameTypeReqDescription
dominance
errorstringPresent with HTTP 404 when the engine has no edge between the pair.
is_high_conf_low_signalboolean
is_staleboolean
score_breakdownobject
shared_cvesarray
shared_iocsarray
shared_techniquesarray
signal_countinteger

No examples provided.

export_attack_navigator ~125

Export a MITRE ATT&CK Navigator layer (enterprise-attack) for visualization. Pass actor=<name> to score techniques attributed to one actor, or all=true for platform-wide coverage. Returns {name, versions, domain, techniques:[{techniqueID, score, color, comment}]}, capped at 600 techniques.

NameTypeReqDescription
actorstringThreat-actor name or alias whose techniques to score (e.g. "APT29")
allbooleanIf true, build a platform-wide coverage layer from MITRE coverage instead of a single actor
NameTypeReqDescription
domainstring
gradientobject
namestring
techniquesarrayyes
versionsobject

No examples provided.

export_detection ~68

Export one detection rule in a specific format. format=spl|kql|sigma returns the raw query text for that flavor; format=json returns the full detection object.

NameTypeReqDescription
detection_idstringyesDetection ID
formatstringyesspl, kql, sigma, or json
NameTypeReqDescription
availableboolean
contentstring|nullRule text for spl/kql/sigma. For format=json the detection object is returned directly instead.
detection_idstring
formatstring

No examples provided.

export_stix ~267

Export a threat, actor, or CVE as a STIX 2.1 bundle for ingestion into a TIP/SIEM. Provide at least one of threat_id, actor, or cve_id. Returns a {type:"bundle", objects:[...]} with indicator (per IOC), attack-pattern (per MITRE technique), intrusion-set (actor), vulnerability (CVE), malware/threat-actor, and relationship objects. Set include_osint=true to add `sighting` SROs for indicators the community independently reported (TL_OSINT_Scan / tweetfeed.live, CC0) — community-sourced and heavily concentrated, so they carry x_threadlinqs_trust="community-unverified". The bundle is capped (≤200 objects / ≤80KB); a note object is appended if truncated.

NameTypeReqDescription
actorstringThreat-actor name or alias to export (e.g. "APT29")
cve_idstringCVE identifier to export (e.g. CVE-2024-3400)
include_osintbooleanAdd community `sighting` objects for corroborated indicators (default false)
threat_idstringThreat ID to export (e.g. TL-2026-0042)
NameTypeReqDescription
idstring
objectsarrayyes
typestringyesAlways 'bundle'.

No examples provided.

generate_c2_blocklist ~67

Compile a firewall-ready C2 blocklist of active command-and-control IPs observed recently. Returns deduplicated network indicators ready to drop into a denylist. Use this for actionable blocking; use get_c2 with view="beacons" when you need the underlying beacon detail.

Input schema present but exposes no named parameters.

NameTypeReqDescription
cidrsarray
countintegeryes
detailarray
generated_atstring
since_daysinteger

No examples provided.

get_actor ~130

Get a lean threat-actor profile by name or alias: actor metadata, attribution counts, attributed-threat summary rows, MITRE tactic rollup + technique ids, IOC category counts (no raw values), CVE/CWE/tool summaries, and relationships. For heavy detail use the follow-up tools: get_threat(id) for a full threat, search_detections / get_detection_detail for detection bodies, search_iocs for IOC values, get_infrastructure_pivots for shared infrastructure.

NameTypeReqDescription
namestringyesActor name or alias (e.g. 'APT29', 'Lazarus Group')
NameTypeReqDescription
actorobjectyes
countsobject
cvesarray
mitreobject
relationshipsobject
targetsobject
threatsarray
toolsarray

No examples provided.

get_actor_intelligence ~52

Composite intelligence picture for a threat actor: the full actor profile plus cross-actor attribution correlations in one call.

NameTypeReqDescription
namestringyesThreat-actor name or alias (e.g. "APT29")
NameTypeReqDescription
actorobject
cross_actor_attributionobject|nullShared entities across actors, or null when the attribution engine has nothing.
cvesarray
mitreobject
threatsarray
toolsarray

No examples provided.

get_attribution_coverage ~82

Corpus-level attribution honesty: how many threats are genuinely assessed vs merely actor-labelled at ingest vs uncovered, broken down by confidence, scope and reason code, plus the research backlog, contradictions, top actors and the research clock (last real assessment, not last nightly intake).

NameTypeReqDescription
actorstringOptional — scope the `recent` list to one actor.
NameTypeReqDescription
by_confidenceobject
by_reasonobject
by_scopeobject
corpusobject
engineobject
recentarray
top_actorsarray

No examples provided.

get_attribution_evidence ~100

Why a threat is attributed to an actor: the verdict, canonical actor, confidence, scope, the cited evidence chain, which signals fired, suspected alternatives and the analyst reasoning. Crucially it also reports `state` — whether this is a researched assessment or an unresearched intake stub — which threats.threat_actor alone cannot tell you.

NameTypeReqDescription
threat_idstringyesThreat ID (e.g. TL-2026-0989).
NameTypeReqDescription
actorstring
actor_canonicalstring
actor_uuidstring
attributed_atstring
confidencestring
current_actorstring
evidencearray
methodstring
queued_atstring
reason_codestring|null
reasoningstring
scopestring
signalsarray
statestringyes'assessed' vs 'pending_research' — whether this is a real assessment or an unresearched intake stub. Do not present a stub as an assessment.
suspectedarray
threat_idstringyes
titlestring
verdictstring

No examples provided.

get_c2 ~151

Query the live C2 (command-and-control) intelligence center. Pick a view: 'beacons' (active C2 beacon snapshots — default), 'configs' (full extracted C2 configs), 'operators' (operator clusters), 'watermarks' (Cobalt Strike watermark index), 'correlations' (cross-C2 correlations), 'timeline' (activity over time), 'stats' (aggregate counts). Use generate_c2_blocklist when you want firewall-ready output rather than raw records.

NameTypeReqDescription
limitnumberMax records for paginated views like beacons (default 50, max 100)
viewstringWhich C2 dataset to return (default 'beacons')
NameTypeReqDescription
aggregatesobject
asnsinteger
beaconsinteger
clustersarray
configsarray
correlationsarray
countriesinteger
dataobject
itemsarray
monthsarray
totalinteger
versionsarray
watermarksobject

No examples provided.

get_c2_dns_intel ~111

Reverse-DNS unmasking of C2 beacon infrastructure: which domains ride on each beacon IP, infrastructure fidelity (dedicated / mixed / shared), compromised-host flags and sample domains. Answers "what else lives on this C2 infrastructure". Filter by fidelity to separate adversary-owned infrastructure from shared hosting.

NameTypeReqDescription
compromisedbooleanOnly hosts flagged as compromised rather than adversary-owned.
fidelitystring
limitintegerDefault 40, max 100.
NameTypeReqDescription
offsetinteger
rowsarrayyes
statsobject
totalinteger

No examples provided.

get_campaign_intelligence ~63

Pivot on a named campaign / operation by name (e.g. "Snowflake campaign", "ClickFix"). Returns the threats in the campaign, the actors involved, prevalence, and common ATT&CK techniques.

NameTypeReqDescription
namestringyesCampaign / operation name
NameTypeReqDescription
actorsarray
canonicalstring
entity_typestring
matchedbooleanyes
prevalenceobject
querystring
threatsarray
top_techniquesarray

No examples provided.

get_changelog ~52

Get the recent platform changelog (new threats, detections, features). Pass limit (default 20, max 100).

NameTypeReqDescription
limitnumberMax entries (default 20, max 100)
NameTypeReqDescription
resultarrayyes

No examples provided.

get_community_campaigns ~111

Campaign clusters from the community OSINT layer (tweetfeed.live, CC0): cluster name, confidence, targeted brand, first/last seen, indicator count and types, tags and reporters. Cluster labels are UPSTREAM AI output, not Threadlinqs attribution — do not present them as our assessment. On an upstream proxy failure the response carries community_error rather than erroring; report "community feed unavailable", not "no campaigns".

NameTypeReqDescription
limitintegerDefault 15, max 50.
NameTypeReqDescription
campaignsarray
community_errorstring|nullSet to 'upstream_unavailable' on a proxy failure — report the feed as unavailable, NOT as zero campaigns.
generated_atstring
windowstring

No examples provided.

get_correlation_path ~119

Shortest evidence path between two threats across the similarity graph: the intermediate threats, each hop's dominant linking signal and shared artifacts, and the weakest-link strength of the whole path. Answers "is this incident connected to that campaign, and through what". Returns found:false with a reason (no edges vs different components) rather than an empty array.

NameTypeReqDescription
fromstringyesStarting threat ID.
max_hopsintegerSearch depth, 1-8 (default 6).
tostringyesTarget threat ID.
NameTypeReqDescription
foundbooleanyes
fromstringyes
hopsarray
path_strengthnumber
reasonstringWhy no path exists (no similarity edges vs different components) when found is false.
tostringyes

No examples provided.

get_correlation_subgraph ~191

The N-hop neighbourhood around any graph node — nodes, edges, and each edge's fidelity — for incremental exploration of the correlation graph. Start at depth 1 and expand: a whole-corpus graph exceeds every response budget. For a pre-aggregated single-entity view prefer get_entity_profile, which is cheaper and usually what you want; use this when you need the actual edge topology.

NameTypeReqDescription
depthintegerHops, 1-3 (default 1). Each hop multiplies the node count.
limit_edgesintegerDefault 80, max 120 over MCP.
limit_nodesintegerDefault 40, max 60 over MCP.
min_fidelitynumberDrop edges below this fidelity (0-1).
seed_idstringyesThe entity id/value to expand from.
seed_typestringyes
NameTypeReqDescription
edgesarray
nodesarray
paramsobject
seedobject

No examples provided.

get_correlations ~106

Read precomputed cross-dataset correlations. Choose an engine: 'overview' (rollup of all engines — default), 'mitre-heatmap', 'adversary-infra', 'ioc-consensus', 'cve-velocity', 'attribution', 'detection-debt', or 'enrichment'. Use 'overview' first to see what's available, then drill into a specific engine.

NameTypeReqDescription
enginestringWhich correlation engine to read (default 'overview')
NameTypeReqDescription
cvesarray
enginesobject
infrastructurearray
iocsarray
shared_entitiesarray
sourcesarray
summaryobject
sync_logobject
techniquesarray

No examples provided.

get_cve ~67

Look up a CVE by identifier (e.g. CVE-2024-3400): description, CVSS, affected products, references, and linked threats.

NameTypeReqDescription
cve_idstringyesCVE identifier (e.g. CVE-2024-3400)
NameTypeReqDescription
affected_productsarray
cve_idstringyes
cvss_v3object
descriptionstring
enrichedbooleanFalse when the CVE is unknown — then only cve_id/valid/reason are present.
epssobject
exploitationobject
kevobject
published_datestring
threat_idsarray
weaknessesarray

No examples provided.

get_cve_intelligence ~62

Composite CVE dossier: the enriched CVE detail plus exploitation-velocity context and any detections that reference it, in one call.

NameTypeReqDescription
cve_idstringyesCVE identifier (e.g. CVE-2024-3400)
NameTypeReqDescription
cveobject
related_detectionsobject|null
velocity_dataobject|null

No examples provided.

get_cwe ~56

Look up a CWE by identifier (e.g. CWE-79): weakness name, description, severity, related CVEs, and mitigation guidance.

NameTypeReqDescription
cwe_idstringyesCWE identifier (e.g. CWE-79)
NameTypeReqDescription
cwe_idstringyes
descriptionstring
enrichedbooleanFalse when not found — then only cwe_id is present.
mitigationsarray
namestring
related_cwesarray
threat_idsarray

No examples provided.

get_daily_intel_bundle ~86

One-shot "what happened" bundle: the day's debrief (latest by default, or pass date) plus platform stats, the top recent threats, and the correlations overview.

NameTypeReqDescription
datestringDebrief date YYYY-MM-DD (default: latest)
top_nnumberHow many top threats to include (default 5, max 10)
NameTypeReqDescription
correlations_overviewobject|null
debriefobject|null
platform_statsobject|null
top_threatsobject|null

No examples provided.

get_daily_theme ~19

Get the day's landscape theme and top threat tags.

Input schema present but exposes no named parameters.

NameTypeReqDescription
themesarray
yesterdayobject|null

No examples provided.

get_debrief ~87

Get the full daily intelligence debrief for a specific calendar date (YYYY-MM-DD): posture summary, themes, threats grouped by severity, MITRE coverage, IOC distribution, actor attribution, and detection status. Find available dates first with list_debriefs.

NameTypeReqDescription
datestringyesDebrief date in YYYY-MM-DD format (e.g. 2026-05-30)
NameTypeReqDescription
datestring
highlightsarray
new_detectionsinteger
new_threatsinteger
statsobject
summarystring
themesarray
threatsobject
titlestring

No examples provided.

get_detection_detail ~53

Get the full detail for one detection rule by its ID, including the complete query text (SPL/KQL/Sigma), metadata, and the threat it maps to.

NameTypeReqDescription
detection_idstringyesDetection ID
NameTypeReqDescription
detection_typestring
false_positivesarray
idstringyes
kql_querystring|null
mitre_mappingarray
namestring
querystring|null
severitystring
sigma_rulestring|null
threat_idstringPass to get_threat.
threat_titlestring

No examples provided.

get_detections ~174

List detection logic (Splunk SPL, Microsoft KQL, Sigma). Optionally filter by threat_id or detection type. Paginated: pass limit (default 15, max 100) and offset to page; the result includes has_more and an opaque next_cursor (reusable as offset/cursor).

NameTypeReqDescription
cursorstringOpaque pagination cursor (next_cursor from a prior result). Decoded to an offset; ignored when offset is given.
limitnumberMax results (default 15, max 100)
offsetnumberRow offset for pagination (default 0). Or pass cursor from a prior result.
threat_idstringFilter detections for a specific threat ID
typestringDetection type: spl, kql, or sigma
NameTypeReqDescription
dataarrayyes
has_morebooleanTrue when another page may exist.
next_cursorstring|nullOpaque cursor for the next page, or null when this is the last page or the endpoint ignores offset.
totalintegerTotal matching rows, when the handler reports one.

No examples provided.

get_engine_status ~72

Is the intelligence pipeline healthy? Per-engine row counts, last-compute times and derived ok/stale/empty status; the nightly graph pipeline's staged progress, current stage and degraded flag; recent failures; and the latest held-out accuracy eval (AUC). Check this before reasoning over correlation output if freshness matters.

Input schema present but exposes no named parameters.

NameTypeReqDescription
enginesarrayyes
evalobject
failuresarray
generated_atstring
graph_pipelineobject

No examples provided.

get_enrichment_overview ~40

Health and coverage overview of the enrichment sources (CVE/EPSS/KEV, IOC reputation, DNS, etc.) feeding the platform.

Input schema present but exposes no named parameters.

NameTypeReqDescription
sourcesarray
summaryobject

No examples provided.

get_entity_profile ~129

One-call dossier for any node in the intelligence graph — threat, technique, actor, IOC or CVE. Returns its centrality/pivot rank, top graph neighbours with edge fidelity, and type-specific rollups (linked threats, techniques with risk scores, IOCs with consensus and rarity, campaigns, related CVEs). Best token-per-call ratio in the graph family: replaces five or six separate lookups.

NameTypeReqDescription
node_idstringyesThe entity id/value (TL- id, T-number, actor name, IOC value, or CVE id).
node_typestringyes
NameTypeReqDescription
campaignsarray
cvesarray
iocsarray
nodeobjectyes
techniquesarray
threatsarray
top_neighborsarray

No examples provided.

get_graph_campaigns ~94

Campaign clusters the engine assembled from the similarity graph (connected components + label propagation): label, member count, cohesion, member threat IDs, top actors, top techniques, shared IOCs and nation-states. Distinct from get_campaign_intelligence, which looks up a NAMED campaign mentioned in threat text — this one reports clusters the engine derived itself.

NameTypeReqDescription
limitintegerDefault 15, max 50.
NameTypeReqDescription
dataarrayyes
summaryobject

No examples provided.

get_infrastructure_pivots ~88

For a given threat, surface cross-threat infrastructure links — shared IPs/domains and DNS-derived overlaps that tie it to other campaigns. Use to widen from a single threat to its infrastructure neighborhood; use get_similar_threats for TTP/actor-based similarity instead.

NameTypeReqDescription
threat_idstringyesThreat ID (e.g. TL-2026-0042)
NameTypeReqDescription
dns_record_countinteger
dns_trailarray
infrastructure_pivotsarray
pivot_countinteger
threat_idstringyes

No examples provided.

get_ioc_blast_radius ~143

Map the blast radius of one indicator: the threats that contain it, the MITRE techniques those threats use, and the actors + sibling IOCs in the same campaigns. Use this to scope impact of a single IOC; for a richer multi-source dossier on one indicator use get_ioc_intelligence instead.

NameTypeReqDescription
depthnumberTraversal rings to expand (1–3, default 3): 1=threats, 2=+techniques, 3=+actors & sibling IOCs
valuestringyesIndicator value (IP, domain, hash, URL, or CVE-XXXX-NNNN)
NameTypeReqDescription
centerstringyes
edge_scoresarray
ringsarray
statsobject

No examples provided.

get_ioc_dns ~79

Return stored DNS enrichment for an IP or domain indicator (reverse-IP and subdomain records previously resolved and cached in the platform dataset). This reads stored data — it is NOT a live lookup at call time. Use get_ioc_intelligence for the full stored dossier.

NameTypeReqDescription
valuestringyesIP address or domain (stored DNS enrichment lookup)
NameTypeReqDescription
cross_linksarray
domainsarray
query_valuestring
totalinteger

No examples provided.

get_ioc_intelligence ~77

Get the composite intelligence dossier for one indicator: linked threats, actor attribution, related IOCs, and enrichment context in a single call. Prefer this over search_iocs when you already have an exact indicator value and want its full story.

NameTypeReqDescription
valuestringyesExact indicator value (IP, domain, hash, or URL)
NameTypeReqDescription
consensus_scoreobject|nullMulti-feed consensus; null when no feed has seen it.
dns_recordsarray
infrastructure_pivotsarray
ioc_valuestringyes
osintobject|null
threat_countinteger
threatsarray
truncatedboolean

No examples provided.

get_landscape_briefing ~29

Get the latest threat-landscape briefing — a synthesized posture summary of recent threat activity.

Input schema present but exposes no named parameters.

NameTypeReqDescription
briefingsarray
latestobject|null
top_viewedarray

No examples provided.

get_latest_debrief ~30

Get the most recent daily intelligence debrief in full detail (resolves the latest date for you).

Input schema present but exposes no named parameters.

NameTypeReqDescription
datestring
latestobject|null
summarystring
titlestring

No examples provided.

get_malware_intelligence ~127

Pivot on a malware FAMILY by name (e.g. "LockBit", "Vidar", "Emotet"). Returns the canonical family + type, prevalence (threat/actor counts, first/last seen), the threats deploying it, the actors using it, and its most-common ATT&CK techniques. For an offensive TOOL (Cobalt Strike, Mimikatz) use get_tool_intelligence instead. Call resolve_entity first if unsure of the canonical name.

NameTypeReqDescription
namestringyesMalware family name (e.g. "LockBit", "Vidar")
NameTypeReqDescription
actorsarray
canonicalstring
entity_typestring
matchedbooleanyes
prevalenceobject
querystring
threatsarray
top_techniquesarray

No examples provided.

get_mitre_coverage ~48

Get MITRE ATT&CK coverage across the platform. Optionally filter by tactic.

NameTypeReqDescription
tacticstringFilter by ATT&CK tactic (e.g. "initial-access")
NameTypeReqDescription
tacticsarray
top_techniquesarray
total_techniquesinteger

No examples provided.

get_mitre_gap_analysis ~85

Prioritized list of MITRE ATT&CK techniques with the weakest detection coverage (detection debt), so you can target where to build detections next. Optionally filter by tactic.

NameTypeReqDescription
limitnumberMax techniques (default 20, max 100)
tacticstringFilter to one ATT&CK tactic (e.g. "execution")
NameTypeReqDescription
summaryobject
techniquesarray

No examples provided.

get_mitre_technique ~62

Get details for a specific MITRE ATT&CK technique by ID (e.g. T1059 or T1059.001).

NameTypeReqDescription
technique_idstringyesTechnique ID (e.g. T1059 or T1059.001)
NameTypeReqDescription
data_sourcesarray
mitigationsarray
tacticstring|null
techniquestring|null
technique_idstringyes
threatsarray

No examples provided.

get_osint ~168

Community corroboration for a threat or an indicator from the TL_OSINT_Scan layer (tweetfeed.live, CC0). Given threat_id, returns the matched community tags, the corroborated indicator count, and whether the community saw an indicator BEFORE our report. Given ioc_value, returns sightings, reporters, tags and every linked threat. Community-sourced and heavily concentrated (~73% of recent submissions come from a single reporter) — treat as corroborating evidence, never as authoritative attribution.

NameTypeReqDescription
ioc_valuestringExact indicator (IP, domain, URL, MD5 or SHA256). Returns the community lookup + our linked threats.
threat_idstringThreat ID (e.g. TL-2026-1531). Returns the per-threat corroboration block.
NameTypeReqDescription
community_seen_before_reportboolean
corroboratedinteger
indicator_countinteger
lead_daysnumber|nullDays the community saw an indicator before our report.
matched_tagsarray
reportersarray
scannedboolean
threat_idstringPresent on the per-threat shape.
threat_idsarray
valuestringPresent on the per-IOC shape (ioc_value input).

No examples provided.

get_osint_trends ~116

What the security community is surging on right now (tweetfeed.live, CC0), joined against our own corpus coverage: trending tags with movement, TLD distribution, novelty, top producers, daily volume — plus `corpus` (how much of our corpus the community corroborates) and `early_warning` (the lead-time distribution). The coverage-gap and lead-time read; the corpus join exists nowhere else. Keyed on community TAGS, not malware family (populated on <1% of upstream rows).

Input schema present but exposes no named parameters.

NameTypeReqDescription
caveatobject
corpusobject
dailyobject
early_warningobject
generated_atstring
moversobject
noveltyobject
producersobject
tldsobject
totalsobject

No examples provided.

get_pivotal_entities ~95

The hubs and bridges of the intelligence graph ranked by weighted degree and approximate betweenness — where a single detection buys the most coverage. NOTE: betweenness is an ego-bridge heuristic, not exact Brandes; the response says so in `note`. Do not present it as exact betweenness.

NameTypeReqDescription
limitintegerDefault 25, max 100.
node_typestring
NameTypeReqDescription
dataarrayyes
notestringStates that betweenness is an ego-bridge approximation, not exact Brandes.

No examples provided.

get_platform_stats ~28

Get aggregate platform statistics: threat, detection, IOC, MITRE technique, and actor counts.

Input schema present but exposes no named parameters.

NameTypeReqDescription
by_categoryarray
by_severityarray
top_actorsarray
top_techniquesarray
total_actorsinteger
total_correlationsinteger
total_detectionsinteger
total_iocsinteger
total_threatsinteger
total_ttpsinteger

No examples provided.

get_recent_threats ~128

List the most recently published threats. Paginated: pass limit (default 15, max 100) and offset to page through older threats; the result includes has_more and an opaque next_cursor (reusable as offset/cursor).

NameTypeReqDescription
cursorstringOpaque pagination cursor (next_cursor from a prior result). Decoded to an offset; ignored when offset is given.
limitnumberMax results (default 15, max 100)
offsetnumberRow offset for pagination (default 0). Or pass cursor from a prior result.
NameTypeReqDescription
dataarrayyes
has_morebooleanTrue when another page may exist.
next_cursorstring|nullOpaque cursor for the next page, or null when this is the last page or the endpoint ignores offset.
totalintegerTotal matching rows, when the handler reports one.

No examples provided.

get_roadmap ~28

Get the Threadlinqs Intelligence platform roadmap — shipped, in-progress, and planned capabilities.

Input schema present but exposes no named parameters.

NameTypeReqDescription
completedarray
ideasarray

No examples provided.

get_similar_threats ~113

Threats similar to a given threat, with the EVIDENCE behind each link: per-channel score breakdown, which signal dominates, the concrete shared techniques / IOCs / CVEs, and quality flags for stale or high-confidence-low-evidence links. Use explain_correlation for a full decomposition of one specific pair.

NameTypeReqDescription
idstringyesSource threat ID (e.g. TL-2026-0042)
limitnumberMax results (default 10, max 50)
NameTypeReqDescription
countinteger
dataarray
similararray
source_threat_idstring

No examples provided.

get_started ~40

Start here. Returns the Threadlinqs Intelligence tool catalog, categories, tiering, and usage guidance. No API call — read this before using other tools.

Input schema present but exposes no named parameters.

NameTypeReqDescription
categoriesobject
exportsstring
instructionsstring
resourcesobject
serverobject
tieringobject
toolsarrayyes

No examples provided.

Common questions

What is the com.threadlinqs/intelthreadlinqs-mcp server?

com.threadlinqs/intelthreadlinqs-mcp is listed in the public MCP registry as com.threadlinqs/intelthreadlinqs-mcp. Threadlinqs threat-intelligence MCP, 73 tools: threats, detections, IOCs, actors, C2, MITRE, CVEs. This page covers its npm package (intelthreadlinqs-mcp).

Is the com.threadlinqs/intelthreadlinqs-mcp server safe to use?

com.threadlinqs/intelthreadlinqs-mcp scores 85 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 21 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the com.threadlinqs/intelthreadlinqs-mcp server expose?

com.threadlinqs/intelthreadlinqs-mcp exposes 73 tools: get_started, search_vulnerabilities, search_threats, get_threat, get_recent_threats, and 68 more. Their descriptions and schemas cost roughly 7,781 tokens of context every time the server is loaded.

Is the com.threadlinqs/intelthreadlinqs-mcp server still maintained?

com.threadlinqs/intelthreadlinqs-mcp is still listed as active in the MCP registry. We last reached this channel on 21 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the com.threadlinqs/intelthreadlinqs-mcp server under?

com.threadlinqs/intelthreadlinqs-mcp declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.