Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/threadlinqs-cmd/intelthreadlinqs-mcp/skillnpx skills add threadlinqs-cmd/intelthreadlinqs-mcp --skill skillgit clone --depth 1 https://github.com/threadlinqs-cmd/intelthreadlinqs-mcpWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00285 | $0.02751 |
| Opus 5 | $0.00143 | $0.01375 |
| Sonnet 5 | $0.00057 | $0.00550 |
| Haiku 4.5 | $0.00028 | $0.00275 |
Grade A, and why
intelthreadlinqs-mcp-skill scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 183 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Threadlinqs Intelligence MCP
81 tools over a curated threat-intelligence corpus. This skill exists because the naive
path through those tools is expensive and often wrong: an agent that reaches for
get_threat and then chains four follow-ups is doing by hand what one composite tool does
in a single call, and an agent that guesses an enum value gets an empty result rather than
an error and reports "nothing found" when the answer was there all along.
Read this before your first call. The routing table below is the part that matters.
Tool names may be prefixed by your host. Claude Code exposes
mcp__threadlinqs-intel__get_threat, Claude Desktop exposesget_threat, the remote connector uses another prefix again. This document writes bare names — match by suffix.
Access, in one paragraph
Tool calls require a Purple or Gold key (tier ≥ 3) in THREADLINQS_API_KEY.
Introspection over MCP (tools/list) is gated too, but the HTTP twins
GET /mcp/catalog.json and GET /mcp.md are public, which is how registries index the
server without a key. There is no free tier for the data. If you have no key, say so and
point at https://intel.threadlinqs.com/profile — new accounts get a 7-day Purple trial.
See references/setup.md for per-host install.
Before your first call
- Call
get_startedonce. It returns the tool catalog, categories and tiering, and costs no database round-trip. - Call
hunt_schemaonly if an aggregate question is coming — then cache it for the session. It is the field grammar forhunt, and you cannot write a valid query without it. - Call
get_engine_statusonly if you are about to reason over correlation output. A stale engine is a caveat on every correlation answer you give.
Do not reflexively open with get_platform_stats + list_threat_categories + health.
That is three calls of ceremony before you have learned anything.
Routing — what to call first
| You have / user asks | First call | Then, only if needed |
|---|---|---|
| Threat ID + a hunting or scoping question | get_threat_hunting_bundle |
get_threat_enrichment, get_detection_detail |
| Threat ID, just want the record | get_threat |
get_threat_bundle |
| 2–20 threat IDs | bulk_get_threats |
— |
| Actor name or alias | get_actor_intelligence |
get_attribution_evidence, export_attack_navigator |
| A name you are not sure resolves | resolve_entity |
then the matching pivot below |
| An exact IOC value | get_ioc_intelligence |
get_ioc_blast_radius, get_ioc_dns, get_infrastructure_pivots |
| An IOC substring / partial | search_iocs |
— (narrow it; paging is not honored) |
| CVE ID | get_cve_intelligence |
get_cwe, bulk_get_cves |
| "What should we patch first?" | search_vulnerabilities with kev / epss_min |
get_cve_intelligence on the top few |
| Malware family | get_malware_intelligence |
resolve_entity if the name is ambiguous |
| Offensive tool | get_tool_intelligence |
resolve_entity |
| Named campaign | get_campaign_intelligence |
get_graph_campaigns for engine-derived clusters |
| ATT&CK technique | get_mitre_technique |
predict_mitre_transitions, get_technique_rules |
| "What do we detect / not detect?" | get_mitre_coverage → get_mitre_gap_analysis |
search_detections |
| "Are these two threats related?" | explain_correlation |
get_correlation_path |
| "What is around this entity?" | get_entity_profile |
get_correlation_subgraph at depth 1 |
| Any count / group-by / cross-type question | hunt_schema once → hunt |
— |
| Conceptual question, keywords already failed | search_corpus_semantic |
— |
| "What happened today?" | get_daily_intel_bundle |
list_debriefs → get_debrief |
| "Block this" | generate_c2_blocklist |
get_c2, get_c2_dns_intel |
| "Feed my TIP / SIEM" | export_stix, export_attack_navigator, export_detection |
— |
What ships with it
6 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 183 lines · 285 tokens per session scan A 798451628a5e
intelthreadlinqs-mcp-skill is a skill published in the GitHub repository threadlinqs-cmd/intelthreadlinqs-mcp (0 stars, last pushed 9d ago), licensed MIT. It adds 285 tokens to every session and 2,751 once invoked, about $0.0014 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
analyzing-campaign-attribution-evidence
Systematically evaluate cyber-campaign evidence to attribute an operation to a threat actor, using the Diamond Model and Analysis of Competing Hypotheses (ACH) to weigh infrastructure overlaps, TTP consistency, malware code similarity, and timing/language artifacts into confidence-weighted attribution assessments. Use…
Threat Hunting & IOC Analysis
IOC extraction, threat intelligence correlation, MITRE ATT&CK mapping, hunt hypothesis generation, and detection rule creation.
enriching-iocs-with-threat-intel-sources
Enriches indicators with context from threat-intel sources: planning lookups against reputation, passive DNS, WHOIS, and sandbox/sample databases, scoring confidence, and avoiding operational-security mistakes that tip off adversaries. Activates for requests to enrich IOCs, add threat context, or plan indicator…
defanging-and-sharing-iocs
Prepares indicators of compromise for safe sharing: defanging URLs, domains, IPs, and emails so they cannot be accidentally clicked or resolved, and formatting them into STIX/CSV/MISP-friendly output. Activates for requests to defang IOCs, sanitize indicators for a report, or export indicators for sharing.
extracting-and-classifying-strings
Extracts ASCII and Unicode strings from a binary and classifies them into investigative categories: URLs, IPs, file paths, registry keys, mutexes, commands, and API names, prioritizing the analyst's attention. Activates for requests to extract strings, classify strings output, or pull human-readable artifacts from a…
extracting-iocs-from-analysis-output
Extracts indicators of compromise from raw analysis artifacts: parsing strings dumps, sandbox reports, PCAP summaries, and logs for URLs, domains, IPs, hashes, mutexes, and file paths, then deduplicating and typing them. Activates for requests to extract IOCs from analysis output, pull indicators from a report, or…