@tpsdev-ai/flair-mcp 0.19.0 → 0.20.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.
Files changed (2) hide show
  1. package/dist/index.js +8 -2
  2. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -176,12 +176,17 @@ export async function runMcp() {
176
176
  "standard — default working memory, recent context (e.g., 'discussed auth flow today')\n" +
177
177
  "ephemeral — scratch state, auto-expires 72h (e.g., 'currently debugging issue #42')"),
178
178
  tags: z.array(z.string()).optional().describe("Array of tag strings"),
179
- }, async ({ content, type, durability, tags }) => {
179
+ visibility: z.enum(["private", "shared"]).optional().describe("Writer-controlled sharing intent (omit to use the server's durability-keyed default: " +
180
+ "permanent/persistent -> shared, standard/ephemeral -> private). " +
181
+ "private -- never visible to another agent, even one with a memory grant. " +
182
+ "shared -- visible to the owner and any agent holding a read/search grant."),
183
+ }, async ({ content, type, durability, tags, visibility }) => {
180
184
  try {
181
185
  const result = await flair.memory.write(content, {
182
186
  type: type,
183
187
  durability: durability,
184
188
  tags,
189
+ visibility: visibility,
185
190
  dedup: true,
186
191
  dedupThreshold: 0.95,
187
192
  });
@@ -197,6 +202,7 @@ export async function runMcp() {
197
202
  // data-loss bug. The gate is server-side now and never suppresses.)
198
203
  const deduplicated = result.deduplicated === true;
199
204
  const matchedId = result.matchedId;
205
+ const effectiveVisibility = result.visibility;
200
206
  const preview = content.length > 120 ? content.slice(0, 120) + "..." : content;
201
207
  const tagStr = tags && tags.length > 0 ? tags.join(", ") : "none";
202
208
  const lines = [
@@ -204,7 +210,7 @@ export async function runMcp() {
204
210
  `Preview: ${preview}`,
205
211
  `Size: ${content.length} chars`,
206
212
  `Tags: ${tagStr}`,
207
- `Type: ${type}, Durability: ${durability}`,
213
+ `Type: ${type}, Durability: ${durability}, Visibility: ${effectiveVisibility ?? "(server default)"}`,
208
214
  ];
209
215
  if (deduplicated && matchedId) {
210
216
  lines.push("", `Note: similar to existing memory id=${matchedId} — both are kept. ` +
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tpsdev-ai/flair-mcp",
3
- "version": "0.19.0",
3
+ "version": "0.20.1",
4
4
  "description": "MCP server for Flair — persistent memory for Claude Code, Cursor, and any MCP client.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -27,7 +27,7 @@
27
27
  },
28
28
  "dependencies": {
29
29
  "@modelcontextprotocol/sdk": "1.27.1",
30
- "@tpsdev-ai/flair-client": "0.19.0",
30
+ "@tpsdev-ai/flair-client": "0.20.1",
31
31
  "zod": "4.3.6"
32
32
  },
33
33
  "license": "Apache-2.0",