# Cline / MCP — error y clave API

## El error «Invalid MCP settings format»

**Causa real:** el perfil Cursor `9088c3a` tenía **7+ extensiones agente** (Cline, Cline Nightly, Roo, Kade, Agentica, Continue…) que al arrancar leen cada una su `mcp_settings.json`. Si algún archivo tenía formato incorrecto (p. ej. `apiProvider` en lugar de `mcpServers`), todas pueden mostrar el mismo error.

**Reparación automática:**

```powershell
cd C:\xampp\htdocs\cursor-mobile-bridge\tools
powershell -ExecutionPolicy Bypass -File .\fix-ide-mcp-equipitello.ps1
```

El script escanea **Cursor y VS Code** (`%APPDATA%\Code\User\globalStorage`). Un `cline_mcp_settings.json` con `apiProvider` en la ruta de **VS Code** también dispara el error aunque Cursor tenga el JSON correcto.

**Causa frecuente en Windows:** BOM UTF-8 (`EF BB BF`) al inicio del archivo — `JSON.parse` de Cline falla aunque el contenido sea válido. El script `fix-ide-mcp-equipitello.ps1` reescribe sin BOM.

**Duplicado Cline:** si tienes `cline-nightly` (v4.0.1783688187) **y** `claude-dev` (estable), ambos arrancan como «Cline» y compiten por MCP. Desinstala `saoudrizwan.claude-dev` y deja solo nightly, o usa Cursor Agent nativo sin Cline.

**Prevención permanente:** ver `UTF8_BOM_PREVENCION.md`. Módulo `tools/lib/Utf8NoBom.ps1`; auditoría periódica:

```powershell
cd C:\xampp\htdocs\cursor-mobile-bridge\tools
powershell -ExecutionPolicy Bypass -File .\audit-bom-json-equipitello.ps1 -IncludeHtdocsProjects -Repair
```

Desde EQUIPITELLO Tools (bridge): **Auditar JSON MCP (sin BOM)**.

**Nunca** uses `Set-Content -Encoding UTF8` en JSON MCP. En scripts nuevos:

```powershell
. 'C:\xampp\htdocs\scripts\json-write-safe.ps1'
Write-JsonFileNoBom -Path $path -Object @{ mcpServers = @{} }
```

Luego **cierra todas las ventanas de Cursor** y vuelve a abrir.

## ¿Cline necesita clave API?

| Qué | Dónde se configura | ¿Obligatorio? |
|-----|-------------------|---------------|
| **MCP** (Serena, Fetch…) | `cline_mcp_settings.json` → solo `{ "mcpServers": { ... } }` | No si no usas MCP en Cline |
| **API del modelo** (Anthropic, OpenRouter…) | Panel Cline → ⚙️ Settings → API Provider | Solo si **usas** Cline como agente |
| **Cursor Agent nativo** | Cursor Settings → Models | **Recomendado** — no necesitas Cline |

La clave API **nunca** va en `cline_mcp_settings.json`. Ese archivo solo admite servidores MCP.

### Si quieres usar Cline (opcional)

1. Ejecuta el script con `-KeepCline` (no deshabilita Cline).
2. En Cursor: icono Cline → Settings → elige proveedor (Anthropic / OpenRouter / Ollama local `http://127.0.0.1:11434`).
3. La API key se guarda en **Secret Storage** de VS Code/Cursor (no en un JSON visible).

### Recomendación EQUIPITELLO

- **Cursor:** Agent nativo + Serena (`~/.cursor/mcp.json`) — **sin Cline**.
- **VS Code:** GitHub Copilot Pro + extensiones Puter — **sin Cline**.

Script con Cline activo:

```powershell
.\fix-ide-mcp-equipitello.ps1 -KeepCline
```
