Core โ€” Read & Write
memory_get Look up what is already known about the user and their work โ–พ
Parameters
query stringFree text matched against content and tags. Multi-word matches any word.
tags string[]Return items carrying any of these tags.
visibility "private" | "shareable"Filter by visibility. Omit for both.
from stringFilter by source tool โ€” claude-code, cursor-vscode, cli.
limit numberMax items (default 20, max 200).
Conversation
You"what do you know about the auth service?"
AIcalls memory_get({ query: "auth service" })
Response
Found 3 memories: 1. Auth service uses JWT with 15-min refresh tokens. tags: auth, backend ยท visibility: shareable ยท from: claude-code 2. Auth endpoints require the X-Request-ID header for tracing. tags: auth, observability ยท visibility: shareable ยท from: cursor-vscode 3. The old SAML flow was removed in v2.4; don't reference it. tags: auth ยท visibility: private ยท from: cli
memory_set Save one durable fact โ€” a decision, a preference, a convention โ–พ
Parameters
content string requiredThe fact as a standalone sentence.
visibility "private" | "shareable" requiredshareable for project facts; private for personal preferences.
tags string[]Topic tags, e.g. ["auth", "deploy"]. Project tag is added automatically.
Conversation
You"we went with Postgres โ€” the JSONB support decided it"
AInoted: the team chose Postgres for JSONB support.
Response
โœ“ Saved (id: mem_a3f8c2d1) content: The team chose Postgres over MySQL for its JSONB support. visibility: shareable ยท tags: database, architecture
Curation โ€” Organize & Control
memory_forget Permanently delete memories by id โ€” no undo, only when you ask โ–พ
Parameters
ids string[] requiredMemory ids to delete (full or short form).
Conversation
You"forget what you know about the old auth flow"
AIcalls memory_get first, shows you what matched
You"yes, delete it"
AIcalls memory_forget({ ids: ["mem_e7b21f"] })
Response
โœ“ Deleted 1 memory. removed: mem_e7b21f โ€” "The old SAML flow was removed in v2.4"
memory_list_tags List every tag in the store and how many memories carry it โ–พ
Parameters
None โ€” returns all tags and their counts.
Conversation
You"what topics do you have memories about?"
AIcalls memory_list_tags()
Response
8 tags: auth (5) ยท deploy (3) ยท architecture (8) ยท database (4) frontend (2) ยท testing (3) ยท ci (1) ยท preferences (6)
memory_set_visibility Mark memories as shareable (eligible for export) or private โ–พ
Parameters
visibility "private" | "shareable" requiredThe new visibility.
ids string[]Specific memory ids to change.
query stringMatch memories by text content.
tags string[]Match memories by tag.
Conversation
You"make the project-x notes shareable"
AIcalls memory_set_visibility({ visibility: "shareable", tags: ["project-x"] })
Response
โœ“ Updated 4 memories to shareable. These items are now eligible for export. Nothing is shared until you run an export and approve the preview.
memory_suggest Propose memories without saving โ€” you review and approve each one โ–พ
Parameters
suggestions object[] requiredEach: { content: string, tags?: string[] }
Conversation
AIin suggest mode, proposes what it learned from the session
Response
โœ“ 3 suggestions queued for review. 1. The deploy pipeline requires manual approval for production. tags: deploy 2. Error boundaries wrap each route, not the whole app. tags: frontend 3. Prefers tabs over spaces, 2-width. tags: preferences Run memshare review to approve or reject each one.
Sharing โ€” Send & Receive
memory_export Write a bundle file to send to someone โŸณ two-phase โ–พ
Parameters
for stringWho the bundle is for. Recorded in it.
query stringLimit to memories matching this text.
tags string[]Limit by tag.
expires stringRefuse import after this, e.g. "30d".
note stringA note to the recipient.
confirmed booleanOmit to preview. true to write the file.
Conversation (two-phase)
You"send Dana the architecture notes"
AI1st call (preview) โ€” shows exactly what would go in
You"looks good"
AI2nd call with confirmed: true โ€” writes the bundle
Response (preview)
Would export 5 memories for Dana, expiring in 7 days: โœ“ API uses cursor-based pagination, not offset. โœ“ The team chose Postgres for JSONB support. โœ“ Deploy requires manual prod approval. โœ“ Error boundaries wrap each route. โœ“ Rate limiter is 100 req/min per API key. โš  Held back (private): Prefers dark mode in all editors. Say "go ahead" to write the bundle, or adjust.
Response (confirmed)
โœ“ Bundle written. path: ~/.memshare/bundles/bundle-a3f8c2d1.memshare.json for: Dana ยท items: 5 ยท expires: 2026-09-28 Send the file however you like โ€” email, Slack, AirDrop.
memory_import Accept memories from a bundle someone sent you โŸณ two-phase โ–พ
Parameters
file string requiredPath to the .memshare.json bundle.
accept string[]Specific ids from the preview to accept. Omit for all.
confirmed booleanOmit to preview. true to import.
Conversation (two-phase)
You"take in that bundle from Alice"
AI1st call โ€” shows every item, flags duplicates and sensitive data
You"take all except the last one"
AI2nd call with confirmed: true and accept list
Response (preview)
Bundle from Alice โ€” 4 items, expires 2026-10-01: Note: "Here's the backend context you'll need." 1. Auth service uses JWT with 15-min refresh. โ† you already have this 2. API uses cursor-based pagination, not offset. new 3. Webhook retries use exponential backoff, max 5. new 4. Staging env resets nightly at 3am UTC. new 1 duplicate skipped, 3 new. Say which to take.
Response (confirmed)
โœ“ Imported 3 memories. All stored as private โ€” receiving is not consent to share.
memory_preview Read a bundle without storing anything โ€” look before you decide โ–พ
Parameters
file string requiredPath to the .memshare.json bundle.
Conversation
You"what did Dana send me?"
AIcalls memory_preview โ€” nothing stored, just shows the contents
Response
Bundle from Dana โ€” 5 items, expires in 6 days. Note: "Architecture context for the new API." Hash: โœ“ verified (unmodified since export). 1. API uses cursor-based pagination, not offset. 2. The team chose Postgres for JSONB support. 3. Deploy requires manual prod approval. 4. Error boundaries wrap each route. 5. Rate limiter is 100 req/min per API key. Nothing stored. Say "import" if you want any of it.
Monitoring
memory_stats How much is stored, how recently, and where it came from โ–พ
Parameters
days numberLookback window for recent/perDay (default 14, max 365).
Conversation
You"is memshare actually saving things?"
AIcalls memory_stats()
Response
12 memories, 5 in the last 14 days. โ–‚โ–โ–„โ–ˆโ–‚ โ–โ–ƒ 14d ago โ†’ today ยท 9 captured by an assistant, 3 added by hand ยท 5 shareable, 7 private