Edison Watch

MCP Server Protection

How Edison Watch protects you from unauthorized MCP servers.

Edison Watch can monitor your AI tools' MCP configurations and quarantine any server that hasn't been approved by your organization. Auto-quarantine is disabled by default and can be enabled by admins for their domain under Ext Config → Tenant Backend URLs in the dashboard.

How It Works

When auto-quarantine is enabled and Edison Watch starts, it scans your system for MCP server configurations across all supported AI tools. Any server that isn't the Edison Watch gateway is quarantined-moved to a disabled state until you or your admin reviews it.

This prevents:

  • Supply chain attacks: Malicious servers added without your knowledge
  • Shadow IT: Unapproved tools connecting to enterprise data
  • Accidental exposure: Misconfigured servers leaking sensitive information

Supported AI Tools

Edison Watch monitors MCP configurations for:

ToolConfiguration Location
Cursor~/.cursor/mcp.json
VS Code~/Library/Application Support/Code/User/mcp.json
VS Code Insiders~/Library/Application Support/Code - Insiders/User/mcp.json
Claude Code~/.claude/settings.json and ~/.claude.json
Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json
Zed~/.config/zed/settings.json

Paths shown are for macOS. Windows and Linux paths vary but are automatically detected.

What Happens When a Server is Quarantined

  1. Detection: Edison Watch detects a new MCP server in your configuration
  2. Backup: Your original config file is backed up (e.g., mcp.json.backup.20250127-143022.json)
  3. Quarantine: The server is moved to a .disabled file alongside your config
  4. Notification: You receive a notification about the quarantined server

The quarantined server cannot run until it's been reviewed and approved.

Reviewing Quarantined Servers

When a server is quarantined, you'll see a notification. Click it to review the server details:

  • Server name: The identifier used in your config
  • Source app: Which AI tool had this server configured
  • Command/URL: What the server runs or connects to

Actions You Can Take

  • Request Approval: Submit the server for admin review (enterprise users)
  • Delete: Remove the server permanently
  • View Details: See the full server configuration

Only approve servers you recognize and trust. If you didn't add a server yourself, it may have been added by malicious software.

Project-Level Monitoring

Edison Watch also monitors project-specific MCP configurations. When you open a project in an AI tool, the app can detect and monitor:

  • .mcp.json files in project roots
  • Workspace-level MCP configurations
  • Project-specific server definitions

This ensures that even project-scoped servers go through the same approval process.

Automatic Hook Injection

To track which projects you're working on, Edison Watch can inject lightweight hooks into supported AI tools. These hooks simply record the current working directory when you start a session.

Supported Hook Systems

ToolHook LocationEvent
Claude Code~/.claude/settings.jsonPreToolUse
Cursor~/.cursor/hooks.jsonsessionStart
Windsurf~/.codeium/windsurf/hooks.jsonpre_user_prompt

Hooks are optional and only record your working directory. They don't monitor your code or conversations.

How Hooks Work

  1. When you start a session in an AI tool, the hook runs
  2. It writes a small JSON file to ~/.edison-watch/pending/
  3. Edison Watch picks up the file and registers the project
  4. Project-specific MCP configs are then monitored

Managing Hooks

You can view and manage hooks from the Edison Watch menu:

  • View Status: See which tools have hooks installed
  • Remove Hooks: Disable project tracking for specific tools

Restoring a Server

If a legitimate server was quarantined by mistake:

  1. Open the Edison Watch menu
  2. Go to Quarantined Servers
  3. Find the server you want to restore
  4. Click Request Approval or contact your admin

For enterprise users, approved servers are automatically restored across all team members.

Troubleshooting

"My server keeps getting quarantined"

This happens when you add a server and Edison Watch quarantines it before you can use it. To add a new server:

  1. Contact your IT admin to pre-approve the server
  2. Or use the Edison Watch dashboard to submit an approval request first
  3. Then add the server to your config-it won't be quarantined if already approved

"I can't find my quarantined server"

Quarantined servers are stored in .disabled files next to your config:

  • mcp.jsonmcp.json.disabled
  • settings.jsonsettings.json.disabled

"Hooks aren't working"

  1. Ensure Edison Watch is running
  2. Check that the hook file exists (see paths above)
  3. Restart your AI tool after hooks are installed