Argus Event Search Translator MCP Tools#
These tools help the LLM express event-related search intent as valid Argus query JSON before execution.
They support:
building event search criteria and a shareable Argus portal search link
building event statistics criteria for counts, grouped buckets, and time-based timelines
looking up valid event flags, endpoint flags, and event search sort values
General Notes#
Use these tools when you want the LLM to prepare a valid event search or event statistics query from plain-language intent.
If the request involves event flags, endpoint flags, or event search sorting, the LLM can resolve allowed values with the list tools behind the scenes.
Allowed event flag, endpoint flag, and sort values are case-sensitive.
Search translation returns criteria plus a shareable link. Statistics translation returns only the statistics criteria.
If you want live Argus results after translation, the LLM can use the corresponding Event REST MCP tool with the same search or statistics intent.
Event statistics requests need at least one output instruction:
statistics.groupByorstatistics.timeRangeMetrics.
Tool: generateArgusEventSearchQuery#
Purpose
Generate an Argus event search query from event-search intent. The result contains:
searchCriteria: generated Event V2 search JSONsearchLink: shareable Argus portal link for the same search
Arguments
Field |
Description |
Type |
Default |
Required |
|---|---|---|---|---|
|
Event search definition the LLM builds from the request. |
|
None |
Yes |
|
Whether event properties should be included when searching and fetching results. |
|
|
Yes |
request Fields#
Field |
Description |
Type |
Default |
Required |
|---|---|---|---|---|
|
Match events associated with any of these case IDs. |
|
None |
No |
|
Attack-related criteria. Each item is one criterion. |
|
None |
No |
|
Match events belonging to any customer ID or short name. |
|
None |
No |
|
Match events with any of these domain names. |
|
None |
No |
|
Endpoint-related criteria for source or destination endpoints. |
|
None |
No |
|
Match event severity. Allowed values: |
|
None |
No |
|
Match specific event identifiers. |
|
None |
No |
|
Match event type. Allowed values: |
|
None |
No |
|
Time-based narrowing for the event search. |
|
|
No |
|
Event flags that matching events must contain. The LLM can look up allowed values. |
|
None |
No |
|
Event flags that matching events must not contain. The LLM can look up allowed values. |
|
None |
No |
|
Event property criteria. |
|
None |
No |
|
Pagination settings. |
|
|
No |
|
Search result sort order. Use list order as priority. Prefix with |
|
None |
No |
request.attack[] Fields#
Field |
Description |
Type |
Default |
Required |
|---|---|---|---|---|
|
Match events triggered by any of these alarms, using alarm ID or short name. |
|
None |
No |
|
Match events in any of these attack categories, using ID or short name. |
|
None |
No |
|
Match events triggered by any of these security signatures. |
|
None |
No |
|
Negate this attack criterion. |
|
|
No |
|
Require this criterion to match together with other criteria. |
|
|
No |
request.endpoint[] Fields#
Field |
Description |
Type |
Default |
Required |
|---|---|---|---|---|
|
Match endpoint country codes. |
|
None |
No |
|
Which endpoint side to search. Allowed values: |
|
|
No |
|
Match endpoint IPs or CIDR networks. Supports IPv4, IPv6, and CIDR notation. |
|
None |
No |
|
Minimum CIDR prefix length to match. Useful to exclude broad subnets. |
|
None |
No |
|
Match endpoint ports. |
|
None |
No |
|
Endpoint flags that must be present. The LLM can look up allowed values. |
|
None |
No |
|
Endpoint flags that must not be present. The LLM can look up allowed values. |
|
None |
No |
|
Negate this endpoint criterion. |
|
|
No |
|
Require this endpoint criterion to match together with other criteria. |
|
|
No |
request.timeFilter Fields#
Field |
Description |
Type |
Default |
Required |
|---|---|---|---|---|
|
Event time fields the range applies to. Allowed values: |
|
|
No |
|
Start of the time range. Accepts epoch millis as string, ISO-8601 UTC, or relative expressions such as |
|
|
No |
|
End of the time range. Accepts epoch millis as string, ISO-8601 UTC, or relative expressions such as |
|
|
No |
|
How to evaluate multiple |
|
|
No |
request.property[] Fields#
Field |
Description |
Type |
Default |
Required |
|---|---|---|---|---|
|
Property key to match. |
|
None |
Yes |
|
Property values to match against the key. |
|
None |
Yes |
|
How to combine multiple values. Allowed values: |
|
|
No |
|
How to compare each value. Allowed values: |
|
|
No |
|
Negate this property criterion. |
|
|
No |
|
Require this property criterion to match together with other criteria. |
|
|
No |
request.page Fields#
Field |
Description |
Type |
Default |
Required |
|---|---|---|---|---|
|
Maximum number of items per page. Accepted range: |
|
|
No |
|
Number of items to skip before returning results. Must be |
|
|
No |
Usage Notes
If event properties are needed in result rows, ask for properties explicitly so the LLM can enable
includeProperties.Event search pagination supports
1to100items per page.Descending sorting uses a
-prefix, for example-createdTimestamp.Event identifiers use the format
timestamp/customerID/eventID.
Tool: generateArgusEventStatisticsQuery#
Purpose
Generate an Argus event statistics query from event-statistics intent. The result is Event V2 statistics JSON that can be used to calculate counts, grouped buckets, and time-based timeline metrics.
Arguments
Field |
Description |
Type |
Default |
Required |
|---|---|---|---|---|
|
Event statistics definition the LLM builds from the request. |
|
None |
Yes |
request Fields#
Field |
Description |
Type |
Default |
Required |
|---|---|---|---|---|
|
Filters that select which events are included before statistics are calculated. |
|
Default event filter with created-time range from |
No |
|
Statistics outputs to calculate. Must include |
|
Empty object |
Yes |
request.filter Fields#
These filters use the same shape as event search filters, except there is no pagination, sorting, or includeProperties option.
Field |
Description |
Type |
Default |
Required |
|---|---|---|---|---|
|
Include events associated with any of these case IDs. |
|
None |
No |
|
Attack-related criteria. |
|
None |
No |
|
Include events for any customer ID or short name. |
|
None |
No |
|
Include events with any of these domain names. |
|
None |
No |
|
Endpoint-related criteria. |
|
None |
No |
|
Include event severities. Allowed values: |
|
None |
No |
|
Include specific event identifiers. |
|
None |
No |
|
Include event types. Allowed values: |
|
None |
No |
|
Time range selecting the event population for statistics. |
|
|
No |
|
Event flags that events must contain. The LLM can look up allowed values. |
|
None |
No |
|
Event flags that events must not contain. The LLM can look up allowed values. |
|
None |
No |
|
Event property criteria. |
|
None |
No |
request.statistics Fields#
Field |
Description |
Type |
Default |
Required |
|---|---|---|---|---|
|
Fields by which to group statistics. Order controls the aggregation hierarchy. |
|
None |
Required if |
|
Time-based timeline metrics to calculate over the filtered events. |
|
None |
Required if |
At least one of groupBy or timeRangeMetrics should be present for a meaningful statistics request.
request.statistics.groupBy[] Fields#
Field |
Description |
Type |
Default |
Required |
|---|---|---|---|---|
|
Event field to group by. Allowed values: |
|
None |
Yes |
|
Maximum number of distinct buckets for this group field. |
|
|
No |
request.statistics.timeRangeMetrics[] Fields#
Field |
Description |
Type |
Default |
Required |
|---|---|---|---|---|
|
Unique metric name for the timeline metric. If omitted, the generated query may create a name. |
|
Generated when omitted |
No |
|
Event timestamp field to bucket. Allowed values: |
|
None |
Yes |
|
Timeline bucket size. Allowed values: |
|
None |
No |
|
Whether empty time buckets should be included. |
|
None |
No |
Usage Notes
The statistics filter time range selects the events included in the calculation.
Timeline metric start and end timestamps follow the filter time range.
Grouping order matters. For example, grouping by
customerthenseveritycreates customer buckets with severity buckets inside each customer.Event statistics do not support numeric summary metrics; use
groupByandtimeRangeMetrics.Event statistics timeline fields are narrower than search time fields. For example,
publishedcan be used in search time filters but is not a valid timeline metric timestamp field.
Tool: listArgusEventFlags#
Purpose
Return allowed event flag values for event search and event statistics filtering.
Arguments
This tool takes no arguments.
Current Returned Values
established, blocked, partiallyBlocked, snapshot, finalized, falsePositive, notAThreat, tuningCandidate, notified, notifiedUnpublished, notifiedDeleted, followup, partiallyNotified, identifiedThreat, threatCandidate, acknowledged, partiallyAcknowledged, severityAdjusted, commented, filtered, checked, incompleteDetails, aggregatedBaseEvent, remoteStorage, hasDetails, hasPayload, hasPcap, associatedToCaseByFilter, severityIncreasedByFilter, severityReducedByFilter, createdByAnalysisFilter, extendEventTtl, initialTuning, postAnalysis, partialSslTerminated, sslTerminated, autoReport, missingTimestamp, clockOutOfSync, dropAnalysis, escalatedByReputation, hasSample, storeEvent, storeAggregated, handledByAnalyst, slaViolation, payloadTruncated, hasStringPayload, reassessed, eventFromOtEnvironment, eventFromRestrictedItEnvironment, failure
Tool: listArgusEndpointFlags#
Purpose
Return allowed endpoint flag values for endpoint filtering in event search and event statistics.
Arguments
This tool takes no arguments.
Current Returned Values
isCustomerNet, isPartialCustomerNet, customAggregation, isManagedBySoc
Tool: listArgusEventSearchSortBy#
Purpose
Return allowed sortBy values for event search.
Arguments
This tool takes no arguments.
Current Returned Values
customerID, eventID, createdTimestamp, lastUpdatedTimestamp, firstEventTimestamp, lastEventTimestamp