For websites, apps & little discoveries.
Let them
keep it.
A useful article. A word from your game. A place worth coming back to. Give it a home beyond the open tab.
Add “Save in #memory” to your website. People choose their keywords, sign in and save it in their own library. Your website does not get access to their memories.
Get the badgeA small button. A clear choice.
Offer something worth keeping.
Your badge carries a plain-text note and suggested keywords. Hover, focus or tap to see the selected words and add your own. Nothing is saved on hover.
Let the person make it theirs.
They can remove or add keywords in the badge, then sign in with their own Apple or Google account.
Save, with their say-so.
Saving continues after sign-in, then opens the #memory app or its download page. People already signed in see their account and the same Save action used on shared memories. No library token is shared with your website.
Make it part of your page
Choose the note you want to offer, try its expandable keyword chooser, then copy the HTML. Keep the wording and logo intact, give it room to breathe, and use it for an explicit save action.
Separate keywords with spaces or commas. A person can edit them before saving.
A button with somewhere to go.
Hover, focus or tap to choose your keywords. The same Save button starts saving to #memory.
Download SVGBuild a link from your own content
Put text and keywords in the URL fragment after #, using URLSearchParams to encode them. The fragment is not sent to our server when the page opens. The save page does not load marketing analytics.
const draft = new URLSearchParams({
text: `${article.title}\n${article.url}`,
keywords: 'reading, ideas',
});
const saveUrl = `https://www.usememory.com/save#${draft}`;Text can contain up to 10,000 characters. Saving requires 1–10 keywords of up to 40 characters each. Spaces and commas separate keywords; use a hyphen to keep a phrase together. Link to the source inside the note when useful.
The interactive version uses one hosted script and stylesheet. It never fetches a library or session. Your website can see words entered in its badge; #memory handles sign-in and saving on its own site. If scripts are unavailable, the embedded link still opens the save flow. The SVG-only version is a simple link without an editable hover panel. If you use a Content Security Policy, allow www.usememory.com for scripts, stylesheets and images. Use a normal link with target="_blank", rel="noopener noreferrer" and referrerpolicy="no-referrer". Open the save page as a tab, rather than embedding it in an iframe. The person signs in to save, or confirms with Save if already signed in. Saving then opens the app with the same download fallback as shared memories. Your site does not receive a saved-note ID or a library credential.
Want to save from inside your app?
Use our public MCP server with OAuth. A person authorizes your app, then your Save in #memory button calls save_memory with that authorization. Ask for write-only access if you do not need to read their library.
https://www.usememory.com/api/mcp
Start authorization from your MCP client or the discovered authorization endpoint. The approval screen at /oauth/consent needs a live request with its own connection ID and browser session; it is not a link to bookmark or embed. It shows the requesting app, its return origin, permissions and keyword limits before the person approves.
For a public browser app, use Authorization Code with S256 PKCE and no client secret. Restrict your grant to the keywords it needs. Reuse a stable externalRef for retries or updates. Follow the browser OAuth guide →
A write grant can create and update integration notes within its keyword grant. It does not grant reading, deletion or sharing. Account plans and request budgets apply across connections.
Connecting an assistant instead?
Start with Connect your assistant for Claude and other compatible MCP clients.