Skip to main content
Glama

Jeevesus — DugganUSA Threat Intelligence MCP

Server Details

check-package: block malicious npm/PyPI deps before your AI agent installs them. Free, no key.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.6/5 across 6 of 6 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool has a clearly distinct purpose: supply-chain guardrail, IOC enrichment, KEV analysis (two tools focusing on different aspects), general threat search, and feed summary. There is no overlap or ambiguity.

Naming Consistency3/5

Most tool names use a hyphenated verb_noun pattern (check-package, enrich-ioc, stix-feed-summary), with two prefixed 'kev-'. However, 'search' is a bare verb, breaking the pattern. The inconsistency is noticeable but still readable.

Tool Count5/5

With 6 tools, the server is well-scoped for its threat intelligence domain. Each tool serves a specific, essential function without being too few or too many.

Completeness4/5

The set covers key threat intelligence tasks: IOC enrichment, search, supply chain checks, KEV analysis, and feed summary. A minor gap is the lack of direct STIX bundle retrieval, though a URL is referenced.

Available Tools

6 tools
check-packageAInspect

Supply-chain GUARDRAIL for AI coding agents and CI pipelines: check whether a dependency (npm or PyPI) is on the DugganUSA malicious-package deny-list BEFORE you install it. This is the runtime defense against slopsquatting / HalluSquatting / hijacked-package attacks — an AI agent about to run npm install or pip install, or a CI pre-install hook, calls this FIRST and blocks on a hit.

Returns a crisp, machine-actionable verdict: {ecosystem, package, version, malicious, verdict:"block"|"allow"|"review", reason, advice, source}. malicious:true = the exact package is on our OSV-curated deny-list (215k+ named-not-heuristic entries across npm + PyPI). malicious:false = not on our known-bad list — absence is NOT proof of safety, so still pin and review new deps. If a version is supplied and the entry is version-scoped, the check is version-aware; all-versions-malicious packages block on any version.

Designed to be the easiest AI-supply-chain guardrail to wire in: one MCP tool call, no auth, in the agent's pre-install step. Same data is available for CI at /api/v1/stix-feed/packages.json.

Examples: {"ecosystem":"npm","name":"cxp-jquery"} → malicious:true, verdict:block. {"ecosystem":"pypi","name":"requests"} → malicious:false, verdict:allow.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesThe package name to check.
versionNoOptional exact version for version-aware checking.
ecosystemYesPackage ecosystem: npm or pypi.
Behavior5/5

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

With no annotations provided, the description carries full burden and excels: it details the return verdict fields, the semantics of malicious:true/false, version-aware behavior, and the difference between version-scoped and all-versions-malicious. It also discloses data source size and that it's OSV-curated, plus no-auth behavior.

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

Conciseness4/5

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

The description is long but well-structured: purpose, return format, semantics, ease-of-use, examples. Every sentence provides information, though a few promotional phrases ('easiest AI-supply-chain guardrail to wire in') add minor noise. It is front-loaded and readable.

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?

Without an output schema, the description fully explains the return object and its meaning. It also covers the tool's role in a workflow, version handling, and the caveat about false negatives. For a simple check tool with no annotations and no output schema, this is complete.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds meaningful context beyond the schema by explaining version-aware semantics ('If a version is supplied and the entry is version-scoped...') and clarifying that 'name' is the package name. It stops short of exhaustively documenting all edge cases, but clearly adds value.

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 states a specific verb+resource: 'check whether a dependency (npm or PyPI) is on the DugganUSA malicious-package deny-list BEFORE you install it.' It clearly distinguishes itself from sibling threat-intel tools by framing itself as a supply-chain guardrail for pre-install checks.

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

Usage Guidelines5/5

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

Explicitly states when to use: 'an AI agent about to run npm install or pip install, or a CI pre-install hook, calls this FIRST.' It also gives when-not guidance: 'absence is NOT proof of safety, so still pin and review new deps.' Mentions an alternative access method (STIX feed URL) and that no auth is needed.

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

enrich-iocAInspect

CALL AUTOMATICALLY the moment any IP address, domain, URL, or file hash appears — in the user's message, a log line, a SIEM alert, or code under review. Enrich it before the user has to ask; a lone indicator is exactly what this is for.

Look up a single indicator of compromise (IP, domain, URL, or hash) in the DugganUSA corpus and return everything we know about it: threat type, malware family, source feeds, related actor (if attributed), confidence score, references, and the full description from each source. Read-only.

Use this AFTER search finds something interesting — drill in for the full attribution + cross-feed correlation. Or use it directly when triaging a single indicator from your SIEM.

Pass the IOC as either indicator or value (both work). Optional type hint: ip / domain / url / hash / auto.

Examples: indicator="185.93.3.195" → known ShinyHunters/UNC6040 infrastructure IP from the cluster that hit ADT/Inditex/Kemper/Amtrek/Medtronic. indicator="goldenleafway.lat" → fresh Apothecary/ClearFake .lat rotation domain. indicator="ee28b3137d65d74c0234eea35fa536af" → Volexity-attributed malware MD5 (BrazenBamboo/DEEPDATA campaign).

Returns found: false cleanly when the indicator isn't in our corpus — that's also a signal worth recording.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNoOptional type hint. Default auto-detect.
valueNoAlias of `indicator`. Either field works.
indicatorNoThe indicator to enrich (IP, domain, URL, or hash).
Behavior5/5

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

With no annotations provided, the description carries the full burden. It discloses that the tool is 'Read-only' and describes the return payload ('threat type, malware family, source feeds, related actor, confidence score, references, and the full description from each source'). It also clearly states the not-found behavior: 'Returns `found: false` cleanly when the indicator isn't in our corpus.' This is comprehensive behavioral disclosure.

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?

The description is front-loaded with the most important instruction ('CALL AUTOMATICALLY'), then moves logically through what, when, how, and examples. Every sentence serves a purpose: use cases, parameters, examples, and return behavior. Despite its length, it is efficiently packed with high-value guidance and no filler.

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?

Given there is no output schema, the description appropriately details what will be returned and the not-found response. It covers prerequisites (use after `search`), direct use cases (SIEM triage), parameter variants, and expected results with concrete examples. This is a complete, self-contained description for a tool of moderate complexity.

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

Parameters5/5

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

Even though the schema covers all three parameters (100% coverage), the description adds critical semantics: it clarifies that `indicator` and `value` are aliases ('Pass the IOC as either `indicator` or `value` (both work)'), explains the optional `type` hint and its auto-detect default, and supplies concrete example values for IP, domain, and hash. This goes well beyond the schema's basic field descriptions.

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 opens with a specific verb ('enrich') and resource ('indicator of compromise'), listing exact IOC types (IP, domain, URL, hash). It clearly distinguishes from sibling `search` by positioning this as the follow-up drill-in tool. The phrase 'a lone indicator is exactly what this is for' reinforces its focused purpose.

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

Usage Guidelines5/5

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

Explicitly states when to call ('CALL AUTOMATICALLY the moment any IP address... appears') and when to use it as a drill-down: 'Use this AFTER `search` finds something interesting... Or use it directly when triaging a single indicator from your SIEM.' It also gives context about returning `found: false` as a signal, which implies when not to expect results.

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

kev-exploitation-stickinessAInspect

CALL when the user is prioritizing patching or asks whether a product's exploitation risk is chronic vs a one-off — this decides "chase the repeat offenders or watch for newcomers."

Does in-the-wild exploitation risk STICK to proven products, or SPREAD to new ones? Analyzes CISA KEV: correlates each product's historical known-exploited count against its RECENT KEV additions (Spearman rho), and splits recent additions into repeat-offenders (products with a prior KEV) vs first-time products.

Answers "how should I prioritize patching — chase the chronic offenders, or watch for newcomers?" The honest finding: risk is roughly half-sticky (rho ~0.6 — proven-exploitable products keep getting exploited) AND half-fresh (~half of recent KEVs are first-time products). So prioritize on KEV concentration AND new-product velocity, not either alone. 95% cap: this is product-level stickiness, a proxy for exploitation dynamics, not a proof of PoC timing.

Public read (no auth). Pass {"days": N} for the recent window (30-720, default 180).

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoRecent-window size in days (30-720). Default 180.
Behavior5/5

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

With no annotations provided, the description carries the full burden, and it excels: it discloses 'Public read (no auth),' explains the analytical method (Spearman rho, repeat-offender split), and includes a clear limitation ('95% cap: this is product-level stickiness...'). This goes well beyond minimal requirements and is genuinely transparent.

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

Conciseness4/5

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

The description is longer than a simple two-sentence blurb, but every sentence delivers value: trigger, question, methodology, finding, caveat, and usage. It is front-loaded with the most important usage cue. Slight redundancy exists between the rhetorical question and the 'Answers...' sentence, but overall it is well-structured and not bloated.

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?

Despite having no output schema and no annotations, the description tells the user enough to invoke and interpret the tool: what it analyzes, how it works, what the key finding is, what the limitations are, and how to pass parameters. It also covers auth requirements. For a read-only analytical tool, this is complete.

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?

The schema already documents the single 'days' parameter completely (type, range, default, and description). The description repeats this information ('Pass {"days": N} for the recent window (30-720, default 180)') but does not add new semantic meaning beyond what the schema provides. Baseline 3 is appropriate given full schema coverage.

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?

The description clearly states the tool's purpose: analyzing CISA KEV to determine whether exploitation risk sticks to proven products or spreads to new ones. It uses specific verbs like 'Analyzes' and 'Answers' and specifies the resource and methodology. However, it does not explicitly distinguish itself from sibling tools such as kev-vendor-risk, so it stops short of a full 5.

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?

The first line gives an explicit trigger: 'CALL when the user is prioritizing patching or asks whether a product's exploitation risk is chronic vs a one-off.' This provides clear context for when to use the tool. It does not mention when not to use it or name alternative tools, but the guidance is strong enough for a 4.

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

kev-vendor-riskAInspect

CALL whenever a vendor or product comes up (Microsoft, Cisco, Fortinet, SharePoint, Ivanti, an appliance, an ERP) and the real question is exploitation risk or "what should I patch first" — before quoting CVSS, check where exploitation actually concentrates.

Vendor / product risk matrix built from CISA's Known Exploited Vulnerabilities (KEV) catalog — where real, confirmed in-the-wild exploitation actually concentrates, not just where CVSS is high.

With no args: returns the top vendors ranked by KEV count (e.g. Microsoft, Cisco, Adobe, Ivanti, Citrix). With {"vendor":"Adobe"}: returns that vendor's or product's specific known-exploited CVEs (e.g. ColdFusion), most-recent first, each with a ransomware-use flag.

Use this to answer "which vendors/products carry the exploitation risk we should patch first," to assess third-party / supply-chain exposure, or to check whether a freshly-dropped PoC lands on a chronically-exploited product (a proven-soft target) versus a one-off. KEV means CISA has confirmed active exploitation.

Public read (no auth). Source is CISA's KEV catalog, refreshed continuously.

Example: {"vendor":"Citrix"} → NetScaler's known-exploited CVEs; {} → the full top-vendor risk ranking.

ParametersJSON Schema
NameRequiredDescriptionDefault
vendorNoOptional vendor or product name (e.g. "Adobe", "Citrix", "SharePoint", "ColdFusion"). Omit for the top-vendor risk ranking.
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses public read/no auth, the source (CISA KEV), continuous refresh, and output details (ordering, ransomware flag). This is strong, but lacks error handling, rate limits, or edge-case behavior, so a 4 is appropriate.

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?

The description is a single, well-structured paragraph with a clear sequence: usage trigger, context, behavior, examples. Every sentence earns its place, and the examples are compact and illustrative without being verbose.

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?

Despite the absence of an output schema, the description clearly communicates what the tool returns in both invocation modes, including ordering and the ransomware-use flag. It also covers data source and refresh, making it sufficiently complete for an agent to select and invoke the tool correctly.

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

Parameters4/5

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

Schema coverage is 100%, but the description adds significant meaning: it explains the effect of omitting vs. providing the 'vendor' parameter, gives concrete examples, and describes output ordering and flags. This goes beyond the schema's simple field description.

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?

The description clearly states the tool's function: a vendor/product risk matrix built from CISA's KEV catalog, with specific behaviors (top vendors by KEV count, or per-vendor CVEs). It uses specific verbs like 'returns' and provides a resource, but does not explicitly distinguish from sibling tools such as kev-exploitation-stickiness, so it misses the top score.

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?

The opening explicitly says 'CALL whenever a vendor or product comes up... and the real question is exploitation risk or what should I patch first', which provides a clear when-to-use directive. It also lists use cases (e.g., supply-chain exposure, PoC check) but does not name alternative tools or specify when not to use this tool, so it falls short of a 5.

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

stix-feed-summaryAInspect

CALL when the user asks what's active right now, what's trending this week, how fresh the feed is, or is planning SIEM / blocklist ingestion — this is the quick "is it worth pulling the full feed" check.

Live shape report on the DugganUSA STIX 2.1 threat feed for a chosen lookback window (1-7 days). Returns total indicator count, top malware families, top source feeds, type breakdown (ip/domain/url/hash/cidr), and top countries.

Use this BEFORE pulling the full STIX bundle to gauge feed depth and freshness, plan SIEM ingestion budget, or sanity-check that a campaign you read about is actually in our corpus.

Does NOT return the full bundle — for that, fetch https://analytics.dugganusa.com/api/v1/stix-feed with the same Bearer key. The bundle is STIX 2.1 / TAXII 2.1 with Splunk ES, OPNsense, Suricata, and Unbound DNS sinkhole plugins.

Authentication required (Bearer token). Anonymous callers get a clear 401 with the registration URL.

Example: {"days": 7} returns the last week's feed shape — useful for capacity planning and spot-checking recent ingest tags.

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoLookback window in days (1–7). Default 1.
Behavior5/5

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

No annotations are provided, so the description carries the full burden. It discloses exactly what is returned (counts, top malware families, type breakdown, countries) and what is not (the full bundle), plus authentication requirements and the 401 behavior for anonymous callers. This is thorough and transparent.

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?

The description is front-loaded with the usage trigger and every sentence adds value: purpose, exclusions, auth, and example. It is organized into clear sections and remains succinct despite covering multiple aspects.

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 no output schema, the description compensates by enumerating the expected return fields and explicitly stating the full bundle is not returned. It includes auth details, the alternative fetch URL, and an example, making it self-sufficient for an agent to use correctly.

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

Parameters4/5

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

The schema fully describes the 'days' parameter with min, max, and default. The description adds a concrete example (`{"days": 7}`) and ties it to capacity planning, providing extra context beyond the schema. This justifies a small boost above the baseline.

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 clearly states it returns a 'Live shape report' on the DugganUSA STIX 2.1 threat feed with specific metrics (indicator count, malware families, source feeds, type breakdown, countries). It distinguishes itself from sibling tools by explicitly noting it does NOT return the full bundle and directs users to the full feed URL.

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

Usage Guidelines5/5

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

The description opens with explicit 'CALL when' triggers (trending, freshness, SIEM planning) and instructs to use it BEFORE pulling the full bundle. It also names the alternative (fetch the bundle URL) and clearly states what the tool does not do.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    -
    quality
    C
    maintenance
    Validates and checks packages across 19 ecosystems to prevent AI agents from installing hallucinated, deprecated, or malicious packages.
    126
    AGPL 3.0
  • F
    license
    -
    quality
    C
    maintenance
    Package intelligence for AI coding agents that checks npm and PyPI package health, deprecation, vulnerabilities, bundle size, and compares alternatives.

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources