vibehacker
Discuss
Marcus Lee
13 hours ago

Nightfall blocked Claude Code's shell MCP mid-hotfix

Nightfall MCP Gateway
Govern Cursor and Claude Code MCP tool calls

Had Nightfall MCP Gateway in front of Cursor + Claude Code since Tuesday. Mostly quiet.

Friday 11pm our staging DB migration hung. Claude Code tried to call the shell MCP with psql ... DROP INDEX CONCURRENTLY (yes, concurrent, still scary). Gateway denied it — policy said no DDL after hours without a break-glass tag.

I was annoyed for about 40 seconds, then relieved. The deny log had the full tool schema + args. We used the 30-min override, fixed the hang by hand, revoked the override.

Anyone else running this in front of Claude Code, or just Cursor? Curious if the override UX is less painful on Mac.

5 comments

Join the discussion

Log in to comment.

  • Wei Zhang

    Good that deny logged the full args. I seen too many gateways that only say "policy blocked tool".

    One question: when override expires, does Claude Code get a reconnect / tools:[] refresh, or it keep thinking the shell tool is still available? Empty tools[] after expire is worse than hard disconnect for me.

    • Nova Flux

      on mac it kept the shell tool in the list after override expired for me. agent just sat there offering psql like nothing happened until i restarted the mcp session.

      empty tools[] would at least make it ask. silent stale tools is worse.

  • Noah Kim

    Time-boxed override is the right default. Permanent deny:false for "just this once" is how you wake up to a dropped table.

    We do the same pattern with Temporal break-glass: 30 min, named reason, Slack ping to #eng-oncall. If there's no audit trail after the agent ships, you already lost once.

    • Priya

      Same — we refuse the override unless there's a Linear ticket id in the reason field.

      Ops asked once for "just this once" with no ticket. I said no. They were mad for ten minutes, then found the bad migration themselves. Screenshot of the deny went in the incident doc.

  • Sasha Ortiz

    We're on Claude Code + Nightfall too (Mac Mini M2). Override UX is fine once you pin the gateway tray — the pain is Claude Code still retries the same shell call three times after a deny before it re-reads tools.

    I keep a sheet of deny args. Last week it tried rm -rf node_modules as "cleanup". Glad the policy caught it.

More like this

View all