appsecradar
Detects hardcoded secrets and credentials shipped inside Android/Kotlin mobile app code.
Auto-detects Angular projects and scans them for common AI-introduced security mistakes.
Checks Astro API routes/endpoints for missing authentication.
Detects Django DEBUG = True misconfigurations and SQL injection in Django code.
Detects secrets exposed behind EXPO_PUBLIC_ environment variables in Expo / React Native apps.
Checks Express write endpoints for missing auth, CORS that reflects any origin with credentials, and SQL injection.
Checks FastAPI endpoints for missing auth and overly permissive CORS.
Checks Fastify endpoints for missing authentication checks.
Detects open or test-mode Firebase Firestore and Realtime Database rules (e.g. if true, any-logged-in-user access).
Detects Flask debug=True, permissive CORS and missing auth on Flask routes.
Detects secrets and credentials shipped inside Flutter mobile apps.
Checks Hono endpoints for missing authentication checks.
Detects hardcoded Hugging Face tokens in the codebase.
Checks Koa endpoints for missing authentication checks.
Detects hardcoded secrets and credentials shipped within Kotlin-based mobile apps.
Detects Laravel APP_DEBUG enabled and related PHP misconfigurations.
Detects hardcoded MongoDB connection strings/credentials and injection risks.
Detects hardcoded MySQL database URLs with real passwords and SQL injection.
Auto-detects NestJS projects and scans them for common security mistakes.
Checks Next.js API routes for missing auth and detects secrets shipped behind NEXT_PUBLIC_ env vars.
Detects secrets behind [NUXT](/mcp/servers/integrations/nuxt)_PUBLIC_ env vars and checks Nuxt endpoints for missing auth.
Detects hardcoded OpenAI API keys in source code before they leak.
Scans PHP code for SQL injection, unverified webhooks and hardcoded secrets.
Detects SQL injection and hardcoded PostgreSQL database URLs containing real passwords.
Scans Prisma-based database access for SQL injection and unsafe query construction.
Scans Python code for SQL injection, permissive CORS and other common mistakes.
Detects secrets inside React components and secrets exposed via REACT_APP_ env vars.
Checks React Router endpoints for missing authentication.
Checks Remix endpoints for missing authentication.
Detects hardcoded Resend API keys in the codebase.
Scans Ruby code for SQL injection and Stripe webhook signature verification issues.
Detects hardcoded SendGrid API keys in the codebase.
Detects hardcoded Slack tokens in the codebase.
Detects Stripe webhook handlers that never verify the signature and hardcoded Stripe keys, across Node, Python, PHP, Ruby and Go.
Detects Supabase tables without Row Level Security and service_role keys exposed as public env vars that ship to every visitor.
Checks SvelteKit endpoints for missing authentication.
Detects secrets and credentials shipped inside Swift/iOS apps.
Detects hardcoded Twilio credentials in the codebase.
Detects secrets exposed behind [VITE](/mcp/servers/integrations/vite)_ environment variables that ship to the browser.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@appsecradarscan my project and walk me through fixing critical security issues"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
🛡️ appsecradar
Find the security holes your AI left behind.
A zero-config security scanner for apps built with Cursor, Claude Code, Lovable, Bolt, v0 & Copilot. It catches the mistakes AI coding tools make most, explains them in plain English, and gives you a fix prompt you can paste straight back into your AI editor.
npx appsecradarWhy
AI can build a full SaaS in a weekend. It also happily:
puts your OpenAI key in a React component
names your Supabase service_role key
NEXT_PUBLIC_…so it ships to every visitorcreates Supabase tables without Row Level Security, so anyone with your anon key can dump your users
writes Stripe webhooks that never verify the signature, so anyone can fake a payment
generates API routes that never check who is calling
Generic security scanners are built for security teams. appsecradar is built for the person who just shipped with AI and wants to know: is this safe to launch?
Related MCP server: supership-scan
Quick start
# scan the current project
npx appsecradar
# scan a specific folder
npx appsecradar ./my-app
# try it on our intentionally broken demo apps
git clone https://github.com/Othm1ne/appsecradar && cd appsecradar
npm install && npm run build
npx appsecradar examples/vulnerable-vibe-app # Next.js + Supabase + Stripe
npx appsecradar examples/vulnerable-express-app # Express + Postgres
npx appsecradar examples/vulnerable-python-app # Flask + FastAPI
npx appsecradar examples/vulnerable-firebase-app # React + Vite + FirebaseWorks with your stack
appsecradar auto-detects your stack and needs no config.
Supported | |
Frontend / fullstack | Next.js, React, Vite, Vue, Nuxt, SvelteKit, Astro, Remix / React Router, Angular, Expo / React Native |
Backend | Express, Fastify, Hono, Koa, NestJS, Flask, FastAPI, Django, Laravel / PHP, Go, Rails (secrets + SQL) |
Data & services | Supabase, Firebase (Firestore + Realtime DB), PostgreSQL, MySQL, MongoDB, Prisma, Stripe, OpenAI, Anthropic |
Mobile | Flutter, Swift, Kotlin / Android (secrets shipped in the app) |
What it checks
Rule | Severity | Catches |
| critical / high | 15+ key types (OpenAI, Anthropic, Stripe, AWS, GitHub, Supabase, Groq, Hugging Face, Resend, SendGrid, Slack, Twilio, private keys) and database URLs with real passwords. Critical when the code ships to browsers or phones |
| critical | Secrets behind |
| critical | Public tables without (or with disabled) Row Level Security |
| critical / high |
|
| critical | Webhooks that never verify the Stripe signature (Node, Python, PHP, Ruby, Go) |
| high | Write endpoints with no auth check in Next.js, SvelteKit, Nuxt, Remix, Astro, Express, Hono, Fastify, Koa, Flask and FastAPI |
| high | SQL built with string interpolation in JS/TS, Python, PHP, Go and Ruby |
| high | CORS that reflects any origin with credentials (Express, FastAPI, Flask) |
| high / medium | Flask |
Let your AI editor fix it (MCP)
appsecradar ships an MCP server, so Cursor, Claude Code, Windsurf or VS Code can scan your project, fix the issues and verify each fix by re-scanning.
Claude Code
claude mcp add appsecradar -- npx -y appsecradar mcpCursor: .cursor/mcp.json
{ "mcpServers": { "appsecradar": { "command": "npx", "args": ["-y", "appsecradar", "mcp"] } } }VS Code: .vscode/mcp.json
{ "servers": { "appsecradar": { "type": "stdio", "command": "npx", "args": ["-y", "appsecradar", "mcp"] } } }Then ask your agent: "Use appsecradar to secure my app", or run the built-in secure_my_app prompt.
MCP tool / prompt | What it does |
| Scans a folder (optionally only some |
| Lists every check and why it matters |
| Scan → fix critical issues one by one → re-scan to verify → list keys to rotate |
The server is read-only: it never edits files itself, and it tells the agent never to rotate keys on your behalf.
Every finding comes with a fix prompt
CRITICAL Table "notes" has RLS never enabled
supabase/migrations/20250101000000_init.sql:12 [supabase-rls-disabled]
Anyone who copies the anon key from your website can run
supabase.from("notes").select("*") and dump, edit or delete every row.
Fix prompt (paste into your AI editor):
Write a new migration that runs: alter table public.notes enable row level security;
then add policies so users can only access their own rows ...CI usage
npx appsecradar --fail-on high # exit 1 on high or critical findings (default)
npx appsecradar --json > report.jsonOptions
--json Print findings as JSON
--markdown Print findings as Markdown (handy for PR comments)
--fail-on <level> critical | high | medium | low | none (default: high)
--no-color Disable colorsIgnore a deliberate finding with a // appsecradar-ignore comment on the line or the line above.
Roadmap
CLI with 9 rules across JS/TS, Python, PHP, Go, Ruby and mobile
Django, Laravel, Rails and NestJS auth checks
Mobile: Firebase/Supabase misuse in Flutter & React Native, insecure local storage
--urllive scan: secrets in the JS bundle, exposed.env/.git/ source maps, Supabase anon-key table probing (your own domains only)MCP server: let Cursor / Claude Code scan and fix on their own
GitHub Action + SARIF output (findings in the Security tab)
HTML report
AI-app checks: prompt injection, unlimited LLM endpoints, hallucinated packages
Contributing
Each rule is a single file in packages/appsecradar/src/rules. Adding a rule takes about 50 lines. See CONTRIBUTING.md.
Disclaimer
appsecradar finds common mistakes. A clean scan does not mean an app is secure. Only scan code and systems you own or have permission to test.
License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Security scanner for AI-written code: SAST, secrets, dependencies, IaC, containers and DAST.
Security scanner for AI agents: prompt injection, leaked secrets, PII, and SSRF-risk URL detection.
Scan, monitor and fix a live web app from your editor: graded security reports with fix prompts.
Deep security scans of repos you own from your editor: dependency CVEs, SAST, git-history secrets.
Related MCP Servers
FlicenseAqualityDmaintenanceEnables deep security auditing of web applications directly from AI IDEs including Cursor and Claude Code. Scans URLs for vulnerabilities, returns security scores with SHIP/BLOCK verdicts, and provides specific fix prompts for remediation.3-- AlicenseNot gradedqualityFmaintenancePredeploy security scanner for AI-generated code. 80+ vulnerability patterns across secrets, auth, injection, config, Supabase, and logging. Runs locally, code never leaves your machine. Optional x402 witnessed attestation.51 npmApache 2.0
- AlicenseAqualityDmaintenanceSecurity scanning for AI coding tools (Claude Code, Cursor, Windsurf) including secrets detection, MCP config vulnerabilities, agent instruction checks, threat modeling, prompt injection testing, pre-commit security checks, and dependency vulnerability scanning.729 npm1MIT
- AlicenseNot gradedqualityDmaintenanceLocal-first security check for AI coding agents — finds hardcoded secrets, exposed .env files, git-history leaks and vulnerable dependencies (OSV), entirely on your machine. Ask your agent "is this safe to ship?" and get a Launch Readiness score with a fix for every finding.MIT