Skip to content

AI agents

Connect your AI assistant

Memory Notes has an MCP server. Connect Claude, ChatGPT, Cursor or your own agent, and it can search your memories, answer questions from them and, if you allow it, save new ones.

MCP server address

https://memorynotes.emodino.com/api/mcp

Before you start

You need a Memory Notes account: open the app, tap the account button and sign in with your email. There are two ways to connect:

  • Sign in from the assistant. Claude, ChatGPT and Claude Code open a Memory Notes sign-in page. Enter your email and the code we send, choose what the assistant may do, and press Allow. Nothing to copy or paste.
  • An access token. For Cursor, Claude Code and your own agents. Create one in the app under Account → Connected apps and paste it into the tool’s settings.

Claude (web, desktop and mobile)

  1. In Claude, open Settings → Connectors → Add custom connector.
  2. Paste https://memorynotes.emodino.com/api/mcp, then press Add and Connect.
  3. Sign in to Memory Notes with your email code. Reading is always allowed; tick “Save new memories” only if you want Claude to add notes. Press Allow.

On Team and Enterprise plans, an owner adds the connector under Organization settings first. To disconnect, remove it in Claude’s connector settings. A connection that goes unused for 30 days stops working on its own.

ChatGPT

  1. Turn on Developer mode in Settings → Apps & Connectors → Advanced settings. (OpenAI renames these menus often; its Apps SDK docs have the current path.)
  2. Create a connector named “Memory Notes” with the MCP server URL https://memorynotes.emodino.com/api/mcp and authentication set to OAuth. There’s no client ID or secret to enter.
  3. Sign in to Memory Notes and choose what ChatGPT may do.

Claude Code

Sign in through your browser:

claude mcp add --transport http memorynotes https://memorynotes.emodino.com/api/mcp

Then run /mcp, pick memorynotes and choose Authenticate. Or use an access token instead of signing in:

claude mcp add --transport http memorynotes https://memorynotes.emodino.com/api/mcp \
  --header "Authorization: Bearer mn_..."

Add --scope user to use it in every project. Check it with claude mcp list. The Connected apps screen in the app can copy the whole command for you, token included.

Cursor

Cursor connects with an access token. Add this to ~/.cursor/mcp.json for all projects, or to .cursor/mcp.json for one project (keep that file out of git):

{
  "mcpServers": {
    "memorynotes": {
      "url": "https://memorynotes.emodino.com/api/mcp",
      "headers": { "Authorization": "Bearer mn_..." }
    }
  }
}

Your own agent

Any MCP client that speaks Streamable HTTP and can send an Authorization header works. With the TypeScript SDK:

import { Client, StreamableHTTPClientTransport } from "@modelcontextprotocol/client";

const client = new Client({ name: "my-agent", version: "1.0.0" });
await client.connect(
  new StreamableHTTPClientTransport(new URL("https://memorynotes.emodino.com/api/mcp"), {
    requestInit: {
      headers: { Authorization: `Bearer ${process.env.MEMORY_NOTES_TOKEN}` },
    },
  }),
);

const result = await client.callTool({
  name: "search_memories",
  arguments: { query: "food preferences and allergies" },
});

Tools return JSON in structuredContent, and the same JSON as text for clients that ignore it.

Access tokens

  • Create one per tool in the app: Account → Connected apps. Give it a name, choose Read only or Read & write, and pick when it expires.
  • The token starts with mn_ and is shown once. Copy it then; we only keep a fingerprint of it, so we can’t show it again.
  • Revoke a token on the same screen at any time. It stops working on the next request.
  • A token can only reach your memories through MCP. It can’t sign in to the app or create other tokens.

What assistants can do

ToolWhat it doesNeeds
search_memoriesFinds the memories related to a topic, most relevant first.Read
ask_memoriesAnswers a question from your memories, with citations, like Ask in the app.Read
list_memoriesLists your memories, newest first. Can filter by date or by voice/text.Read
get_memoryGets one memory in full.Read
create_memorySaves a new text memory.Write

Assistants only ever see your own memories, never deleted ones. Memories they save show up in the app on its next sync. No tool can edit or delete a memory.

A few things to try once you’re connected:

  • “Check my memories for food allergies and preferences, then plan dinners for next week.”
  • “What did the plumber say about the water heater?”
  • “Save a memory: the meal plan for this week is fish tacos on Monday.” (needs write access)

Privacy and limits

  • search_memories and ask_memories work like Ask in the app: your question and the text of your memories go to our AI providers to find and answer.
  • Each search_memories or ask_memories call counts as one search toward your plan’s monthly search limit (150 on Regular, 300 on Heavy), shared with Ask in the app. Each note saved with create_memory counts toward your monthly note limit (200 on Regular, 1,000 on Heavy). Listing and getting memories don’t count.
  • When you reach a limit, or your free trial or subscription has ended, those tools return an error that says why, and the assistant can still list and read your memories. Limits reset on the 1st of each month. See Plans and subscriptions.
  • Once an assistant reads a memory, what it does with it is covered by that assistant’s own privacy policy.
  • Give write access only to assistants that should add notes. Read is enough for searching and answering.

More in the privacy policy. Stuck? Email support@emodino.com.