{ "name": "@newrelic/preflight", "version": "1.57.0", "mcpName": "io.github.newrelic-experimental/preflight", "type": "module", "license": "Apache-2.0", "private": false, "publishConfig": { "access": "public" }, "engines": { "node": ">=22.0.0" }, "repository": { "type": "git", "url": "https://github.com/newrelic-experimental/preflight" }, "homepage": "https://github.com/newrelic-experimental/preflight", "bugs": { "url": "https://github.com/newrelic-experimental/preflight/issues" }, "description": "New Relic MCP server for observing AI coding assistants (Claude Code, Cursor, Windsurf, Copilot, Codex, and more)", "main": "dist/index.js", "types": "dist/index.d.ts", "exports": { ".": { "types": "./dist/index.d.ts", "default": "./dist/index.js" } }, "bin": { "preflight": "dist/index.js", "preflight-collector": "dist/hooks/collector-script.js" }, "files": [ "dist/", "examples/" ], "scripts": { "build:server": "tsc --build && chmod +x dist/index.js dist/hooks/collector-script.js && npm run build:copy-data", "build:copy-data": "node -e \"const{cpSync,mkdirSync}=require('node:fs');mkdirSync('dist/data',{recursive:true});cpSync('alerts','dist/data/alerts',{recursive:true});cpSync('dashboards','dist/data/dashboards',{recursive:true});cpSync('pricing-overlay','dist/data/pricing-overlay',{recursive:true});cpSync('copilot-sdk-extension','dist/data/copilot-sdk-extension',{recursive:true});\"", "build:web": "vite build", "build": "npm run build:server && npm run build:web", "build:clean": "tsc --build --clean && rimraf dist/web", "build:plugin-hook": "esbuild src/hooks/collector-script.ts --bundle --platform=node --target=node22 --format=esm --outfile=plugin/.claude-plugin/scripts/collector-script.js", "verify:plugin-hook": "npm run build:plugin-hook && git diff --exit-code plugin/.claude-plugin/scripts/collector-script.js", "dev:web": "vite", "test": "jest", "test:integration": "jest --testPathPattern='src/multi-instance\\.integration\\.test\\.ts' --testTimeout=120000", "test:web": "vitest run", "pretest:e2e": "npm run build", "test:e2e": "playwright test", "test:e2e:update": "playwright test --update-snapshots", "lint": "eslint src/", "format": "prettier --write .", "format:check": "prettier --check .", "deploy:alerts": "node dist/index.js deploy-alerts", "deploy:alerts:update": "node dist/index.js deploy-alerts --update", "deploy:alerts:teardown": "node dist/index.js deploy-alerts --teardown", "deploy:dashboard": "node dist/index.js deploy-dashboards", "deploy:dashboard:all": "node dist/index.js deploy-dashboards --all", "deploy:dashboard:update": "node dist/index.js deploy-dashboards --all --update", "deploy:dashboard:teardown": "node dist/index.js deploy-dashboards --all --teardown", "backfill:sessions": "npx tsx scripts/backfill-sessions.ts", "regenerate:otlp-descriptor": "npx tsx scripts/regenerate-otlp-descriptor.ts", "check:bundle-size": "npx tsx scripts/check-bundle-size.ts", "check:docs-inventory": "npx tsx scripts/check-docs-inventory.ts", "replay:git-counts": "npx tsx scripts/replay-git-counts.ts", "check:claude-code-changelog": "npx tsx scripts/check-claude-code-changelog.ts", "whats-new:draft": "npx tsx scripts/draft-whats-new.ts", "dev": "node dist/index.js --local", "dev:all": "npm run build && npm run dev", "dev:full": "npm run build:server && { npm run dev & BACK=$!; npm run dev:web; kill $BACK 2>/dev/null || true; }", "start": "node dist/index.js --stdio", "start:local": "node dist/index.js --local", "prepare": "husky || true" }, "dependencies": { "@modelcontextprotocol/sdk": "^1.30.0", "@opentelemetry/api": "^1.9.0", "@opentelemetry/exporter-logs-otlp-http": "0.221.0", "@opentelemetry/exporter-metrics-otlp-http": "0.221.0", "@opentelemetry/exporter-trace-otlp-http": "0.221.0", "@opentelemetry/resources": "2.10.0", "@opentelemetry/sdk-logs": "0.221.0", "@opentelemetry/sdk-metrics": "2.10.0", "@opentelemetry/sdk-trace-node": "2.10.0", "commander": "15.0.0", "dotenv": "17.4.2", "protobufjs": "7.6.6", "undici": "^7.29.0", "zod": "4.4.3" }, "overrides": { "@hono/node-server": "^2.0.5", "@opentelemetry/core": "^2.10.0", "body-parser": "^2.3.0", "brace-expansion": "^5.0.7", "browserslist": "^4.28.7", "eslint-plugin-react": { "eslint": "$eslint" }, "fast-uri": "^3.1.6", "hono": "^4.12.34", "ip-address": "^10.3.1", "js-yaml": "^4.3.1", "nanoid": "^3.3.18", "qs": "^6.16.0", "undici": "^7.29.0" }, "devDependencies": { "@playwright/test": "1.62.1", "@tailwindcss/postcss": "4.3.3", "@tanstack/react-query": "5.102.8", "@testing-library/dom": "10.4.1", "@testing-library/jest-dom": "7.0.1", "@testing-library/react": "16.3.3", "@testing-library/user-event": "14.6.6", "@types/jest": "^30.0.0", "@types/react": "19.2.18", "@types/react-dom": "19.2.5", "@types/react-is": "19.2.0", "@typescript-eslint/eslint-plugin": "8.68.0", "@typescript-eslint/parser": "8.68.0", "@vitejs/plugin-react": "6.0.2", "@vitest/coverage-v8": "4.1.11", "esbuild": "0.28.2", "eslint": "10.9.1", "eslint-config-prettier": "^10.1.8", "eslint-plugin-react": "7.37.5", "eslint-plugin-react-hooks": "7.1.1", "husky": "9.1.7", "jest": "30.5.0", "jsdom": "30.0.1", "lucide-react": "1.35.0", "postcss": "8.5.26", "prettier": "3.9.6", "react": "19.2.8", "react-dom": "19.2.8", "react-is": "19.2.8", "recharts": "3.10.1", "rimraf": "6.1.3", "tailwindcss": "4.3.3", "ts-jest": "29.4.12", "typescript": "6.0.3", "vite": "8.2.2", "vitest": "4.1.11", "wouter": "3.10.0", "zustand": "5.0.15" } }