Add the Zep Graphiti MCP server to Windsurf

Config last verified Nov 10, 2026

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

Prerequisites

  • Windsurf installed.
  • OPENAI_API_KEY — OpenAI key for entity extraction and the default embedder. Other providers use ANTHROPIC_API_KEY, GOOGLE_API_KEY, GROQ_API_KEY, AZURE_OPENAI_API_KEY, or VOYAGE_API_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": {
    "zep": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "OPENAI_API_KEY",
        "-e",
        "NEO4J_URI",
        "-e",
        "NEO4J_USER",
        "-e",
        "NEO4J_PASSWORD",
        "zepai/knowledge-graph-mcp:standalone",
        "uv",
        "run",
        "--no-sync",
        "main.py",
        "--transport",
        "stdio",
        "--database-provider",
        "neo4j"
      ],
      "env": {
        "OPENAI_API_KEY": "<OPENAI_API_KEY>",
        "NEO4J_URI": "<NEO4J_URI>",
        "NEO4J_USER": "<NEO4J_USER>",
        "NEO4J_PASSWORD": "<NEO4J_PASSWORD>"
      }
    }
  }
}

3. Restart Windsurf and confirm the Zep Graphiti 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 Zep Graphiti MCP server