---
title: "Configuración del cliente"
description: "Configura Minds MCP con ChatGPT, Claude Desktop, Cursor y otros clientes."
canonical_url: "https://getminds.ai/mcp/es/setup"
last_updated: "2026-08-13T13:01:24.564Z"
---

# Configuración del cliente

Esta guía conecta el [servidor Minds MCP para investigación de mercado](/mcp/overview) con los clientes de IA que admiten herramientas remotas. Usa `https://getminds.ai/mcp` como URL del servidor.

## ChatGPT

1. Ve a **ChatGPT** → **Settings** → **Connected Apps**
2. Busca "Minds" o añade la URL del MCP: `https://getminds.ai/mcp`
3. Haz clic en **Connect** y autoriza vía OAuth (inicia sesión en tu cuenta de Minds)
4. Empieza a chatear — pídele a ChatGPT que cree Minds, ejecute paneles y analice resultados

ChatGPT renderiza widgets interactivos en línea — los resultados del panel con respuestas agrupadas, gráficos de barras y avatares de Minds clicables aparecen directamente en el chat.

## Claude Desktop

### Opción A: Remote Connector (recomendado — habilita widgets interactivos)

1. Abre Claude Desktop → **Customize** → **Connectors** (o **Settings** → **Connections**)
2. Añade `https://getminds.ai/mcp` como nuevo remote connector
3. Autoriza vía OAuth cuando se te pida — inicia sesión en tu cuenta de Minds
4. Las herramientas aparecen automáticamente tras la autorización

### Opción B: Local Connector (API key, solo texto)

Añade esto a tu archivo de configuración (`~/Library/Application Support/Claude/claude_desktop_config.json` en macOS):

```json
{
  "mcpServers": {
    "mindsai": {
      "command": "npx",
      "args": [
        "-y", "mcp-remote",
        "https://getminds.ai/mcp",
        "--header",
        "Authorization: Bearer minds_YOUR_API_KEY"
      ]
    }
  }
}
```

Reinicia Claude Desktop. Las herramientas funcionan de inmediato, pero los widgets interactivos no están disponibles con local connectors.

### Soporte de widgets en Claude

Las 15 herramientas anunciadas devuelven texto estructurado y enlaces clicables. El servidor registra además 18 herramientas canónicas de ciclo de vida para integraciones explícitas. La presentación de widgets depende del cliente y de su versión, por lo que la integración debe seguir siendo plenamente utilizable solo con resultados estructurados y de texto.

## Claude Code (CLI)

```bash
claude mcp add --transport http mindsai https://getminds.ai/mcp \
  --header "Authorization: Bearer minds_YOUR_API_KEY"
```

## Cursor

1. Abre Cursor Settings → **MCP**
2. Añade un nuevo servidor con la URL: `https://getminds.ai/mcp`
3. Autoriza el acceso cuando se te pida

## VS Code (GitHub Copilot)

1. Abre VS Code Settings → **Extensions** → **GitHub Copilot** → **MCP Servers**
2. Añade `https://getminds.ai/mcp` como nuevo servidor
3. Autoriza cuando se te pida

## OpenRouter, Open WebUI y pasarelas compatibles con OpenAI

Cuando es el **proveedor del modelo** (no el host) quien ejecuta la llamada MCP del lado del servidor — por ejemplo un modelo `openai/*` vía OpenRouter, la API Responses de OpenAI directamente o Open WebUI en modo *Native function-calling* — **debes usar autenticación por API key**. OAuth no funciona en este camino.

### Por qué OAuth no funciona aquí

Cuando Open WebUI ejecuta un agente `openai/gpt-5.2` en modo Native, envía el descriptor de la herramienta MCP en la petición a OpenAI/OpenRouter. El runner MCP del lado del servidor de OpenAI (en Azure, identificable por `User-Agent: python-httpx/*`) llama entonces a nuestro endpoint `/mcp` directamente. Ese runner solo adjunta encabezados **estáticos** configurados al registrar la herramienta — **no** realiza el handshake MCP OAuth (RFC 9728 / 8414 / 7591). El modo *OAuth — reenvía el access token del usuario* de Open WebUI es por tanto inoperante aquí: el token del usuario nunca sale de Open WebUI.

Resultado: Minds recibe la petición sin encabezado `Authorization` y responde:

```text
401 Unauthorized
www-authenticate: Bearer resource_metadata="https://getminds.ai/.well-known/oauth-protected-resource"
{"error":{"code":-32001,"message":"Authentication required. Connect your Minds account via OAuth or provide an API key."}}
```

### Configuración en Open WebUI

1. Genera una API key en [Settings → API Keys](/settings/api-keys) (formato `minds_…`).
2. En Open WebUI: **Admin → Ajustes → Herramientas → + Conexión**.
3. Ajusta:

  - **Tipo**: `Streamable HTTP (MCP)`
  - **URL**: `https://getminds.ai/mcp`
  - **Autenticación**: `Bearer` *(no OAuth)*
  - **Token**: tu clave `minds_…`
4. Guarda la conexión.
5. En la pestaña *Herramientas* de tu agente, activa la herramienta **Get Minds**.
6. Prueba pidiéndole al agente que liste tus Minds.

Si dejas `Autenticación: OAuth`, las llamadas solo funcionarán cuando Open WebUI ejecute la herramienta por sí mismo (es decir, *Function calling = Default*, no *Native*). La mayoría de los usuarios quieren el modo Native — así que usa una clave Bearer.

### OpenRouter directo (programático)

Al llamar a la API chat completions de OpenRouter con el servidor MCP de Minds adjunto, pasa la API key en el campo estático `headers` del descriptor de herramienta:

```json
{
  "type": "mcp",
  "server_label": "minds",
  "server_url": "https://getminds.ai/mcp",
  "headers": {
    "Authorization": "Bearer minds_TU_API_KEY"
  }
}
```

Lo mismo aplica a la API Responses de OpenAI directamente:

```python
from openai import OpenAI
client = OpenAI()
client.responses.create(
    model="gpt-5.2",
    input="Lista mis Minds",
    tools=[{
        "type": "mcp",
        "server_label": "minds",
        "server_url": "https://getminds.ai/mcp",
        "headers": {"Authorization": f"Bearer {os.environ['MINDS_API_KEY']}"},
    }],
)
```

## Autenticación por API Key

Para acceso programático o clientes que no soportan OAuth:

1. Ve a [Settings → API Keys](/settings/api-keys) en Minds
2. Crea una nueva API key (empieza por `minds_`)
3. Pásala como Bearer token: `Authorization: Bearer minds_your_key_here`

## OAuth Discovery

Para desarrolladores que construyan integraciones MCP, los metadatos OAuth están disponibles en:

<table>
<thead>
  <tr>
    <th>
      Endpoint
    </th>
    
    <th>
      Descripción
    </th>
  </tr>
</thead>

<tbody>
  <tr>
    <td>
      <code>
        /.well-known/oauth-protected-resource
      </code>
    </td>
    
    <td>
      Metadatos del recurso protegido (RFC 9728)
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        /.well-known/oauth-authorization-server
      </code>
    </td>
    
    <td>
      Metadatos del authorization server (RFC 8414)
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        /oauth/register
      </code>
    </td>
    
    <td>
      Dynamic Client Registration (RFC 7591)
    </td>
  </tr>
</tbody>
</table>

Se requiere OAuth 2.1 con PKCE (S256). Los clientes públicos (`token_endpoint_auth_method: "none"`) están soportados.

## Resolución de problemas

### Error "Authentication required"

Asegúrate de haber completado el flujo de autorización OAuth. Desconecta y vuelve a conectar tu cliente MCP para reautorizar.

Si estás llamando a Minds vía **OpenRouter, Open WebUI en modo Native o la API Responses de OpenAI directamente**, OAuth no es soportado en ese camino — el runner MCP del lado del servidor del proveedor del modelo no puede realizar el handshake OAuth. Cambia tu conexión MCP a **autenticación Bearer / API key** con una clave `minds_…`. Ver [OpenRouter, Open WebUI y pasarelas compatibles con OpenAI](#openrouter-open-webui-y-pasarelas-compatibles-con-openai) arriba.

### OAuth de Claude Desktop no se completa

Si el popup de OAuth se abre pero nunca se completa, prueba el enfoque de API key (Opción B anterior). El OAuth del remote connector de Claude Desktop puede ser intermitente.

### Mind not found

Cuando uses `sparkName`, asegúrate de que el nombre coincida estrechamente con tu Mind. El sistema usa fuzzy matching, pero requiere una puntuación de similitud razonable.

### El Mind sigue entrenándose

Los Minds nuevos pueden tardar un momento en completar el entrenamiento. Usa `get_mind_status` para comprobar si el entrenamiento está completo antes de chatear.

### Timeout en preguntas de panel

Las preguntas de panel con muchos grupos pueden tardar más de 2 minutos. Prueba a reducir el número de grupos o a simplificar la pregunta.

### La exportación PDF no está lista

Los informes PDF se generan de forma asíncrona. Usa `get_panel_status` para comprobar el estado de la exportación. La generación suele tardar entre 30 y 60 segundos.
