preflight (newrelic-experimental/preflight) is an MCP server listed on the M8ven Trust Index. It scores 40 out of 100, grade D. It declares 49 tools. No publisher has claimed this listing.

D
Warning
40/100

preflight

Observability for AI coding assistants — cost tracking, efficiency scoring, and anti-pattern detection for Claude Code, Cursor, Copilot, and more. Local-first; New Relic optional.

Warning. Serious findings were identified. Review the full report before connecting. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

⚡ Live Monitored: not connected

Verified is a snapshot. Live keeps it current, and builds your track record.

⚡ Connect GitHub → continuous verification on every pushwhy connect →

Who stands behind it

newrelic-experimental

Source: github_repo_search

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →

Install from

The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.

// key findings
🚨
Hardcoded credentials detected
6 live-looking API keys in source: 1 Twilio auth token, 2 GitHub PAT (classic), 3 Stripe secret (live)
🔐
You'll be asked for 3 credentials: NEW_RELIC_AI_HOMELAB_TOKEN, NEW_RELIC_API_KEY, NEW_RELIC_LICENSE_KEY
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// tools this server exposes49 tools

These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.

nr_observe_report_tool_call
nr_observe_report_session_start
nr_observe_report_session_end
nr_observe_get_context_efficiency

Get context window efficiency metrics: unique vs. repeated file reads, repeated-read ratio, and top re-read files. A high ratio suggests the model is losing context.

nr_observe_get_latency_percentiles

Get p50/p95/p99 latency percentiles for tool calls, broken down by tool type. Use to identify which tools are slowest in the current session.

nr_observe_get_task_completion_rate

Get task lifecycle metrics: completed task count, average task duration, and average tool calls per task.

nr_observe_get_model_usage

Get per-model usage statistics: request counts, token totals (input, output, thinking, cache read, cache creation), cost, and cost per million billed tokens. Identifies the most-used model, plus any PostModelSwitch events (deliberate /model changes, automatic fallbacks, or resume) recorded this sess

nr_observe_get_context_tracking

Get context window tracking: per-turn token growth, category breakdown (System/Tools/User/Assistant), fill percentage, and per-tool output contribution. Shows which tools consume the most context.

nr_observe_report_tokens
nr_observe_get_cost_breakdown

Get a breakdown of session costs by task, model, and efficiency metrics like cost per line of code. Cost figures are Preflight's own list-price estimate unless costRateMultiplier/dataResidencyPremium are configured for an org's contracted rate — see rate_multiplier_applied in the response.

nr_observe_get_budget_status

Get current AI spend vs. configured budget caps (session, daily, weekly). Returns remaining budget, % used, and any threshold alerts fired this session.

nr_observe_get_cost_forecast
nr_observe_get_prompt_cache_health
nr_observe_get_session_history

Get a list of past sessions with summary metrics (efficiency, cost, tool calls, outcome).

nr_observe_get_weekly_summary

Get a weekly summary report with per-developer breakdown, cost, efficiency, and anti-pattern counts.

nr_observe_get_trends

Get trend data for a metric over time: weekly efficiency, cost, task success rate, or tool call counts.

nr_observe_get_collaboration_profile

Get a developer's collaboration profile: specificity, autonomy, correction rate, task complexity, and classification.

nr_observe_get_claudemd_impact
nr_observe_get_cost_per_outcome

Get cost breakdown by outcome type (bug fix, feature, refactor, etc.) with waste ratio and ROI estimate.

nr_observe_get_recommendations

Get personalized optimization recommendations covering cost, efficiency, prompt engineering, CLAUDE.md impact, and model selection.

nr_observe_get_model_recommendation

Get a data-driven model recommendation ranked by historical efficiency score, cost, and task success rate across past sessions, both overall and broken down by task outcome type (bug_fix, feature, refactor, investigation, configuration, documentation, failed_attempt).

nr_observe_get_platform_comparison
nr_observe_get_team_summary

Get aggregated AI coding cost and efficiency metrics for all developers in the configured team, queried via New Relic NRQL. Requires teamId to be set in config.

nr_observe_subscribe_digest

Register a Slack webhook URL to receive weekly AI coding cost and efficiency summaries.

nr_observe_unsubscribe_digest

Remove the registered Slack webhook for weekly digests.

nr_observe_send_digest

Generate the current weekly AI coding summary and POST it to the configured Slack webhook immediately.

nr_observe_get_personal_insights
nr_observe_get_retry_alerts

Get thrashing/retry detection alerts: repeated failures or highly similar inputs within a sliding window. Identifies when the agent is stuck in a loop.

nr_observe_get_context_composition

Get per-turn token breakdown by category (system prompt, conversation history, tool results, injected files). Shows context window fill percentage and dominance alerts. LIMITATION: system_prompt and injected_file_content are always 0 -- the model API's aggregate usage counts have no breakdown by con

nr_observe_get_latency_decomposition

Get latency decomposition: how much time is spent in LLM API calls vs tool execution vs overhead, with p50/p95 percentiles for each component.

nr_observe_get_decision_tree

Get decision branch analysis: reasoning and action extraction per turn for triggered branches (recovery, retry, delegation), with outcome tagging. Includes post-mortem of failure chains and longest failure streak. LIMITATION: the reasoning field is the model's own thinking/text output only when NEW_

nr_observe_get_instruction_drift
nr_observe_get_tool_selection_score

Get tool selection quality score: evaluates efficiency of tool usage by detecting redundant reads, repeated failures, and unused large outputs. Score 0-1 where 1 is perfect.

nr_observe_get_quality_proxy

Get quality proxy metrics: diff apply rate, test pass rate, backtrack count, self-correction count, and degradation detection over the session lifetime.

nr_observe_get_api_failures

Get API failure tracking: per-model reliability scorecards, tokens lost, cost impact, throttle alerts, and mean time to recovery. Failures are captured via Claude Code's StopFailure hook, so totalFailures/byErrorType/bySessionPhase reflect real observed failures. LIMITATION: token loss, recovery tim

nr_observe_get_compute_waste

Get compute waste summary: total tokens wasted on retried tool calls and anti-pattern activity (stuck loops, redundant reads, thrashing). Includes per-pattern breakdown and a status assessment (clean / moderate / needs_attention).

nr_observe_get_session_stats

Get current session observability metrics: tool call counts, success rates, file access stats, and duration summaries.

nr_observe_health

Check server health: version, uptime, session ID, and connection timestamp. Also reports whether telemetry event sends are succeeding. Use when the MCP connection feels stale or tools are behaving unexpectedly.

nr_observe_get_config

Show the current server configuration (sensitive fields masked): mode, developer, account, region, storage path, dashboard URL, and config file location. Use to diagnose misconfiguration without exposing credentials.

nr_observe_get_session_timeline

Get an ordered list of recent tool calls with timestamps, names, durations, and success/failure status.

nr_observe_get_cost_per_tool

Cost attribution per tool type — approximate, based on turn-level token correlation. Shows which tools cost the most and average cost per call. Also breaks Skill calls down per skill in costBySkill (calls, estimated cost and tokens, total duration).

nr_observe_get_turn_analysis

Conversation turn analysis — groups tool calls by AI response, shows parallelism and turn patterns.

nr_observe_install_hooks
nr_observe_get_git_efficiency

Get Git workflow efficiency metrics: merge conflicts, aborted operations, force pushes, stale branch detection, and actionable suggestions to reduce Git friction.

nr_observe_get_workflow_trace

Get the complete tool call trace for a task, including sequence, duration, and anti-pattern/efficiency analysis.

nr_observe_get_anti_patterns

Get detected anti-patterns (thrashing, re-reading, stuck loops, blind editing, over-delegation) for the most recent task.

nr_observe_get_efficiency_score

Get the AI coding efficiency score for the most recent task or the session-wide rolling average.

nr_observe_report_feedback

Record user quality feedback for a task. Helps correlate efficiency metrics with perceived quality.

nr_observe_mark_task_boundary
// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
configCLAUDE_JOB_DIR
configMCP_CLIENT
configNEW_RELIC_ACCOUNT_ID
configNEW_RELIC_AI_COST_RATE_MULTIPLIER
configNEW_RELIC_AI_CUSTOM_PRICING_FILE
configNEW_RELIC_AI_DAILY_BUDGET_USD
configNEW_RELIC_AI_DIGEST_SCHEDULE
configNEW_RELIC_AI_DIGEST_WEBHOOK_URL
configNEW_RELIC_AI_HIGH_SECURITY
configNEW_RELIC_AI_HOMELAB_BIND_ADDRESS
configNEW_RELIC_AI_HOMELAB_SERVER_PORT
🔐 secretNEW_RELIC_AI_HOMELAB_TOKEN
configNEW_RELIC_AI_HOMELAB_URL
configNEW_RELIC_AI_LOG_LEVEL
configNEW_RELIC_AI_MCP_APP_NAME
configNEW_RELIC_AI_MCP_BUFFER_PATH
configNEW_RELIC_AI_MCP_DEVELOPER
configNEW_RELIC_AI_MCP_MAX_CONTENT_LENGTH
configNEW_RELIC_AI_MCP_PROXY_UPSTREAMS
configNEW_RELIC_AI_MCP_RECORD_CONTENT
configNEW_RELIC_AI_MCP_STORAGE_PATH
configNEW_RELIC_AI_MODEL
configNEW_RELIC_AI_ORG_ID
configNEW_RELIC_AI_PLATFORM
configNEW_RELIC_AI_PROJECT_ID
configNEW_RELIC_AI_REPO_URL
configNEW_RELIC_AI_RETAIN_SESSIONS_DAYS
configNEW_RELIC_AI_SESSION_BUDGET_USD
configNEW_RELIC_AI_TEAM_ID
configNEW_RELIC_AI_WEEKLY_BUDGET_USD
🔐 secretNEW_RELIC_API_KEY
configNEW_RELIC_HOST
🔐 secretNEW_RELIC_LICENSE_KEY
configNR_AI_ALERTS_RULES_PATH
configNR_AI_DASHBOARD_HOST
configNR_AI_DASHBOARD_PORT
configNR_AI_DASHBOARD_REPOLL_MS
configNR_AI_ENABLE_COPILOT_APP_USAGE_WATCHER
configNR_AI_ENABLE_COPILOT_USAGE_WATCHER
configNR_AI_ENABLE_PARENT_TRANSCRIPT_WATCHER
configNR_AI_ENABLE_SUBAGENT_WATCHER
configNR_AI_ENABLE_WORKFLOW_WATCHER
configNR_AI_GIT_REPOS
configNR_AI_MODE
configNR_AI_OTLP_FORWARD_ENDPOINT
configNR_AI_OTLP_FORWARD_HEADERS
configNR_AI_OTLP_RECEIVER_BIND_ADDRESS
configNR_AI_PENDING_CONFIRMATION_CAP_MS
configNR_AI_SESSION_PERSIST_INTERVAL_MS
configNR_AI_WATCHER_DISCOVERY_HOURS
configOTEL_EXPORTER_OTLP_ENDPOINT
configOTEL_EXPORTER_OTLP_HEADERS
configXDG_CONFIG_HOME
// quality suggestions

Tool annotations

46/49 tools have annotations

Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.

All four hints declared on every tool

49/49 tools missing one or more hints — nr_observe_report_tool_call (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); nr_observe_report_session_start (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); nr_observe_report_session_end (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +46 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.

For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.

No hardcoded API keys

6 live-looking API keys in source: 1 Twilio auth token, 2 GitHub PAT (classic), 3 Stripe secret (live)

Move secrets to environment variables (process.env.X) or your secret manager.

Shell command execution

2 calls in production code run through a shell (src/config.ts:327, src/config.ts:340)

Prefer library functions over shell-outs. If you must shell out, ensure all inputs are properly escaped.

Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.

// full audit trail
The findings above are the summary. The full trail, every check we ran, each deduction, the network hosts observed and the dependency advisories, goes to verified publishers, along with an alert whenever a new one lands. Verified publishers can also review each finding and dispute it in one click. Publisher corrections have sharpened several of our checks this month, because the maintainer knows the codebase better than any scanner.
// improvement guidance — verified publishers only
We have 4 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Verified](https://m8ven.ai/badge/mcp/newrelic-experimental/preflight?variant=verified)](https://m8ven.ai/mcp/newrelic-experimental/preflight)
Shows verification status without the grade. Want the grade badge instead? Remove ?variant=verified from the URL.
commit: e1878c832b091c8cc45f3b025c436cfdf22608fe
code hash: 3bfdd5c6f8c5eac8fbadee2481f3ae7486fa9e455e396d4104ae7000824f27d8
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.

https://m8ven.ai/api/mcp/tool-check
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client