conductorv2

Integrations · AI Clients

Windsurf

Windsurf by Codeium uses a dedicated MCP settings file in the Codeium config directory. Edit the file, reload Windsurf.

Config file location

PlatformPath
macOS~/.codeium/windsurf/mcp_settings.json
Windows%USERPROFILE%\.codeium\windsurf\mcp_settings.json
Linux~/.codeium/windsurf/mcp_settings.json

Setup

1Create or open ~/.codeium/windsurf/mcp_settings.json
2Paste the config block below (merge with existing content if the file already exists).
3Save the file.
4In Windsurf: open the Command Palette (⌘⇧P or Ctrl+Shift+P) and run Windsurf: Reload MCP Servers. Or fully restart Windsurf.
~/.codeium/windsurf/mcp_settings.json
{
  "mcpServers": {
    "conductor": {
      "command": "npx",
      "args": ["-y", "@useconductor/conductor"]
    }
  }
}

With plugin credentials

with env vars
{
  "mcpServers": {
    "conductor": {
      "command": "npx",
      "args": ["-y", "@useconductor/conductor"],
      "env": {
        "GITHUB_TOKEN": "ghp_your_token",
        "CONDUCTOR_LOG_LEVEL": "info"
      }
    }
  }
}

Using Conductor in Windsurf

MCP tools are available in Windsurf's Cascade agent. Open the Cascade panel and start a conversation — Conductor tools appear automatically when the task needs them. You can also explicitly reference tools:

"List the files in this project" → filesystem.list
"What changed since last commit?" → git.diff
"Search for all TODO comments" → filesystem.search
"Run npm test" → shell.exec (approval required)

Troubleshooting

MCP servers not loading after config edit

Use Command Palette → Windsurf: Reload MCP Servers instead of just reopening a file. If that fails, fully quit and restart Windsurf.

Config directory doesn't exist

Create it manually: mkdir -p ~/.codeium/windsurf then create mcp_settings.json there.

npx not found

Windsurf inherits a limited shell PATH. Use the full path to npx: run which npx in a terminal and paste the absolute path as the command value.

Conductor starts but Cascade doesn't call tools

Cascade uses tools when needed. Try phrasing requests as actions: 'Read package.json' not 'Can you see package.json?'