@prmichaelsen/remember-mcp 3.14.15 → 3.14.16

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.
@@ -914,7 +914,9 @@ var CONTENT_TYPES = [
914
914
  "ghost",
915
915
  "comment",
916
916
  // Profile
917
- "profile"
917
+ "profile",
918
+ // Agent
919
+ "agent"
918
920
  ];
919
921
  var CONTENT_TYPE_METADATA = {
920
922
  // Core Types
@@ -1230,6 +1232,25 @@ var CONTENT_TYPE_METADATA = {
1230
1232
  category: "cross_user",
1231
1233
  description: "User profile published to the profiles space for people discovery",
1232
1234
  examples: ["User bio", "About me", "Profile introduction"]
1235
+ },
1236
+ // Agent
1237
+ agent: {
1238
+ name: "agent",
1239
+ category: "system",
1240
+ description: "Agent working memory \u2014 observations, preferences, session notes, project tracking",
1241
+ examples: [
1242
+ "User responds well to concise, bulleted answers",
1243
+ "User prefers seeing full code context rather than snippets",
1244
+ 'When user says "fix it", they mean fix and commit without asking',
1245
+ "User is a senior engineer working primarily in TypeScript",
1246
+ "User timezone is US Central, typically active 9am-11pm",
1247
+ "User is building agentbase.me \u2014 an AI integration platform on Cloudflare Workers",
1248
+ "Auth system redesign planned for Q2 \u2014 user wants JWT replaced with session cookies",
1249
+ "User tracking 3 active projects: agentbase.me, remember-core, agentbase-mobile",
1250
+ "Milestone M36 (Notifications) nearly complete \u2014 4 tasks remaining as of March 2026",
1251
+ "Follow up March 10: revisit subscription tier pricing discussion"
1252
+ ],
1253
+ common_fields: ["observations", "preferences", "summaries", "follow_ups"]
1233
1254
  }
1234
1255
  };
1235
1256
  function isValidContentType(type) {
@@ -1515,11 +1536,23 @@ function buildCombinedSearchFilters(collection, filters) {
1515
1536
  function buildDocTypeFilters(collection, docType, filters) {
1516
1537
  const filterList = [];
1517
1538
  filterList.push(collection.filter.byProperty("doc_type").equal(docType));
1518
- if (docType === "memory" && filters?.types && filters.types.length > 0) {
1519
- if (filters.types.length === 1) {
1520
- filterList.push(collection.filter.byProperty("content_type").equal(filters.types[0]));
1539
+ if (docType === "memory") {
1540
+ const DEFAULT_EXCLUDED_TYPES = ["agent"];
1541
+ if (filters?.types && filters.types.length > 0) {
1542
+ if (filters.types.length === 1) {
1543
+ filterList.push(collection.filter.byProperty("content_type").equal(filters.types[0]));
1544
+ } else {
1545
+ filterList.push(collection.filter.byProperty("content_type").containsAny(filters.types));
1546
+ }
1521
1547
  } else {
1522
- filterList.push(collection.filter.byProperty("content_type").containsAny(filters.types));
1548
+ for (const excludedType of DEFAULT_EXCLUDED_TYPES) {
1549
+ filterList.push(collection.filter.byProperty("content_type").notEqual(excludedType));
1550
+ }
1551
+ }
1552
+ if (filters?.exclude_types && filters.exclude_types.length > 0) {
1553
+ for (const excludedType of filters.exclude_types) {
1554
+ filterList.push(collection.filter.byProperty("content_type").notEqual(excludedType));
1555
+ }
1523
1556
  }
1524
1557
  }
1525
1558
  if (filters?.weight_min !== void 0) {
@@ -2018,6 +2051,7 @@ var MemoryService = class {
2018
2051
  parent_id: input.parent_id ?? null,
2019
2052
  thread_root_id: input.thread_root_id ?? null,
2020
2053
  moderation_flags: input.moderation_flags ?? [],
2054
+ follow_up_at: input.follow_up_at || null,
2021
2055
  space_ids: [],
2022
2056
  group_ids: []
2023
2057
  };
@@ -2719,6 +2753,8 @@ var COMMON_MEMORY_PROPERTIES = [
2719
2753
  { name: "parent_id", dataType: configure.dataType.TEXT },
2720
2754
  { name: "thread_root_id", dataType: configure.dataType.TEXT },
2721
2755
  { name: "moderation_flags", dataType: configure.dataType.TEXT_ARRAY },
2756
+ // Agent follow-up tracking
2757
+ { name: "follow_up_at", dataType: configure.dataType.DATE },
2722
2758
  // Soft delete
2723
2759
  { name: "deleted_at", dataType: configure.dataType.DATE },
2724
2760
  { name: "deleted_by", dataType: configure.dataType.TEXT },
package/dist/server.js CHANGED
@@ -918,7 +918,9 @@ var CONTENT_TYPES = [
918
918
  "ghost",
919
919
  "comment",
920
920
  // Profile
921
- "profile"
921
+ "profile",
922
+ // Agent
923
+ "agent"
922
924
  ];
923
925
  var CONTENT_TYPE_METADATA = {
924
926
  // Core Types
@@ -1234,6 +1236,25 @@ var CONTENT_TYPE_METADATA = {
1234
1236
  category: "cross_user",
1235
1237
  description: "User profile published to the profiles space for people discovery",
1236
1238
  examples: ["User bio", "About me", "Profile introduction"]
1239
+ },
1240
+ // Agent
1241
+ agent: {
1242
+ name: "agent",
1243
+ category: "system",
1244
+ description: "Agent working memory \u2014 observations, preferences, session notes, project tracking",
1245
+ examples: [
1246
+ "User responds well to concise, bulleted answers",
1247
+ "User prefers seeing full code context rather than snippets",
1248
+ 'When user says "fix it", they mean fix and commit without asking',
1249
+ "User is a senior engineer working primarily in TypeScript",
1250
+ "User timezone is US Central, typically active 9am-11pm",
1251
+ "User is building agentbase.me \u2014 an AI integration platform on Cloudflare Workers",
1252
+ "Auth system redesign planned for Q2 \u2014 user wants JWT replaced with session cookies",
1253
+ "User tracking 3 active projects: agentbase.me, remember-core, agentbase-mobile",
1254
+ "Milestone M36 (Notifications) nearly complete \u2014 4 tasks remaining as of March 2026",
1255
+ "Follow up March 10: revisit subscription tier pricing discussion"
1256
+ ],
1257
+ common_fields: ["observations", "preferences", "summaries", "follow_ups"]
1237
1258
  }
1238
1259
  };
1239
1260
  function isValidContentType(type) {
@@ -1519,11 +1540,23 @@ function buildCombinedSearchFilters(collection, filters) {
1519
1540
  function buildDocTypeFilters(collection, docType, filters) {
1520
1541
  const filterList = [];
1521
1542
  filterList.push(collection.filter.byProperty("doc_type").equal(docType));
1522
- if (docType === "memory" && filters?.types && filters.types.length > 0) {
1523
- if (filters.types.length === 1) {
1524
- filterList.push(collection.filter.byProperty("content_type").equal(filters.types[0]));
1543
+ if (docType === "memory") {
1544
+ const DEFAULT_EXCLUDED_TYPES = ["agent"];
1545
+ if (filters?.types && filters.types.length > 0) {
1546
+ if (filters.types.length === 1) {
1547
+ filterList.push(collection.filter.byProperty("content_type").equal(filters.types[0]));
1548
+ } else {
1549
+ filterList.push(collection.filter.byProperty("content_type").containsAny(filters.types));
1550
+ }
1525
1551
  } else {
1526
- filterList.push(collection.filter.byProperty("content_type").containsAny(filters.types));
1552
+ for (const excludedType of DEFAULT_EXCLUDED_TYPES) {
1553
+ filterList.push(collection.filter.byProperty("content_type").notEqual(excludedType));
1554
+ }
1555
+ }
1556
+ if (filters?.exclude_types && filters.exclude_types.length > 0) {
1557
+ for (const excludedType of filters.exclude_types) {
1558
+ filterList.push(collection.filter.byProperty("content_type").notEqual(excludedType));
1559
+ }
1527
1560
  }
1528
1561
  }
1529
1562
  if (filters?.weight_min !== void 0) {
@@ -2022,6 +2055,7 @@ var MemoryService = class {
2022
2055
  parent_id: input.parent_id ?? null,
2023
2056
  thread_root_id: input.thread_root_id ?? null,
2024
2057
  moderation_flags: input.moderation_flags ?? [],
2058
+ follow_up_at: input.follow_up_at || null,
2025
2059
  space_ids: [],
2026
2060
  group_ids: []
2027
2061
  };
@@ -2723,6 +2757,8 @@ var COMMON_MEMORY_PROPERTIES = [
2723
2757
  { name: "parent_id", dataType: configure.dataType.TEXT },
2724
2758
  { name: "thread_root_id", dataType: configure.dataType.TEXT },
2725
2759
  { name: "moderation_flags", dataType: configure.dataType.TEXT_ARRAY },
2760
+ // Agent follow-up tracking
2761
+ { name: "follow_up_at", dataType: configure.dataType.DATE },
2726
2762
  // Soft delete
2727
2763
  { name: "deleted_at", dataType: configure.dataType.DATE },
2728
2764
  { name: "deleted_by", dataType: configure.dataType.TEXT },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prmichaelsen/remember-mcp",
3
- "version": "3.14.15",
3
+ "version": "3.14.16",
4
4
  "description": "Multi-tenant memory system MCP server with vector search and relationships",
5
5
  "main": "dist/server.js",
6
6
  "type": "module",
@@ -50,7 +50,7 @@
50
50
  "@modelcontextprotocol/sdk": "^1.0.4",
51
51
  "@prmichaelsen/firebase-admin-sdk-v8": "^2.2.0",
52
52
  "@prmichaelsen/mcp-auth": "^7.0.4",
53
- "@prmichaelsen/remember-core": "^0.24.2",
53
+ "@prmichaelsen/remember-core": "^0.26.1",
54
54
  "dotenv": "^16.4.5",
55
55
  "uuid": "^13.0.0",
56
56
  "weaviate-client": "^3.2.0"