Conectar Cursor
Declarar Vitrina en mcp.json y autorizar a Cursor por OAuth.
Cursor lee los servidores MCP de un archivo mcp.json. Vitrina se declara ahí con una sola línea útil, la dirección. El resto lo hace el flujo de autorización.
Declarar el servidor
Elige el archivo
~/.cursor/mcp.json para todos tus proyectos, o .cursor/mcp.json dentro de un proyecto para que valga solo ahí. Si el archivo no existe, créalo.
Agrega Vitrina
{
"mcpServers": {
"vitrina": {
"url": "https://api.vitrinadev.com/mcp"
}
}
}Sin headers y sin ninguna clave: la autorización viene en el paso siguiente. Si ya tienes otros servidores en el archivo, agrega vitrina junto a ellos dentro de mcpServers.
Aprueba el servidor
Un servidor recién declarado aparece pero no se carga hasta que lo apruebas:
cursor-agent mcp listvitrina: not loaded (needs approval)cursor-agent mcp enable vitrina✓ Enabled and approved MCP server: vitrinaEn la aplicación, el mismo paso es el interruptor del servidor en Settings → Tools & Integrations.
Iniciar sesión
cursor-agent mcp login vitrinaMCP 'vitrina' requires authentication. Opening your browser...
If it doesn't open, navigate to:
https://api.vitrinadev.com/oauth/authorize?response_type=code&client_id=…
Listening on http://localhost:8787/callback for the OAuth callback...Se abre Vitrina en el navegador. La pantalla de permisos te va a decir, con el nombre del cliente y desde dónde viene:
Cursor quiere conectarse a Vitrina Una aplicación en este dispositivo (localhost:8787).
Entra con tu cuenta si no tenías sesión y revisa lo que va a poder leer. Marca la casilla de costos y márgenes si la quieres, y presiona Permitir:
✓ MCP login successful
Received authorization code '5yIk0H...'. You can close the browser. Re-running
the command should now complete authentication.cursor-agent mcp listvitrina: readyVer lo que quedó conectado
cursor-agent mcp list-tools vitrinaTools for vitrina (49):
- appointment_types_list (kind, active_only, q)
- appointments_get (id)
- appointments_list (status, kind, from, to, vehicle_id, owner_user_id, limit)
- contacts_get (id)
- contacts_search (q, exclude_id, include_merged, limit, offset, lifecycle_stage, channel, lead_source, tag_id, company_id)
…Ese 49 es el de esa corrida: un workspace sin la casilla de costos marcada. Con la casilla, aparecen seis más. La lista completa, por paquete y con lo que hace cada herramienta, está en Herramientas del conector.
Desconectar
Borrar el bloque de mcp.json saca a Vitrina de Cursor, pero no revoca nada. La autorización sigue viva hasta que la cortas en Conexiones → MCP → Aplicaciones conectadas.
Trampa
Cada «Permitir» deja una fila, aunque sea el mismo cliente
Autorizar de nuevo no reemplaza la autorización anterior: la agrega. Dos
inicios de sesión completados dejan dos filas en «Aplicaciones conectadas»,
las dos llamadas Cursor, y la vieja sigue teniendo acceso.
Un inicio de sesión que abandonaste a medias no deja nada: la fila se crea al presionar Permitir, no antes. Si ves más filas de las que esperabas, sobran de verdad. Mira la columna «Último uso» para saber cuál está en uso y desconecta el resto.