Ir al contenido

Cursor

Cursor tiene compatibilidad de primera clase con MCP. Añade un archivo mcp.json, reinicia Cursor y OAuth se ejecuta en tu navegador la primera vez que el agente recurre a Engram. Para conocer el protocolo, consulta MCP.

Antes de empezar, confirma que:

  • Tienes una cuenta de Engram en app.engram.page.
  • Al menos una bóveda está sincronizada. Abre el plugin de Obsidian o la aplicación web y confirma que las notas se han sincronizado en el último día.
  • Puedes iniciar sesión desde el navegador. El flujo de autenticación de MCP abre una ventana del navegador.
  • Si piensas usar una clave de API en lugar de OAuth: las claves de API requieren Pro. El inicio de sesión con OAuth funciona en todos los planes, incluido Free, y es el camino recomendado. Free y Starter no pueden crear ni usar claves de API.
https://mcp.engram.page

1. Edita mcp.json. Crea o edita ~/.cursor/mcp.json (global del usuario) o .cursor/mcp.json en la raíz de tu proyecto (ámbito de proyecto, tiene prioridad sobre el global para el mismo nombre de servidor):

{
"mcpServers": {
"engram": {
"url": "https://mcp.engram.page"
}
}
}

2. Reinicia Cursor. Ciérralo por completo (Cmd+Q / File → Exit) y vuelve a abrirlo. Recargar la ventana no basta; los servidores MCP se registran al iniciar la aplicación.

3. Verifica. Abre Settings → Tools & MCP y confirma que engram aparece en la lista de servidores.

Cursor no solicita OAuth al conectar. Se activa en la primera llamada a una herramienta. Abre un chat nuevo y pide al agente que busque en tu Engram. Tu navegador se abre para que inicies sesión en Engram y apruebes la conexión. Cursor guarda el token y lo reutiliza a partir de entonces. La concesión es el scope completo mcp. Los scopes granulares por acción están en la hoja de ruta.

Para omitir OAuth (en configuraciones sin interfaz o con bóveda compartida), sustituye el bloque por una clave de API:

{
"mcpServers": {
"engram": {
"url": "https://mcp.engram.page",
"headers": { "Authorization": "Bearer ${env:ENGRAM_API_KEY}" }
}
}
}

Obtén una clave en app.engram.page/settings/api-keys.

Añade el fragmento de abajo a tus Cursor Rules: ~/.cursor/rules (ámbito de usuario) o un archivo .cursor/rules/*.mdc en un proyecto.

Engram holds my personal notes — treat it as your long-term memory of me. Search it when a question depends on context I might have shared before. Before saving or updating a note, ask first.

Una vez conectado, pregunta al agente de Cursor:

  • Busca en mi bóveda notas sobre el proceso de entrevistas de ingeniería y resume las tres más relevantes.
  • Encuentra todo lo que escribí sobre embeddings en el último mes.

Cursor llama a la herramienta search de Engram (o get_note, write_note, etc.), trae los resultados y responde en contexto. Si la herramienta se activa, todo está listo.

Solución de problemas (específica de Cursor)

Sección titulada «Solución de problemas (específica de Cursor)»
  • Dos entradas engram en Tools & MCP. El servidor está definido tanto en ~/.cursor/mcp.json como en .cursor/mcp.json. Elimina una (prevalece la de ámbito de proyecto).
  • El servidor aparece en Settings pero el agente nunca lo llama. Problema conocido de inyección de la configuración global en algunas versiones de Cursor. Solución alternativa: mueve la configuración al .cursor/mcp.json a nivel de proyecto.
  • OAuth nunca se solicita. El agente aún no ha invocado ninguna herramienta. Fuérzalo: pide al agente que llame por su nombre a la herramienta search de engram. Si sigue sin pasar nada, reinicia Cursor; un estado de conexión obsoleto puede bloquear la primera llamada.

Para fallos comunes a todos los clientes, consulta Solución de problemas.

Para desconectar Cursor de Engram:

  1. En Cursor, busca la entrada del conector o del servidor MCP y elimínala.
  2. En Engram, abre tu cuenta → API Keys & Sessions y revoca la sesión correspondiente.
  3. El token OAuth se invalida en el servidor. Cursor tendrá que volver a autenticarse para reconectarse.

Para quitarlo en el lado del cliente, elimina el bloque engram de tu mcp.json y reinicia Cursor.