Source profileQuality 87/100

wyre-technology/msp-claude-plugins/msp-claude-plugins/abnormal/abnormal-security/skills/cases/SKILL.md

Abnormal Security Cases

Abnormal Security abuse mailbox cases: user-reported email submissions, case statuses and judgments, the case lifecycle, bulk and remediation actions, and phishing simulation handling.

Source repository stars
39
Declared platforms
0
Static risk flags
0
Last source update
2026-08-06
Source checked
2026-08-06

Decision brief

What it does—and where it fits

Abnormal Security abuse mailbox cases: user-reported email submissions, case statuses and judgments, the case lifecycle, bulk and remediation actions, and phishing simulation handling.

Best for

    Not for

    • Tasks that require unconfirmed production actions or broad system permissions.
    • Environments where the pinned source and install steps cannot be inspected.

    Compatibility matrix

    Platform support, with evidence labels

    PlatformStatusEvidenceWhat to check
    CodexNot declaredNo explicit evidencePortability before use
    Claude CodeNot declaredNo explicit evidencePortability before use
    CursorNot declaredNo explicit evidencePortability before use
    Gemini CLINot declaredNo explicit evidencePortability before use
    Open the compatibility checker

    Installation

    Inspect first. Install second.

    The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

    Source-detected install commandSource
    npx skills add https://github.com/wyre-technology/msp-claude-plugins --skill "msp-claude-plugins/abnormal/abnormal-security/skills/cases"
    Safe inspection promptEditorial

    Inspect the Agent Skill "Abnormal Security Cases" from https://github.com/wyre-technology/msp-claude-plugins/blob/c1011303bfd2a65abc9b260884d9858d1a482a6f/msp-claude-plugins/abnormal/abnormal-security/skills/cases/SKILL.md at commit c1011303bfd2a65abc9b260884d9858d1a482a6f. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

    Workflow

    What the source asks the agent to do

    1. 01

      Tool Usage Examples

      List cases from this month:

      List cases from this month:
    2. 02

      Standard Triage Workflow

      1. List open cases - Get all cases with overallStatus eq 'Open' 2. Sort by severity - Address critical and high severity first 3. Review AI judgment: - If Malicious: verify and remediate across organization - If Spam: dismiss or move to junk - If Safe: dismiss and respond to rep…

      List open cases - Get all cases with overallStatus eq 'Open'Sort by severity - Address critical and high severity firstReview AI judgment:
    3. 03

      Bulk Triage Workflow

      1. Filter cases by judgment - Start with cases judged as Malicious 2. Review Suspicious - Manually review cases without clear judgment 3. Batch the read, not the write - paginate abnormalcaseslist to build the full picture in one pass. There is no bulk case action to follow it w…

      Filter cases by judgment - Start with cases judged as MaliciousReview Suspicious - Manually review cases without clear judgmentBatch the read, not the write - paginate abnormalcaseslist to
    4. 04

      Anti-triggers

      A compromised mailbox rather than a reported email — sign-in

      A compromised mailbox rather than a reported email — sign-inThreats Abnormal found on its own — no user reported them, so noUser-reported phishing in a different platform — IRONSCALES runs
    5. 05

      Case Lifecycle

      Review the “Case Lifecycle” section in the pinned source before continuing.

      Review and apply the “Case Lifecycle” source section.

    Permission review

    Static risk signals and limitations

    No configured static risk pattern was detected

    This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.

    Evidence record

    Why each signal appears

    EvidenceSourceComputedTestedEditorial
    SignalValueEvidence typeMeaning
    Quality score87/100ComputedDocumentation, specificity, maintenance, and trust rules
    Repository stars39SourceRepository attention, not individual Skill quality
    Compatibility0 platformsSourceDeclared in the catalog source record
    Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

    Pinned source

    Provenance and original SKILL.md

    Repository
    wyre-technology/msp-claude-plugins
    Skill path
    msp-claude-plugins/abnormal/abnormal-security/skills/cases/SKILL.md
    Commit
    c1011303bfd2a65abc9b260884d9858d1a482a6f
    License
    Apache-2.0
    Collected
    2026-08-06
    Default branch
    main
    View the original SKILL.md

    Abnormal Security Abuse Mailbox Cases

    Overview

    Abnormal Security's Abuse Mailbox automatically processes user-reported suspicious emails. When users forward or report emails to a designated abuse mailbox address, Abnormal analyzes the reported message and creates a case with an AI-generated judgment. This skill covers case lifecycle, triage workflows, remediation actions, and bulk operations.

    Anti-triggers

    • A compromised mailbox rather than a reported email — sign-in anomalies, new inbox rules, and session revocation have no surface on this server at all; investigate identity in the M365 tenant, use cipp-users.
    • Threats Abnormal found on its own — no user reported them, so no case exists; use Abnormal Security Threats.
    • User-reported phishing in a different platform — IRONSCALES runs its own report-to-incident loop from its Outlook and Gmail add-ins, with separate IDs and its own classification verbs; use IRONSCALES Incidents.
    • A user who reported a simulated phish — campaign reporting rates belong to the training platform; use KnowBe4 Phishing.

    Case Lifecycle

    User Reports Email
           |
           v
      Case Created (status: Open)
           |
           v
      AI Analysis (judgment generated)
           |
           +---> Malicious   ---> Auto-Remediate (if configured)
           |
           +---> Suspicious  ---> Analyst Review Required
           |
           +---> Spam         ---> Auto-Dismiss (if configured)
           |
           +---> Safe         ---> Auto-Dismiss (if configured)
           |
           v
      Analyst Action
           |
           +---> Remediate (quarantine/delete across org)
           |
           +---> Mark Not Spam (release to inbox)
           |
           +---> Dismiss (close case, no action)
           |
           v
      Case Closed (status: Done)
    

    Case Field Reference

    Core Fields

    FieldTypeDescription
    caseIdnumberUnique case identifier — numeric, unlike threatId
    severitystringSeverity level of the case
    affectedEmployeestringEmail address of the user who reported
    firstReporteddatetimeWhen the case was first reported

    Judgment Fields

    FieldTypeDescription
    overallStatusstringCase status: Open, Acknowledged, Done
    judgmentStatusstringAI judgment: Malicious, Spam, Safe, No Action Needed
    customerVisibleTimedatetimeWhen the case became visible in portal

    Reported Message Fields

    FieldTypeDescription
    reportedMessage.subjectstringSubject of the reported email
    reportedMessage.senderAddressstringSender of the reported email
    reportedMessage.senderNamestringDisplay name of the sender
    reportedMessage.recipientAddressstringRecipient of the reported email
    reportedMessage.receivedTimedatetimeWhen the reported email was received
    reportedMessage.attackTypestringDetected attack type (if malicious)

    Case Judgments

    JudgmentDescriptionRecommended Action
    MaliciousConfirmed threat (BEC, phishing, malware)Remediate across organization
    SpamUnsolicited bulk email, marketingDismiss or move to junk
    SafeLegitimate email, no threat detectedDismiss, notify user it is safe
    No Action NeededPhishing simulation or already remediatedDismiss

    MCP Tools

    The cases domain is read-only. Two tools, both GETs. There is no tool that changes a case's state, assigns it to an analyst, dismisses it, or closes it. Case state changes happen in the Abnormal portal, not through this server — an agent can read and reason about a case, then it has to hand the actual disposition to a human in the UI.

    ToolDescriptionParameters
    abnormal_cases_listList casespageSize (default 100, max 100), pageNumber (1-indexed), filter (OData string)
    abnormal_cases_getGet one case by IDcaseId (required, number)

    There is no date-range parameter. Narrow by time through the OData filter string: createdTime gt 2026-03-01T00:00:00Z.

    ID vocabulary

    caseId is a number12345, not "12345". The neighbouring threatId used by abnormal_threats_get is a UUID string. Both are called "the ID" in conversation and they are not interchangeable; a threat UUID passed to abnormal_cases_get is a type error, not a lookup miss.

    The one action this server can take on the mail behind a case is message remediation, and it is reached through the threat, not the case: abnormal_remediation_manage needs a threatId and a messageId, and a caseId is neither.

    Tool Usage Examples

    List cases from this month:

    {
      "tool": "abnormal_cases_list",
      "parameters": {
        "filter": "createdTime gt 2026-03-01T00:00:00Z",
        "pageSize": 25
      }
    }
    

    Get case details:

    {
      "tool": "abnormal_cases_get",
      "parameters": {
        "caseId": 12345
      }
    }
    

    Triage Workflows

    Standard Triage Workflow

    1. List open cases - Get all cases with overallStatus eq 'Open'
    2. Sort by severity - Address critical and high severity first
    3. Review AI judgment:
      • If Malicious: verify and remediate across organization
      • If Spam: dismiss or move to junk
      • If Safe: dismiss and respond to reporter
      • If No Action Needed: dismiss (likely phishing simulation)
    4. Decide - produce the disposition and the evidence for it
    5. Hand off - the case's own state (Open → Acknowledged → Done) can only be changed in the Abnormal portal. If mail still needs pulling from inboxes, that runs through the threat: abnormal_messages_list then abnormal_remediation_manage per message.

    Bulk Triage Workflow

    1. Filter cases by judgment - Start with cases judged as Malicious
    2. Review Suspicious - Manually review cases without clear judgment
    3. Batch the read, not the write - paginate abnormal_cases_list to build the full picture in one pass. There is no bulk case action to follow it with; dispositions are entered in the portal one at a time.

    Escalation Criteria

    Escalate a case when:

    • Multiple users report the same email
    • The reported email impersonates an executive
    • The email contains active malware or ransomware
    • Credentials may have been entered on a phishing page
    • The sender is a known vendor or partner (supply chain risk)

    Case Actions — where they actually happen

    The dispositions below are portal actions. None of them is an MCP tool, and none can be driven from this server.

    DispositionEffectWhere
    RemediateRemove the email from recipients' inboxesAbnormal portal — or, per message, via abnormal_remediation_manage on the underlying threat
    Mark not spamRelease email back to inboxAbnormal portal only
    DismissClose case without actionAbnormal portal only

    The gap matters for automation design: an agent can fully triage the queue from abnormal_cases_list and abnormal_cases_get, but the case stays Open until a human touches the portal. Write the handoff into the workflow rather than assuming the agent closed anything.

    Error Handling

    Common API Errors

    CodeMessageResolution
    400Invalid filterCheck OData filter syntax
    401UnauthorizedCheck API token
    403Insufficient permissionsToken needs abuse mailbox scope
    404Case not foundVerify the case ID — and that you passed a numeric caseId, not a threat UUID
    429Rate limitedWait and retry

    Best Practices

    1. Triage daily - Review abuse mailbox cases at least once per day
    2. Trust the AI judgment - Abnormal's accuracy is high; use it to prioritize
    3. Remediate every message, not "the case" - remediation is per message on the underlying threat; loop abnormal_remediation_manage and confirm each one, or you will leave the campaign half-pulled
    4. Respond to reporters - Let users know their report was reviewed
    5. Track phishing simulation reports - Monitor security awareness training effectiveness
    6. Correlate with threats - Check if reported emails match known threat campaigns
    7. Monitor false positive rate - High FP rates may indicate policy tuning needed

    Related Skills

    Alternatives

    Compare before choosing

    Computed 10023,881

    alirezarezvani/claude-skills

    app-store-optimization

    App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist

    Computed 10014,540

    prowler-cloud/prowler

    postgresql-indexing

    PostgreSQL indexing best practices for Prowler: index design, partial indexes, partitioned table indexing, EXPLAIN ANALYZE validation, concurrent operations, monitoring, and maintenance. Trigger: When creating or modifying PostgreSQL indexes, analyzing query performance with EXPLAIN, debugging slow queries, reviewing index usage statistics, reindexing, dropping indexes, or working with partitioned table indexes. Also trigger when discussing index strategies, partial indexes, or index maintenance

    Computed 10014,306

    wanshuiyin/Auto-claude-code-research-in-sleep

    citation-audit

    Use it for operations and research tasks; the detail page covers purpose, installation, and practical steps.

    Computed 9832,785

    K-Dense-AI/scientific-agent-skills

    dask

    Distributed computing for larger-than-RAM pandas/NumPy workflows. Use when you need to scale existing pandas/NumPy code beyond memory or across clusters. Best for parallel file processing, distributed ML, integration with existing pandas code. For out-of-core analytics on single machine use vaex; for in-memory speed use polars.