> ## Documentation Index
> Fetch the complete documentation index at: https://docs.darkfunnels.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Cursor, VS Code and others

> The connector in any MCP client: one URL and one config file.

OptiMind speaks standard MCP, so it works in any client that supports it. It is
always the same URL:

```
https://mcp.darkfunnels.ai/mcp?features=all
```

Nothing to register, no access to request: on connecting, the client discovers
how to authorize you and opens your browser. Sign in with **the same account you
use for the dashboard**.

## Cursor

Edit `~/.cursor/mcp.json` (global) or `.cursor/mcp.json` (that project only):

```json theme={null}
{
  "mcpServers": {
    "optimind": {
      "url": "https://mcp.darkfunnels.ai/mcp?features=all"
    }
  }
}
```

Cursor opens the browser the first time only, then stores the session.

## VS Code

Edit `.vscode/mcp.json` in your project, or the one in your user profile:

```json theme={null}
{
  "servers": {
    "optimind": {
      "type": "http",
      "url": "https://mcp.darkfunnels.ai/mcp?features=all"
    }
  }
}
```

<Warning>
  VS Code is where people get stuck, over two details:

  * The root key is **`servers`**, not `mcpServers` as in Cursor. With the wrong
    key VS Code **ignores the entire file and says nothing**.
  * **`"type": "http"`** is required. Without it the remote connection never comes
    up.
</Warning>

## Gemini CLI

Edit `~/.gemini/settings.json`, or the project's `.gemini/settings.json`. Watch
the field name: here the URL goes in **`httpUrl`**, not `url`:

```json theme={null}
{
  "mcpServers": {
    "optimind": {
      "httpUrl": "https://mcp.darkfunnels.ai/mcp?features=all"
    }
  }
}
```

Gemini CLI discovers the authorization on its own and stores the token in
`~/.gemini/mcp-oauth-tokens.json`, refreshing it when it expires.

## Any other client

Windsurf, Zed, Claude Desktop and the rest follow the same pattern. Only three
details change between them, and they are worth checking in your client's own
docs before fighting the file:

1. **What the root key is called** — `mcpServers` in almost all of them,
   `servers` in VS Code.
2. **What the URL field is called** — `url` in almost all of them, `httpUrl` in
   Gemini CLI.
3. **Whether a type is required** — `"type": "http"` in VS Code.

## If your client runs out of room for tools

Some clients cap how many tools the model can hold at once — Windsurf around
100, VS Code 128 — counting **all** your servers together. OptiMind ships 39
with `?features=all`, so with several connectors already installed you may not
fit.

The fix is to ask only for what you'll use. The list **replaces** the default
set rather than extending it:

```
https://mcp.darkfunnels.ai/mcp?features=conversations,orders
```

The groups are listed in the [tool reference](/referencia/tools), which is
published in Spanish. And if you want to look without being able to touch
anything:

```
https://mcp.darkfunnels.ai/mcp?read_only=true
```

## Headless (no human present)

Not today. Connecting requires a person to authorize in a browser with their
account, so an agent running on its own — a cron job, a worker, OpenAI's Agents
SDK or Claude's Agent SDK — cannot connect by itself.

Agent keys for that are in the works. In the meantime, if you need to automate
something with no human present, write to us and we'll look at it case by case.

<Note>
  If your client can't see your business, or sees it empty, it is almost always
  the same thing: you authorized with **a different account** and are connected to
  another workspace. Ask your assistant "which account are you connected to?" and,
  if it isn't the right one, remove the connector and connect again.
</Note>
