June was about finishing touches. The fun part. Node.js support, which we previewed in May, is live. Anomaly detection graduated with a rebuilt algorithm, per-monitor controls, and access from the API, CLI, and MCP server.
We also kept pulling on the same thread from recent months: Scout data should be reachable from wherever you actually work. The MCP server now covers historical insights, anomaly events, and 30-day metrics. Discord is a notification channel. The CLI has scout anomalies.
Node.js Is Live
The Node.js agent is out. Express 4 and 5, NestJS 10+, Prisma 6+, PostgreSQL, MySQL, MongoDB, Redis, outbound HTTP. Error monitoring is on by default. Uncaught exceptions and unhandled rejections show up linked to the request trace that produced them.
N+1 detection works the same way it does on Rails and Django. Scout flags patterns where the same query template fires inside a loop, with the code location, query count, and total time cost. Prisma 6 gives native tracing via traceparent, so there is no monkey-patching involved.
Setup is quick and what you would expect from Scout: install, add middleware, deploy.
Read the full Node.js announcement.
Anomaly Detection: Controls and API Access
If you want to know when an endpoint starts behaving differently without setting up a threshold alert, that’s what anomaly detection is for.
When you enable monitoring on an endpoint, you don’t start with a blank slate. Scout immediately analyzes the past week of that endpoint’s history and surfaces any anomalies it finds as retrospective events on the chart. You can see what the monitor would have caught, tune the sensitivity, and get a feel for how it behaves before the next real incident. From that point on, Scout scans every minute. Give it about 30 minutes of traffic to establish a baseline and it will start flagging new anomalies as they happen.
This month the detection algorithm improved and controls got more granular. Z-scores are now calibrated in log space for more accurate results on endpoints with skewed response time distributions, and zero-value no-traffic buckets are excluded so low-traffic windows stop producing false positives. Each monitor now has its own configurable duration threshold with a live preview, and the sensitivity gauge on the settings page shows where you are set relative to your app’s normal range.
Anomaly events are available via the REST API, the hosted MCP server, and scout anomalies in the CLI.
We’re enabling this for orgs in beta now. If you want to see what it surfaces in your app, reach out at support@scoutapm.com and we’ll get you set up. We’d love to hear what you find.
See the docs for more information.
MCP Server: Historical Insights, 30-Day Metrics, and Anomaly Events
The MCP server got a boost for teams doing regular reporting and deeper investigation. Three additions this month:
Historical insights. get_app_insights_history lets your assistant pull N+1 queries, memory bloat, slow queries, and anomalies over any date range. Where get_app_insights gives a live snapshot of roughly the last 7 days, the history tool returns insights active during your chosen window, including ones that started before the window opened.
30-day metrics. Longer retention for monthly performance investigation. A prompt like “pull endpoint performance for [app] over the last 30 days, identify the top 5 by time consumed, and flag anything that got slower this month” now works in a single call.
Paginated endpoint listing. get_app_endpoints now supports sort_by, limit (default 50, max 200), and offset. On high-traffic apps, the previous implementation could time out or return unusably large payloads. Stats are computed only for the page you request, and responses include total_count and has_more.
Example prompts and use cases for the Scout MCP server.
Discord Webhook Alerts
Discord is now a supported notification channel alongside Slack, PagerDuty, Opsgenie, and email. Configure it from your alert settings the same way as any other channel.
From the Scout Community
Monitoring NestJS in Production NestJS monitoring doesn’t map directly from Express. Global exception filters, interceptors, and Fastify as an optional adapter all affect how errors and traces are captured. This post covers what the Scout agent handles automatically and what benefits from explicit setup. Read it here.
Zartis: Application Modernization at Scale Zartis helps clients migrate monolithic apps to microservices and cloud-native architectures. Over 8 years using Scout across client projects, they’ve cut mean response times by 40% and issue resolution time by more than 50%. Read the full story.
Questions or something not working right? Reach out at support@scoutapm.com.