Sample report
This is what you get
This sample shows problems our scanner finds on our own demo agent, which we built to be unsafe on purpose. Your report looks the same, with your own problems and fixes. Open a fix prompt to see what you'd paste into Claude Code, Cursor or Lovable.
https://agent-safety-check-app.vercel.app/mcp
Anyone who finds this URL can list and use its 3 tool(s). Require an OAuth or bearer token before initialize.
Fix prompt
My MCP server answers anyone on the internet without a login. Add authentication to it: 1. Require an "Authorization: Bearer <token>" header on every request, including "initialize", and answer 401 with a WWW-Authenticate header when it's missing or wrong. 2. Read the expected token from an environment variable, never from code. If the server is used from Claude or another client that supports it, prefer the MCP OAuth flow instead of a static token. 3. Compare tokens with a constant-time comparison. 4. Show me how to set the token in my MCP client config using an environment variable reference. Details from Agent Safety Check: - Problem: MCP server answers anyone, with no login - Where: https://agent-safety-check-app.vercel.app/mcp - Note: Anyone who finds this URL can list and use its 3 tool(s). Require an OAuth or bearer token before initialize.
https://agent-safety-check-app.vercel.app/mcp
Strangers can call this tool. Put it behind auth, or remove it from the public server.
Fix prompt
A risky tool on my MCP server can be called by strangers. Until the server requires a login: 1. Remove this tool from the public server, or move it to a separate server that only runs locally (stdio). 2. If it must stay, require authentication first, and add an allowlist of exactly what it may do (for example fixed commands or recipients) instead of free-form input. 3. Log every call with the caller's identity. Details from Agent Safety Check: - Problem: Exposed tool "run_shell_command" runs commands - Where: https://agent-safety-check-app.vercel.app/mcp - Note: Strangers can call this tool. Put it behind auth, or remove it from the public server.
https://agent-safety-check-app.vercel.app/api/chat
Anyone can send messages here and spend your API credits. Check a session or API key before calling the model.
Fix prompt
My agent API route answers anyone, so strangers can spend my AI credits. Fix it: 1. At the very top of the handler, before reading the body or calling the model, check the user's session (or an API key for server-to-server calls) and return 401 if it's missing. 2. Add a per-user rate limit (for example 20 requests per minute) and return 429 when it's exceeded. 3. Cap max tokens per request. 4. Remind me to set a monthly spend limit in my AI provider's billing settings. Details from Agent Safety Check: - Problem: Agent endpoint answers strangers - Where: https://agent-safety-check-app.vercel.app/api/chat - Note: Anyone can send messages here and spend your API credits. Check a session or API key before calling the model.
https://agent-safety-check-app.vercel.app/app.js (line 1)
Found sk-proj-...EMOf. Anyone can copy it from your site. Rotate it at https://platform.openai.com/api-keys and move the call that uses it to your server.
Fix prompt
An AI or payment API key is visible in my site's JavaScript, so any visitor can copy it. 1. Tell me to rotate the key now in the provider's dashboard (the old one must be treated as stolen). 2. Move every call that uses this key into a server-side route, read the key from a server-only environment variable (no NEXT_PUBLIC_, VITE_ or similar prefix), and have the browser call my route instead. 3. Protect that route with a login check and a rate limit. 4. Turn off public source maps in production, or make sure they don't contain secrets. Details from Agent Safety Check: - Problem: OpenAI API key visible to every visitor - Where: https://agent-safety-check-app.vercel.app/app.js (line 1) - Note: Found sk-proj-...EMOf. Anyone can copy it from your site. Rotate it at https://platform.openai.com/api-keys and move the call that uses it to your server.
https://agent-safety-check-app.vercel.app/mcp
Strangers can call this tool. Put it behind auth, or remove it from the public server.
Fix prompt
A risky tool on my MCP server can be called by strangers. Until the server requires a login: 1. Remove this tool from the public server, or move it to a separate server that only runs locally (stdio). 2. If it must stay, require authentication first, and add an allowlist of exactly what it may do (for example fixed commands or recipients) instead of free-form input. 3. Log every call with the caller's identity. Details from Agent Safety Check: - Problem: Exposed tool "send_email" sends messages as you - Where: https://agent-safety-check-app.vercel.app/mcp - Note: Strangers can call this tool. Put it behind auth, or remove it from the public server.
Check your own agent
The scan is free. The full report is A$199, and only if there's something to fix.
Run a free scan