Critical Risk →

nextjs_index

Discover all running Next.js development servers and list their available MCP tools. WHEN TO USE THIS TOOL - Use proactively in these scenarios: 1. **Before implementing ANY changes to the app**: When asked to add, modify, or fix anything in the application: - "Add a loading state" → Check c...

Bulk/mass operation — affects multiple targets

Part of the Midnight Nextjs MCP server. Enforce policies on this tool with Intercept, the open-source MCP proxy.

midnight-nextjs-mcp Destructive

AI agents may call nextjs_index to permanently remove or destroy resources in Midnight Nextjs. Without a policy, an autonomous agent could delete critical data in a loop with no way to undo the damage. Intercept blocks destructive tools by default and requires explicit human approval before enabling them.

Without a policy, an AI agent could call nextjs_index in a loop, permanently destroying resources in Midnight Nextjs. There is no undo for destructive operations. Intercept blocks this tool by default and only allows it when a human explicitly approves the action.

Destructive tools permanently remove data. Block by default. Only enable with explicit approval workflows.

midnight-next-js-mcp.yaml
tools:
  nextjs_index:
    rules:
      - action: deny
        reason: "Blocked by default — enable with approval"

See the full Midnight Nextjs policy for all 35 tools.

Tool Name nextjs_index
Category Destructive
Risk Level Critical

View all 35 tools →

Agents calling destructive-class tools like nextjs_index have been implicated in these attack patterns. Read the full case and prevention policy for each:

Browse the full MCP Attack Database →

Other tools in the Destructive risk category across the catalogue. The same policy patterns (deny, require_approval) apply to each.

nextjs_index is one of the critical-risk operations in Midnight Nextjs. For the full severity-focused view — only the critical-risk tools with their recommended policies — see the breakdown for this server, or browse all critical-risk tools across every MCP server.

What does the nextjs_index tool do? +

Discover all running Next.js development servers and list their available MCP tools. WHEN TO USE THIS TOOL - Use proactively in these scenarios: 1. **Before implementing ANY changes to the app**: When asked to add, modify, or fix anything in the application: - "Add a loading state" → Check current component structure and routes first - "Fix the navigation" → Inspect existing routes and components - "Update the API endpoint" → Query current routes and data flows - "Add error handling" → Check runtime errors and component hierarchy - "Refactor the auth logic" → Inspect current auth implementation and routes - "Optimize performance" → Check runtime diagnostics and component tree Use this to understand where changes should be made and what currently exists. 2. **For diagnostic and investigation questions**: - "What's happening?" / "What's going on?" / "Why isn't this working?" - "Check the errors" / "See what's wrong" - "What routes are available?" / "Show me the routes" - "Clear the cache" / "Reset everything" - Questions about build status, compilation errors, or runtime diagnostics 3. **For agentic codebase search**: Use this as FIRST CHOICE for searching the currently running app. If not found, fallback to static codebase search tools. KEY PRINCIPLE: If the request involves the running Next.js application (whether to investigate OR modify it), query the runtime FIRST to understand current state before proceeding. REQUIREMENTS: - Next.js 16 or later (MCP support was added in v16) - If you're on Next.js 15 or earlier, use the 'upgrade-nextjs-16' MCP prompt to upgrade first Next.js 16+ exposes an MCP (Model Context Protocol) endpoint at /_next/mcp automatically when the dev server starts. No configuration needed - MCP is enabled by default in Next.js 16 and later. This tool discovers all running Next.js servers and returns: - Server port, PID, and URL - Complete list of available MCP tools for each server - Tool descriptions and input schemas After calling this tool, use 'nextjs_call' to execute specific tools. [IMPORTANT] If auto-discovery returns no servers: 1. Ask the user which port their Next.js dev server is running on 2. Call this tool again with the 'port' parameter set to the user-provided port If the MCP endpoint is not available: 1. Ensure you're running Next.js 16 or later (use the 'upgrade-nextjs-16' prompt to upgrade) 2. Verify the dev server is running (npm run dev) 3. Check that the dev server started successfully without errors. It is categorised as a Destructive tool in the Midnight Nextjs MCP Server, which means it can permanently delete or destroy data. Block by default and require explicit approval.

How do I enforce a policy on nextjs_index? +

Add a rule in your Intercept YAML policy under the tools section for nextjs_index. You can allow, deny, rate-limit, or validate arguments. Then run Intercept as a proxy in front of the Midnight Nextjs MCP server.

What risk level is nextjs_index? +

nextjs_index is a Destructive tool with critical risk. Critical-risk tools should be blocked by default and only enabled with explicit human approval.

Can I rate-limit nextjs_index? +

Yes. Add a rate_limit block to the nextjs_index rule in your Intercept policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.

How do I block nextjs_index completely? +

Set action: deny in the Intercept policy for nextjs_index. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.

What MCP server provides nextjs_index? +

nextjs_index is provided by the Midnight Nextjs MCP server (midnight-nextjs-mcp). Intercept sits as a proxy in front of this server to enforce policies before tool calls reach the server.

Let agents act without letting them run wild.

Deterministic policy on every MCP tool call. Per-identity grants. Full audit log.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.