Skip to content

Cursor

Cursor has first-class MCP support. Drop a mcp.json file, restart Cursor, and OAuth runs in your browser the first time the agent reaches for Engram. For protocol background, see MCP.

Before you start, confirm:

  • You have an Engram account at app.engram.page.
  • At least one vault is synced. Open the Obsidian plugin or the web app and confirm notes have synced within the last day.
  • You can sign in via browser. The MCP auth flow opens a browser window.
https://mcp.engram.page/api/mcp

1. Edit mcp.json. Create or edit ~/.cursor/mcp.json (user-global) or .cursor/mcp.json at your project root (project-scoped, overrides global for the same server name):

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

2. Restart Cursor. Fully quit (Cmd+Q / File → Exit) and reopen. Window reload isn’t enough; MCP servers register at app start.

3. Verify. Open Settings → Tools & MCP and confirm engram shows in the server list.

Cursor doesn’t prompt for OAuth on connect. It triggers on the first tool call. Open a new chat and ask the agent to search your Engram. Your browser opens to sign in to Engram and approve the connection. Cursor stores the token and reuses it from there on. The grant is the full mcp scope. Granular per-action scopes are on the roadmap.

To skip OAuth (for headless or shared-vault setups), swap the block for an API key:

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

Get a key at app.engram.page/settings/api-keys.

Add the snippet below to your Cursor Rules: ~/.cursor/rules (user-scoped) or a .cursor/rules/*.mdc file in a project.

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.

Once connected, ask Cursor’s agent:

  • Search my vault for notes about the engineering interview process and summarize the top three.
  • Find anything I wrote about embeddings in the last month.

Cursor calls Engram’s search (or get_note, write_note, etc.) tool, pulls back results, and answers in-context. If the tool fires, you’re set.

  • Two engram entries in Tools & MCP. The server is defined in both ~/.cursor/mcp.json and .cursor/mcp.json. Remove one (project-scoped wins).
  • Server shows in Settings but agent never calls it. Known global-config injection issue on some Cursor builds. Workaround: move the config to project-level .cursor/mcp.json.
  • OAuth never prompts. The agent hasn’t invoked a tool yet. Force it: ask the agent to call the engram search tool by name. If still silent, restart Cursor; stale connection state can block the first call.

For cross-client failures, see Troubleshooting.

To disconnect Cursor from Engram:

  1. In Cursor, find the connector or MCP server entry and remove it.
  2. In Engram, open your account → API Keys & Sessions and revoke the matching session.
  3. The OAuth token is invalidated server-side. Cursor will need to re-authenticate to reconnect.

To remove it client-side, delete the engram block from your mcp.json and restart Cursor.