cf-memory-mcp 3.8.7 → 3.8.8

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.
@@ -155,7 +155,7 @@ const TOOLS_LIST = [
155
155
  file_filter: { type: 'array', items: { type: 'string' }, description: 'Limit to files matching path substrings' },
156
156
  all_projects: { type: 'boolean', description: 'Search across ALL your indexed projects (overrides project_id). Useful for "find X in any of my repos".' },
157
157
  expand_context: { type: 'boolean', description: 'Include file_imports (the file\'s module/imports chunk) with each result. Default: true.' },
158
- exclude_docs: { type: 'boolean', description: 'Filter out markdown/docs from code queries. Default: true (auto-disabled if query mentions docs/readme/tutorial).' }
158
+ exclude_docs: { type: 'boolean', description: 'Filter out markdown/docs from code queries. Default: true (auto-disabled if query mentions docs/readme/tutorial). Response includes docs_filtered_count when chunks were dropped — flip to false to surface them.' }
159
159
  },
160
160
  required: ['query']
161
161
  }
@@ -1084,6 +1084,13 @@ class CFMemoryMCP {
1084
1084
  this.logDebug(`Found ${files.length} files to index.`);
1085
1085
 
1086
1086
  if (files.length === 0) {
1087
+ // Verify the path actually exists so we can tell the user
1088
+ // whether it's "path wrong" or "everything was filtered out".
1089
+ let pathExists = false;
1090
+ try { pathExists = fs.existsSync(resolvedPath); } catch (_) { pathExists = false; }
1091
+ const hint = !pathExists
1092
+ ? `Path "${resolvedPath}" does not exist. Check the project_path argument.`
1093
+ : `Path exists but every file was filtered out. The bridge excludes node_modules, dist, build, .git, *.lock, *.min.js, *.d.ts, .augment, .kiro, .intent, .husky, .claude, and generated/ directories. Pass include_patterns to override, or check that the project actually has source files at this path.`;
1087
1094
  const response = {
1088
1095
  jsonrpc: '2.0',
1089
1096
  id: message.id,
@@ -1097,7 +1104,8 @@ class CFMemoryMCP {
1097
1104
  files_indexed: 0,
1098
1105
  chunks_created: 0,
1099
1106
  status: 'complete',
1100
- message: 'No matching files found in directory'
1107
+ message: 'No matching files found in directory',
1108
+ hint
1101
1109
  }, null, 2)
1102
1110
  }]
1103
1111
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cf-memory-mcp",
3
- "version": "3.8.7",
3
+ "version": "3.8.8",
4
4
  "description": "Cloudflare-hosted MCP server for code indexing, retrieval, and assistant memory with a direct remote MCP endpoint and local stdio bridge.",
5
5
  "main": "bin/cf-memory-mcp.js",
6
6
  "bin": {