memshare-mcp 0.3.2 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # memshare
2
2
 
3
- **Peer-to-peer AI memory sharing between users — with consent.**
3
+ **Peer-to-peer AI memory sharing between users — approved on both sides.**
4
4
 
5
5
  [![npm](https://img.shields.io/npm/v/memshare-mcp.svg)](https://www.npmjs.com/package/memshare-mcp)
6
6
  [![CI](https://github.com/kampana/memshare/actions/workflows/ci.yml/badge.svg)](https://github.com/kampana/memshare/actions/workflows/ci.yml)
@@ -14,7 +14,7 @@ That third one is the part nothing else does. A designer working in Cursor and b
14
14
 
15
15
  No central server. No cloud. No signup.
16
16
 
17
- 🌐 **[memshare.dev site](https://kampana.github.io/memshare/)** · 📊 **[Pitch deck](https://kampana.github.io/memshare/pitch.html)** · 📄 **[Full spec](docs/SPEC.md)**
17
+ 🌐 **[Site](https://kampana.github.io/memshare/)** · 📊 **[Pitch deck](https://kampana.github.io/memshare/pitch.html)**
18
18
 
19
19
  ---
20
20
 
@@ -41,7 +41,7 @@ After setup, capture and recall happen in conversation — there is no command t
41
41
  >
42
42
  > *"remember that I like dark mode"* → the AI calls `memory_set`
43
43
 
44
- The commands exist for the decisions you should not delegate to a model: **what becomes shareable, what gets exported, and what you accept from someone else.** That is the point, not an unfinished UI.
44
+ Sharing works the same way. Ask to send something and you are shown the exact list — including anything held back for containing personal data — before a file is written. Ask to take something in and you see every item first. **The approval moves into the conversation rather than disappearing from it.** The CLI does all of this too, for scripting and for people who prefer it.
45
45
 
46
46
  Promoting happens either way — in conversation, or at a prompt:
47
47
 
@@ -147,11 +147,11 @@ These control what gets **written down** locally. What gets **shared** is a sepa
147
147
 
148
148
  | Mode | What happens | Who decides |
149
149
  |---|---|---|
150
- | `auto` **(default)** | The AI saves what it learns as you work. Everything lands `private`. | The AI, locally |
150
+ | `auto` **(default)** | The AI saves what it learns as you work, choosing `shareable` or `private` for each. | The AI, locally |
151
151
  | `suggest` | The AI calls `memory_suggest`. Nothing is stored until you run `memshare review`. | You, in batch |
152
152
  | `manual` | Nothing is saved unless you say "remember this". | You, every time |
153
153
 
154
- `auto` is the default because an empty store is useless, and nothing captured locally can leave your machine until you mark it `shareable` anyway. If you would rather approve every item, use `suggest` — and note that a direct `memory_set` is then queued as a suggestion rather than saved, so an over-eager model cannot skip the consent step.
154
+ `auto` is the default because an empty store is useless. The assistant picks a visibility for every memory — `shareable` for the project, the codebase and how the team works; `private` for anything about you personally, and whenever the call is arguable. Marking something `shareable` only makes it *eligible*: nothing leaves until you run an export and approve the preview. If you would rather approve every item, use `suggest` — and note that a direct `memory_set` is then queued as a suggestion rather than saved, so an over-eager model cannot skip the consent step.
155
155
 
156
156
  ```bash
157
157
  memshare review # approve or reject, one by one
@@ -184,14 +184,16 @@ It does **not** delete the bundle file, and it is **cooperative, not enforced**:
184
184
 
185
185
  ## MCP tools
186
186
 
187
- The server exposes five tools to any MCP client:
187
+ The server exposes seven tools to any MCP client:
188
188
 
189
189
  | Tool | What it does |
190
190
  |---|---|
191
191
  | `memory_set` | Save one durable fact, choosing `private` or `shareable` for it. Routed to the approval queue in `suggest` mode. |
192
192
  | `memory_get` | Recall memories by free text, tags, or most-recent. |
193
193
  | `memory_suggest` | Propose memories for the user to approve later. |
194
- | `memory_set_visibility` | Mark memories shareable or private, when the user asks in conversation. |
194
+ | `memory_set_visibility` | Mark memories shareable or private, when the user asks. |
195
+ | `memory_export` | Prepare a bundle to send someone. Previews first, writes only on confirmation. |
196
+ | `memory_import` | Take in a bundle someone sent. Previews first, imports only on confirmation. |
195
197
  | `memory_list_tags` | List every tag, so the model reuses tags instead of inventing near-duplicates. |
196
198
 
197
199
  ## CLI reference
package/dist/cli/index.js CHANGED
@@ -11,7 +11,7 @@ import { readBundleFile, writeBundleFile } from "../sharing/bundle.js";
11
11
  import { buildExportBundle, describeSkipReason, selectForExport, } from "../sharing/export.js";
12
12
  import { applyImport, planImport, senderTag } from "../sharing/import.js";
13
13
  import { c, fail, formatItemLine, formatPii, heading, info, isInteractive, ok, relativeTime, shortId, table, truncate, warn, } from "./ui.js";
14
- const VERSION = "0.3.2";
14
+ const VERSION = "0.4.1";
15
15
  const program = new Command();
16
16
  program
17
17
  .name("memshare")
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKpE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAsBjD,wBAAsB,YAAY,CAAC,KAAK,GAAE,WAA+B,GAAG,OAAO,CAAC,SAAS,CAAC,CAkP7F;AAED,yEAAyE;AACzE,wBAAsB,KAAK,CAAC,KAAK,GAAE,WAA+B,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBjF"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMpE,OAAO,EAAE,WAAW,EAA6B,MAAM,oBAAoB,CAAC;AAyB5E,wBAAsB,YAAY,CAAC,KAAK,GAAE,WAA+B,GAAG,OAAO,CAAC,SAAS,CAAC,CAoa7F;AAED,yEAAyE;AACzE,wBAAsB,KAAK,CAAC,KAAK,GAAE,WAA+B,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBjF"}
@@ -1,9 +1,14 @@
1
+ import * as path from "node:path";
1
2
  import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
3
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
3
4
  import { z } from "zod";
4
5
  import { detectProjectTag } from "../memory/project.js";
5
- import { MemoryStore } from "../memory/store.js";
6
+ import { summarisePII } from "../memory/redact.js";
7
+ import { MemoryStore, expandHome, parseDuration } from "../memory/store.js";
6
8
  import { Visibility } from "../memory/types.js";
9
+ import { readBundleFile, writeBundleFile } from "../sharing/bundle.js";
10
+ import { buildExportBundle, selectForExport } from "../sharing/export.js";
11
+ import { applyImport, planImport, senderTag } from "../sharing/import.js";
7
12
  /**
8
13
  * The MCP adapter. It owns no state -- every tool call goes straight to the
9
14
  * JSON files in ~/.memshare, which is the whole point: if MCP goes away, the
@@ -36,7 +41,7 @@ export async function createServer(store = new MemoryStore()) {
36
41
  const name = server.server.getClientVersion()?.name?.trim().toLowerCase();
37
42
  return name && name !== "" ? name : "mcp";
38
43
  };
39
- const server = new McpServer({ name: "memshare", version: "0.3.2" }, {
44
+ const server = new McpServer({ name: "memshare", version: "0.4.1" }, {
40
45
  instructions: "memshare is this user's own memory store, shared across every AI tool they use. " +
41
46
  "Treat it as your long-term memory of them.\n\n" +
42
47
  "At the start of a conversation, call memory_get to recall what you already know about " +
@@ -188,6 +193,139 @@ export async function createServer(store = new MemoryStore()) {
188
193
  ? "They are still on this machine only. Sharing them takes an explicit `memshare export`, which the user runs and approves."
189
194
  : "They can no longer be included in any export."));
190
195
  });
196
+ server.registerTool("memory_export", {
197
+ title: "Prepare memories to share with someone",
198
+ description: "Write a bundle file the user can send to another person. Nothing is transmitted -- this " +
199
+ "only writes a file to their machine, which they then send however they like.\n\n" +
200
+ "**Always call this twice.** The first call, without `confirmed`, changes nothing and " +
201
+ "returns exactly what would go in, including anything held back for containing personal " +
202
+ "or sensitive data. Show that list to the user in full and wait. Only if they agree, call " +
203
+ "again with `confirmed: true` to write the file.\n\n" +
204
+ "Never call it with `confirmed: true` first. The user deciding what leaves their machine " +
205
+ "is the point of this tool, not an obstacle to route around.\n\n" +
206
+ "Only items the user has marked 'shareable' are eligible; private ones are never included.",
207
+ inputSchema: {
208
+ tags: z
209
+ .array(z.string())
210
+ .optional()
211
+ .describe("Limit to memories carrying any of these tags. Omit to offer everything shareable."),
212
+ query: z.string().optional().describe("Limit to memories matching this text."),
213
+ for: z
214
+ .string()
215
+ .optional()
216
+ .describe("Who the bundle is for, recorded in it. E.g. 'sam'."),
217
+ expires: z
218
+ .string()
219
+ .optional()
220
+ .describe("Refuse import after this long, e.g. '30d'. Imported items inherit the deadline."),
221
+ note: z.string().optional().describe("A short note to the recipient."),
222
+ confirmed: z
223
+ .boolean()
224
+ .optional()
225
+ .describe("Leave unset to preview. Set true only after the user has seen the list and agreed."),
226
+ },
227
+ annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false },
228
+ }, async ({ tags, query, for: forWhom, expires, note, confirmed }) => {
229
+ const selection = await selectForExport(store, {
230
+ ...(tags && tags.length > 0 ? { tags } : {}),
231
+ ...(query ? { query } : {}),
232
+ });
233
+ if (selection.included.length === 0 && selection.blocked.length === 0) {
234
+ const why = selection.skipped.length > 0
235
+ ? ` ${selection.skipped.length} memory(s) matched but are marked private.`
236
+ : "";
237
+ return text(`Nothing to export.${why} Only memories marked 'shareable' can be included -- ` +
238
+ "memory_set_visibility can change that, if the user asks.");
239
+ }
240
+ const lines = selection.included.map((c) => `- ${c.item.content}`);
241
+ const blocked = selection.blocked.map((c) => `- ${c.item.content}\n held back: ${summarisePII(c.findings)}`);
242
+ if (!confirmed) {
243
+ const parts = [
244
+ `Nothing written yet. This would share ${selection.included.length} memory(s)` +
245
+ (forWhom ? ` with ${forWhom}` : "") +
246
+ ":",
247
+ lines.join("\n") || "(none)",
248
+ ];
249
+ if (blocked.length > 0) {
250
+ parts.push(`\n${selection.blocked.length} held back for containing personal or sensitive data:`, blocked.join("\n"), "Those stay out unless the user explicitly asks to include them, via `memshare export --redact-blocked`.");
251
+ }
252
+ parts.push("\nShow this list to the user and wait. Call again with confirmed: true only if they agree.");
253
+ return text(parts.join("\n"));
254
+ }
255
+ if (selection.included.length === 0) {
256
+ return text("Every matching memory was held back for containing sensitive data. Nothing written.");
257
+ }
258
+ const config = await store.readConfig();
259
+ const bundle = buildExportBundle(selection.included.map((c) => c.item), {
260
+ exportedBy: config.displayName,
261
+ ...(note ? { description: note } : {}),
262
+ ...(forWhom ? { exportedFor: forWhom } : {}),
263
+ ...(expires ? { expiresAt: parseDuration(expires) } : {}),
264
+ });
265
+ const written = await writeBundleFile(bundle, store.bundlesDir);
266
+ return text(`Wrote ${written}\n${selection.included.length} memory(s)` +
267
+ (forWhom ? ` for ${forWhom}` : "") +
268
+ (expires ? `, expiring in ${expires}` : "") +
269
+ `.\n\nTell the user where the file is and that they need to send it themselves -- ` +
270
+ "memshare never transmits anything. The recipient runs `memshare import <file>` and " +
271
+ "accepts items one by one.");
272
+ });
273
+ server.registerTool("memory_import", {
274
+ title: "Take in memories someone sent",
275
+ description: "Read a bundle file another person sent and add the memories the user wants from it.\n\n" +
276
+ "**Always call this twice.** The first call, without `confirmed`, changes nothing and " +
277
+ "returns every item in the bundle, flagging which ones the user already knows and " +
278
+ "anything that looks sensitive. Show that list and wait. Only if they agree, call again " +
279
+ "with `confirmed: true`.\n\n" +
280
+ "By default the second call takes everything new. If the user only wants some of it, pass " +
281
+ "`accept` with the ids from the preview.\n\n" +
282
+ "Imported memories are stored private, whatever the sender marked them -- receiving " +
283
+ "something is not permission to pass it on. Nothing the user already had is overwritten.",
284
+ inputSchema: {
285
+ file: z.string().min(1).describe("Path to the .memshare.json file the sender provided."),
286
+ confirmed: z
287
+ .boolean()
288
+ .optional()
289
+ .describe("Leave unset to preview. Set true only after the user has seen the list and agreed."),
290
+ accept: z
291
+ .array(z.string())
292
+ .optional()
293
+ .describe("Ids from the preview to take. Omit to take everything new."),
294
+ },
295
+ annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false },
296
+ }, async ({ file, confirmed, accept }) => {
297
+ const result = await readBundleFile(path.resolve(expandHome(file)));
298
+ if (!result.ok || !result.bundle) {
299
+ return text(`Cannot use this bundle:\n${result.errors.map((e) => `- ${e}`).join("\n")}`);
300
+ }
301
+ const plan = await planImport(store, result.bundle);
302
+ const from = plan.bundle.metadata.exportedBy;
303
+ if (!confirmed) {
304
+ const lines = plan.entries.map((e) => {
305
+ const flags = [
306
+ e.status === "duplicate" ? "already known" : undefined,
307
+ e.status === "expired" ? "expired" : undefined,
308
+ e.findings.length > 0 ? `sensitive: ${summarisePII(e.findings)}` : undefined,
309
+ ].filter(Boolean);
310
+ return `- ${e.item.content}${flags.length > 0 ? ` (${flags.join("; ")})` : ""}\n id: ${e.item.id}`;
311
+ });
312
+ return text(`Nothing imported yet. ${from} sent ${plan.counts.total} memory(s), ` +
313
+ `${plan.counts.new} of them new:\n${lines.join("\n")}\n\n` +
314
+ "Show this to the user and wait. Call again with confirmed: true to take the new ones, " +
315
+ "or pass `accept` with the ids they actually want.");
316
+ }
317
+ const acceptedIds = accept && accept.length > 0
318
+ ? accept
319
+ : plan.entries.filter((e) => e.status === "new").map((e) => e.item.id);
320
+ if (acceptedIds.length === 0)
321
+ return text("Nothing new to import.");
322
+ const applied = await applyImport(store, plan, {
323
+ acceptedIds,
324
+ addTags: [senderTag(from)],
325
+ });
326
+ return text(`Imported ${applied.imported.length} memory(s) from ${from}, stored private and tagged ` +
327
+ `${senderTag(from)}. Nothing the user already had was changed.`);
328
+ });
191
329
  server.registerTool("memory_list_tags", {
192
330
  title: "List memory tags",
193
331
  description: "List every tag in the store. Useful before memory_get, to see which topics exist and to reuse " +
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "memshare-mcp",
3
- "version": "0.3.2",
4
- "description": "Peer-to-peer AI memory sharing between users — with consent. Local-first JSON memory store with an MCP server and CLI.",
3
+ "version": "0.4.1",
4
+ "description": "Peer-to-peer AI memory sharing between users — approved on both sides. Local-first JSON memory store with an MCP server and CLI.",
5
5
  "keywords": [
6
6
  "mcp",
7
7
  "model-context-protocol",