@tpsdev-ai/flair-mcp 0.1.1 → 0.4.0

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
@@ -54,8 +54,10 @@ Once configured, Claude Code (or any MCP client) gets these tools:
54
54
  | Variable | Default | Description |
55
55
  |----------|---------|-------------|
56
56
  | `FLAIR_AGENT_ID` | *(required)* | Agent identity for memory scoping |
57
- | `FLAIR_URL` | `http://localhost:9926` | Flair server URL |
57
+ | `FLAIR_URL` | `http://localhost:19926` | Flair server URL |
58
58
  | `FLAIR_KEY_PATH` | auto-resolved | Path to Ed25519 private key |
59
+ | `FLAIR_ADMIN_USER` | *(optional)* | Admin username for Basic auth (standalone mode) |
60
+ | `FLAIR_ADMIN_PASSWORD` | *(optional)* | Admin password for Basic auth (standalone mode) |
59
61
 
60
62
  ## How It Works
61
63
 
@@ -77,7 +79,7 @@ Point to a remote Flair instance:
77
79
  "args": ["@tpsdev-ai/flair-mcp"],
78
80
  "env": {
79
81
  "FLAIR_AGENT_ID": "my-project",
80
- "FLAIR_URL": "http://your-server:9926"
82
+ "FLAIR_URL": "http://your-server:19926"
81
83
  }
82
84
  }
83
85
  }
package/dist/index.js CHANGED
@@ -61,7 +61,10 @@ server.tool("memory_store", "Save information to persistent memory. Use for less
61
61
  type: z.enum(["session", "lesson", "decision", "preference", "fact", "goal"]).optional().default("session"),
62
62
  durability: z.enum(["permanent", "persistent", "standard", "ephemeral"]).optional().default("standard")
63
63
  .describe("permanent=inviolable, persistent=key decisions, standard=default, ephemeral=auto-expires 72h"),
64
- tags: z.array(z.string()).optional().describe("Optional tags for categorization"),
64
+ tags: z.union([
65
+ z.array(z.string()),
66
+ z.string().transform(s => s.startsWith("[") ? JSON.parse(s) : s.split(",").map(t => t.trim()).filter(Boolean)),
67
+ ]).optional().describe("Optional tags — array or comma-separated string"),
65
68
  }, async ({ content, type, durability, tags }) => {
66
69
  const result = await flair.memory.write(content, {
67
70
  type: type,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tpsdev-ai/flair-mcp",
3
- "version": "0.1.1",
3
+ "version": "0.4.0",
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",