SecurityAnalytics & Monitoring

Analytics & Monitoring

Every SproutOS tool call is logged automatically. Monitor AI activity, set up notifications, export logs, and control what data is collected.

Every ability your AI runs is logged automatically - no setup required. The Analytics tab gives you a live view of what your AI has done, how long it took, and whether anything failed. You can also set up email or webhook notifications and control exactly what data gets stored.


Here's how each part works and how to configure it.

What's in the Analytics Dashboard?

Go to SproutOS > Analytics to see your dashboard.

Six stat cards give you a quick summary:

CardWhat It Shows
Total CallsCumulative ability call count
Calls TodayCalls in the last 24 hours
Failed CallsError count (shown in red when above zero)
Unique SessionsDistinct session count
Unique UsersDistinct WordPress user count
Most Used AbilityTop ability by call count

Below the cards, the Activity Feed groups calls by session. Expand any session to see individual entries - each one shows the risk level, ability name, execution time in milliseconds, and an error badge if it failed.

Risk levels:

  • readonly - read only, no changes made
  • additive - new content created
  • destructive - content modified or deleted
  • unknown - risk level not determined

How do I export or clear my logs?

From SproutOS > Analytics:

  • Export as CSV - downloads the full activity log for offline review or sharing with your team
  • Purge all logs - clears everything with one click

Log retention is configurable. Go to SproutOS > Settings and set analytics_retention_days to control how long entries are kept. A daily cron job prunes old entries automatically.

How do I set up email notifications?

Get a summary of AI activity delivered to your inbox.

Open Settings

Go to SproutOS > Settings and find the Email Notifications section.

Choose a frequency

Select Every Session to get a summary after each AI session, or Daily Digest for a once-a-day summary. Set to Off to disable.

Set a recipient

Enter the email address where notifications should be sent.

Each notification includes a summary of abilities called, success count, and error count.

How do I set up webhook notifications?

Send real-time notifications to Slack, Discord, or any custom endpoint when abilities run.

Open Settings

Go to SproutOS > Settings and find the Webhook Notifications section.

Add your endpoint

Enter your Slack webhook URL, Discord webhook URL, or any custom HTTPS endpoint.

Choose an event filter

Select what triggers a notification:

  • All ability calls - every tool call
  • Destructive only - only write, edit, or delete operations
  • Errors only - only failed calls

Test it

Click Send Test to confirm your endpoint is receiving payloads correctly.

Webhook payloads are signed with HMAC using the X-Sprout-Signature header. Add a webhook_secret in Settings to verify payloads on your endpoint.

How do I control what data is collected?

Go to SproutOS > Settings and find the Analytics Data Collection section.

ToggleWhat It Controls
Store IP addressesCaptures the MCP caller's IP address
Anonymize IPMasks the last octet (e.g., 192.168.1.xxx)
Store user identityLinks log entries to a WordPress user ID
Store full request bodySaves the complete JSON input for each call
Store full response bodySaves the complete JSON output for each call

The Data Summary Table at the bottom of Settings shows a live view of what's collected, where it goes (AI client, database, webhook), and what each toggle affects.

What does SproutOS share with my AI upfront?

SproutOS sends basic site context to your AI at the start of each session. You control what it includes. From SproutOS > Settings, toggle each item:

  • WordPress version
  • PHP version
  • Active theme name and version
  • Elementor version (only shown when Elementor is active)
  • List of active plugins with versions

Turn off anything you don't want your AI client to know about upfront.

Frequently Asked Questions

Next Steps