Add the MinIO MCP server to Windsurf

Config last verified Jun 1, 2026

The exact config to run MinIO in Windsurf — paste it in, restart, and the tools load.

Prerequisites

  • Windsurf installed.
  • MINIO_ENDPOINT — Hostname:port of your MinIO or AIStor server.
  • MINIO_ACCESS_KEY — Access key used to authenticate to the object store.
  • MINIO_SECRET_KEY — Secret key paired with the access key.

Setup

1. Open ~/.codeium/windsurf/mcp_config.json

On Windows the file lives at %USERPROFILE%\.codeium\windsurf\mcp_config.json.

2. Add this configuration

Add to ~/.codeium/windsurf/mcp_config.json

~/.codeium/windsurf/mcp_config.json
json
{
  "mcpServers": {
    "minio": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "MINIO_ENDPOINT",
        "-e",
        "MINIO_ACCESS_KEY",
        "-e",
        "MINIO_SECRET_KEY",
        "-e",
        "MINIO_USE_SSL",
        "-v",
        "/path/to/local/dir:/data",
        "quay.io/minio/aistor/mcp-server-aistor:latest",
        "--allowed-directories",
        "/data"
      ],
      "env": {
        "MINIO_ENDPOINT": "<MINIO_ENDPOINT>",
        "MINIO_ACCESS_KEY": "<MINIO_ACCESS_KEY>",
        "MINIO_SECRET_KEY": "<MINIO_SECRET_KEY>",
        "MINIO_USE_SSL": "<MINIO_USE_SSL>"
      }
    }
  }
}

3. Restart Windsurf and confirm the MinIO tools load.

Gotchas

Windsurf's Cascade reads MCP servers from an "mcpServers" object in ~/.codeium/windsurf/mcp_config.json. Unlike most clients, remote servers are configured with the "serverUrl" field rather than "url", so a config that uses "url" silently fails to connect. Native remote transport is supported without an OAuth flow.

← Back to the MinIO MCP server