Skip to content

feat: add alert management tools#90

Open
ghazifelhi wants to merge 2 commits into
livehybrid:mainfrom
anyshift-engineering:feat/alert-tools
Open

feat: add alert management tools#90
ghazifelhi wants to merge 2 commits into
livehybrid:mainfrom
anyshift-engineering:feat/alert-tools

Conversation

@ghazifelhi
Copy link
Copy Markdown

Add 4 new MCP tools for Splunk alert management:

  • list_alerts: List saved searches configured as alerts with severity, actions, schedule
  • get_alert: Get full alert configuration including per-action settings
  • list_fired_alerts: List all fired alert groups sorted by trigger count
  • get_fired_alert_details: Get individual triggered alert instances with timing and severity

Uses splunklib's existing SavedSearch.fired_alerts and service.fired_alerts APIs. Includes 6 new tests with comprehensive mock fixtures.

ghazifelhi and others added 2 commits March 23, 2026 12:08
Add 4 new MCP tools for Splunk alert management:
- list_alerts: List saved searches configured as alerts with severity, actions, schedule
- get_alert: Get full alert configuration including per-action settings
- list_fired_alerts: List all fired alert groups sorted by trigger count
- get_fired_alert_details: Get individual triggered alert instances with timing and severity

Uses splunklib's existing SavedSearch.fired_alerts and service.fired_alerts APIs.
Includes 6 new tests with comprehensive mock fixtures.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…d_alerts

service.fired_alerts returns only a catch-all '-' group when accessed
through MCP proxy, making it unusable. Instead, iterate saved_searches
and filter by alert_count > 0, which reliably returns named alerts
with their trigger counts.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant