@grec0/memory-bank-mcp 0.0.6 → 0.1.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.
Files changed (2) hide show
  1. package/README.md +387 -197
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Memory Bank MCP - Semantic Code Indexing
2
2
 
3
- Servidor MCP (Model Context Protocol) para indexación semántica de código. Permite a agentes de IA como Claude mantener un "memoria persistente" de bases de código completas mediante embeddings vectoriales y búsqueda semántica.
3
+ Servidor MCP (Model Context Protocol) para indexación semántica de código. Permite a agentes de IA como Claude, Copilot, Cursor y otros mantener una "memoria persistente" de bases de código completas mediante embeddings vectoriales y búsqueda semántica.
4
4
 
5
5
  ## 🧠 ¿Qué es Memory Bank?
6
6
 
@@ -11,6 +11,7 @@ Servidor MCP (Model Context Protocol) para indexación semántica de código. Pe
11
11
  - **Almacena** vectores en LanceDB para búsquedas ultrarrápidas
12
12
  - **Busca** semánticamente: pregunta en lenguaje natural, obtén código relevante
13
13
  - **Actualiza** incrementalmente: solo reindexa archivos modificados
14
+ - **Multi-proyecto**: consulta código de cualquier proyecto indexado desde cualquier workspace
14
15
 
15
16
  ### ¿Por qué lo necesitas?
16
17
 
@@ -25,6 +26,7 @@ Con Memory Bank, las IAs:
25
26
  - ✅ Entienden arquitectura y patrones
26
27
  - ✅ Responden con código real del proyecto
27
28
  - ✅ Generan código consistente con tu estilo
29
+ - ✅ **Consultan múltiples proyectos** indexados simultáneamente
28
30
 
29
31
  ## 🚀 Características
30
32
 
@@ -36,6 +38,7 @@ Con Memory Bank, las IAs:
36
38
  - **🎯 Filtros Avanzados**: Por archivo, lenguaje, tipo de chunk
37
39
  - **📊 Estadísticas Detalladas**: Conoce el estado de tu índice en todo momento
38
40
  - **🔒 Privacidad**: Vector store local, respeta .gitignore y .memoryignore
41
+ - **🔀 Multi-Proyecto**: Consulta cualquier proyecto indexado usando su `projectId`
39
42
 
40
43
  ### Project Knowledge Layer (Conocimiento Global) 🆕
41
44
  - **📄 Documentación Automática**: Genera 6 documentos markdown estructurados del proyecto
@@ -43,16 +46,6 @@ Con Memory Bank, las IAs:
43
46
  - **🔄 Actualización Inteligente**: Solo regenera documentos afectados por cambios
44
47
  - **📚 Contexto Global**: Complementa búsqueda precisa con visión de alto nivel
45
48
 
46
- Los documentos generados incluyen:
47
- | Documento | Propósito |
48
- |-----------|-----------|
49
- | `projectBrief.md` | Descripción general del proyecto |
50
- | `productContext.md` | Perspectiva de negocio y usuarios |
51
- | `systemPatterns.md` | Patrones de arquitectura y diseño |
52
- | `techContext.md` | Stack tecnológico y dependencias |
53
- | `activeContext.md` | Estado actual de desarrollo |
54
- | `progress.md` | Seguimiento de cambios |
55
-
56
49
  ## 📋 Requisitos
57
50
 
58
51
  - **Node.js** >= 18.0.0
@@ -75,7 +68,7 @@ Para desarrollo o contribución:
75
68
 
76
69
  ```bash
77
70
  # Clonar repositorio
78
- git clone https://github.com/grec0/memory-bank-mcp.git
71
+ git clone https://github.com/gcorroto/memory-bank-mcp.git
79
72
  cd memory-bank-mcp
80
73
 
81
74
  # Instalar dependencias
@@ -88,33 +81,85 @@ npm run build
88
81
  npm run start
89
82
  ```
90
83
 
91
- ## ⚙️ Configuración
84
+ ## ⚙️ Configuración Completa
92
85
 
93
86
  ### Variables de Entorno
94
87
 
95
- Crea un archivo `.env` en la raíz de tu workspace (o configúralas en tu cliente MCP):
88
+ Memory Bank se configura mediante variables de entorno. Puedes configurarlas en tu cliente MCP o en un archivo `.env`:
96
89
 
97
- ```bash
98
- # REQUERIDO: Tu API key de OpenAI
99
- OPENAI_API_KEY=sk-your-api-key-here
90
+ #### Variables Requeridas
91
+
92
+ | Variable | Descripción |
93
+ |----------|-------------|
94
+ | `OPENAI_API_KEY` | **REQUERIDO**. Tu API key de OpenAI |
95
+
96
+ #### Variables de Indexación
97
+
98
+ | Variable | Default | Descripción |
99
+ |----------|---------|-------------|
100
+ | `MEMORYBANK_STORAGE_PATH` | `.memorybank` | Directorio donde se almacena el índice vectorial |
101
+ | `MEMORYBANK_WORKSPACE_ROOT` | `process.cwd()` | Raíz del workspace (se auto-detecta normalmente) |
102
+ | `MEMORYBANK_EMBEDDING_MODEL` | `text-embedding-3-small` | Modelo de embeddings de OpenAI |
103
+ | `MEMORYBANK_EMBEDDING_DIMENSIONS` | `1536` | Dimensiones del vector (1536 o 512) |
104
+ | `MEMORYBANK_MAX_TOKENS` | `7500` | Tokens máximos por chunk (límite: 8192) |
105
+ | `MEMORYBANK_CHUNK_OVERLAP_TOKENS` | `200` | Solapamiento entre chunks para mantener contexto |
106
+
107
+ #### Variables del Project Knowledge Layer
108
+
109
+ | Variable | Default | Descripción |
110
+ |----------|---------|-------------|
111
+ | `MEMORYBANK_REASONING_MODEL` | `gpt-5-mini` | Modelo para generar documentación (soporta reasoning) |
112
+ | `MEMORYBANK_REASONING_EFFORT` | `medium` | Nivel de razonamiento: `low`, `medium`, `high` |
113
+ | `MEMORYBANK_AUTO_UPDATE_DOCS` | `false` | Auto-regenerar docs cuando se indexa código |
114
+
115
+ ### Configuración en Cursor IDE
100
116
 
101
- # OPCIONAL: Configuración de indexación
102
- MEMORYBANK_STORAGE_PATH=.memorybank # Dónde almacenar el índice
103
- MEMORYBANK_EMBEDDING_MODEL=text-embedding-3-small # Modelo de OpenAI
104
- MEMORYBANK_EMBEDDING_DIMENSIONS=1536 # Dimensiones (1536 o 512)
105
- MEMORYBANK_MAX_TOKENS=7500 # Tokens máx por chunk (límite: 8192)
106
- MEMORYBANK_CHUNK_OVERLAP_TOKENS=200 # Overlap en tokens entre chunks
107
- MEMORYBANK_WORKSPACE_ROOT=/path/to/project # Raíz del workspace
117
+ Edita tu archivo de configuración de MCP:
108
118
 
109
- # OPCIONAL: Project Knowledge Layer (documentación con IA)
110
- MEMORYBANK_REASONING_MODEL=gpt-5-mini # Modelo de razonamiento
111
- MEMORYBANK_REASONING_EFFORT=medium # low/medium/high
112
- MEMORYBANK_AUTO_UPDATE_DOCS=false # Auto-actualizar docs al indexar
119
+ **Windows**: `%APPDATA%\Cursor\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json`
120
+
121
+ #### Configuración Mínima
122
+
123
+ ```json
124
+ {
125
+ "mcpServers": {
126
+ "memory-bank-mcp": {
127
+ "type": "stdio",
128
+ "command": "npx",
129
+ "args": ["@grec0/memory-bank-mcp@latest"],
130
+ "env": {
131
+ "OPENAI_API_KEY": "sk-your-api-key-here"
132
+ }
133
+ }
134
+ }
135
+ }
113
136
  ```
114
137
 
115
- ### Configuración en Claude Desktop
138
+ #### Configuración Completa (Recomendada)
139
+
140
+ ```json
141
+ {
142
+ "mcpServers": {
143
+ "memory-bank-mcp": {
144
+ "type": "stdio",
145
+ "command": "npx",
146
+ "args": ["@grec0/memory-bank-mcp@latest"],
147
+ "env": {
148
+ "OPENAI_API_KEY": "sk-your-api-key-here",
149
+ "MEMORYBANK_REASONING_MODEL": "gpt-5-mini",
150
+ "MEMORYBANK_REASONING_EFFORT": "medium",
151
+ "MEMORYBANK_AUTO_UPDATE_DOCS": "false",
152
+ "MEMORYBANK_MAX_TOKENS": "7500",
153
+ "MEMORYBANK_CHUNK_OVERLAP_TOKENS": "200",
154
+ "MEMORYBANK_EMBEDDING_MODEL": "text-embedding-3-small",
155
+ "MEMORYBANK_EMBEDDING_DIMENSIONS": "1536"
156
+ }
157
+ }
158
+ }
159
+ }
160
+ ```
116
161
 
117
- Edita tu archivo de configuración de Claude Desktop:
162
+ ### Configuración en Claude Desktop
118
163
 
119
164
  **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
120
165
  **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
@@ -127,7 +172,9 @@ Edita tu archivo de configuración de Claude Desktop:
127
172
  "command": "npx",
128
173
  "args": ["@grec0/memory-bank-mcp@latest"],
129
174
  "env": {
130
- "OPENAI_API_KEY": "sk-your-api-key-here"
175
+ "OPENAI_API_KEY": "sk-your-api-key-here",
176
+ "MEMORYBANK_REASONING_MODEL": "gpt-5-mini",
177
+ "MEMORYBANK_REASONING_EFFORT": "medium"
131
178
  }
132
179
  }
133
180
  }
@@ -151,6 +198,151 @@ Edita tu archivo de configuración de Claude Desktop:
151
198
  }
152
199
  ```
153
200
 
201
+ ---
202
+
203
+ ## 📄 Sistema de Documentación del Proyecto (Project Knowledge Layer)
204
+
205
+ Memory Bank incluye un sistema inteligente de documentación que genera y mantiene conocimiento estructurado sobre tu proyecto usando IA con capacidades de razonamiento.
206
+
207
+ ### ¿Cómo Funciona?
208
+
209
+ 1. **Análisis del Código**: El sistema analiza el código indexado usando búsqueda semántica
210
+ 2. **Generación con IA**: Usa modelos con razonamiento (gpt-5-mini) para generar documentación estructurada
211
+ 3. **Actualización Incremental**: Solo regenera documentos afectados cuando hay cambios significativos
212
+ 4. **Almacenamiento Persistente**: Los documentos se guardan en `.memorybank/projects/{projectId}/docs/`
213
+
214
+ ### Documentos Generados
215
+
216
+ El sistema genera **6 documentos markdown** que proporcionan diferentes perspectivas del proyecto:
217
+
218
+ | Documento | Propósito | Contenido |
219
+ |-----------|-----------|-----------|
220
+ | `projectBrief.md` | **Descripción General** | Qué es el proyecto, su propósito principal, funcionalidades clave |
221
+ | `productContext.md` | **Perspectiva de Negocio** | Por qué existe, problemas que resuelve, usuarios objetivo, UX |
222
+ | `systemPatterns.md` | **Arquitectura y Patrones** | Estructura del código, patrones de diseño, decisiones técnicas |
223
+ | `techContext.md` | **Stack Tecnológico** | Tecnologías, dependencias, configuraciones, integraciones |
224
+ | `activeContext.md` | **Estado Actual** | En qué se está trabajando, cambios recientes, próximos pasos |
225
+ | `progress.md` | **Seguimiento** | Historial de cambios, qué funciona, qué falta, problemas conocidos |
226
+
227
+ ### Herramientas de Documentación
228
+
229
+ #### `memorybank_generate_project_docs`
230
+
231
+ Genera o regenera la documentación del proyecto.
232
+
233
+ ```json
234
+ {
235
+ "projectId": "my-project",
236
+ "force": false
237
+ }
238
+ ```
239
+
240
+ - `projectId` **(REQUERIDO)**: ID del proyecto
241
+ - `force` (opcional): `true` para regenerar todo, `false` para actualizar incrementalmente
242
+
243
+ #### `memorybank_get_project_docs`
244
+
245
+ Lee la documentación generada.
246
+
247
+ ```json
248
+ // Obtener resumen de todos los documentos
249
+ {
250
+ "projectId": "my-project",
251
+ "document": "summary"
252
+ }
253
+
254
+ // Obtener documento específico
255
+ {
256
+ "projectId": "my-project",
257
+ "document": "systemPatterns"
258
+ }
259
+
260
+ // Obtener todos los documentos completos
261
+ {
262
+ "projectId": "my-project",
263
+ "document": "all",
264
+ "format": "full"
265
+ }
266
+ ```
267
+
268
+ ### Flujo de Trabajo con Documentación
269
+
270
+ ```
271
+ 1. Indexar código
272
+ memorybank_index_code({ projectId: "my-project" })
273
+
274
+ 2. Generar documentación
275
+ memorybank_generate_project_docs({ projectId: "my-project" })
276
+
277
+ 3. Consultar documentación al inicio de cada sesión
278
+ memorybank_get_project_docs({ projectId: "my-project", document: "activeContext" })
279
+
280
+ 4. Buscar código específico
281
+ memorybank_search({ projectId: "my-project", query: "..." })
282
+ ```
283
+
284
+ ### Auto-Actualización de Documentación
285
+
286
+ Si configuras `MEMORYBANK_AUTO_UPDATE_DOCS=true`, los documentos se regenerarán automáticamente después de cada indexación. Esto es útil para mantener la documentación siempre actualizada pero consume más tokens de API.
287
+
288
+ ---
289
+
290
+ ## 🔀 Multi-Proyecto: Consultas Entre Proyectos
291
+
292
+ Una característica poderosa de Memory Bank es la capacidad de **consultar cualquier proyecto indexado desde cualquier workspace**.
293
+
294
+ ### ¿Cómo Funciona?
295
+
296
+ Todos los proyectos indexados se almacenan en un vector store compartido, identificados por su `projectId`. Esto significa que:
297
+
298
+ 1. **Puedes trabajar en el Proyecto A** y consultar código del Proyecto B
299
+ 2. **Los agentes pueden aprender** de proyectos similares ya indexados
300
+ 3. **Reutiliza patrones** de otros proyectos de tu organización
301
+
302
+ ### Ejemplo de Uso
303
+
304
+ ```
305
+ # Estás trabajando en "frontend-app" pero necesitas ver cómo se hizo algo en "backend-api"
306
+
307
+ Usuario: ¿Cómo se implementó la autenticación en el proyecto backend-api?
308
+
309
+ Agente: [ejecuta memorybank_search({
310
+ projectId: "backend-api", // Otro proyecto
311
+ query: "autenticación JWT middleware"
312
+ })]
313
+
314
+ Encontré la implementación en backend-api:
315
+ - El middleware de auth está en src/middleware/auth.ts
316
+ - Usa JWT con refresh tokens
317
+ - La validación se hace con jsonwebtoken...
318
+ ```
319
+
320
+ ### Requisitos para Multi-Proyecto
321
+
322
+ 1. **El proyecto debe estar indexado** previamente con su `projectId`
323
+ 2. **Usa el projectId correcto** al hacer consultas
324
+ 3. **La documentación es independiente** por proyecto
325
+
326
+ ### Ejemplo Real: Dos Proyectos Relacionados
327
+
328
+ ```json
329
+ // Proyecto 1: a2a_gateway (ya indexado)
330
+ memorybank_search({
331
+ "projectId": "a2a_gateway",
332
+ "query": "cómo se registran los agentes"
333
+ })
334
+
335
+ // Proyecto 2: GREC0AI (workspace actual)
336
+ memorybank_search({
337
+ "projectId": "GREC0AI",
338
+ "query": "implementación de AgentEntity"
339
+ })
340
+
341
+ // Puedes consultar ambos en la misma sesión!
342
+ ```
343
+
344
+ ---
345
+
154
346
  ## 📚 Herramientas Disponibles
155
347
 
156
348
  > **⚠️ IMPORTANTE**: Todas las herramientas requieren `projectId` obligatorio. Este ID debe coincidir con el definido en tu archivo `AGENTS.md`.
@@ -205,11 +397,6 @@ Lee contenido de un archivo.
205
397
  - `startLine` (opcional): Línea inicial
206
398
  - `endLine` (opcional): Línea final
207
399
 
208
- **Ejemplo:**
209
- ```
210
- memorybank_read_file({ path: "src/auth/service.ts", startLine: 50, endLine: 100 })
211
- ```
212
-
213
400
  ### `memorybank_write_file`
214
401
 
215
402
  Escribe un archivo y lo reindexa automáticamente.
@@ -220,132 +407,61 @@ Escribe un archivo y lo reindexa automáticamente.
220
407
  - `content` (requerido): Contenido del archivo
221
408
  - `autoReindex` (opcional): Auto-reindexar (default: true)
222
409
 
223
- **Ejemplo:**
224
- ```json
225
- {
226
- "projectId": "my-project",
227
- "path": "src/utils/validator.ts",
228
- "content": "export function validateEmail(email: string) { ... }"
229
- }
230
- ```
231
-
232
410
  ### `memorybank_get_stats`
233
411
 
234
412
  Obtiene estadísticas del Memory Bank.
235
413
 
236
- **Ejemplo:**
237
- ```
238
- memorybank_get_stats({})
239
- ```
240
-
241
414
  ### `memorybank_analyze_coverage`
242
415
 
243
416
  Analiza la cobertura de indexación del proyecto.
244
417
 
245
418
  **Parámetros:**
246
419
  - `projectId` **(REQUERIDO)**: Identificador del proyecto a analizar
247
- - `path` (opcional): Ruta específica a analizar
420
+ - `path` **(REQUERIDO)**: Ruta absoluta del workspace a analizar
248
421
 
249
422
  **Ejemplo:**
250
423
  ```json
251
424
  {
252
- "projectId": "my-project"
425
+ "projectId": "my-project",
426
+ "path": "C:/workspaces/my-project"
253
427
  }
254
428
  ```
255
429
 
256
- ### `memorybank_generate_project_docs` 🆕
430
+ ### `memorybank_generate_project_docs`
257
431
 
258
- Genera documentación estructurada del proyecto usando IA con razonamiento (gpt-5-mini).
432
+ Genera documentación estructurada del proyecto usando IA con razonamiento.
259
433
 
260
434
  **Parámetros:**
261
435
  - `projectId` **(REQUERIDO)**: Identificador del proyecto
262
436
  - `force` (opcional): Forzar regeneración (default: false)
263
437
 
264
- **Ejemplo:**
265
- ```json
266
- {
267
- "projectId": "my-project",
268
- "force": true
269
- }
270
- ```
271
-
272
- Genera 6 documentos markdown:
273
- - `projectBrief.md`: Descripción general
274
- - `productContext.md`: Perspectiva de negocio
275
- - `systemPatterns.md`: Patrones de arquitectura
276
- - `techContext.md`: Stack tecnológico
277
- - `activeContext.md`: Estado actual
278
- - `progress.md`: Seguimiento
279
-
280
- ### `memorybank_get_project_docs` 🆕
438
+ ### `memorybank_get_project_docs`
281
439
 
282
440
  Lee la documentación del proyecto generada por IA.
283
441
 
284
442
  **Parámetros:**
285
443
  - `projectId` **(REQUERIDO)**: Identificador del proyecto
286
- - `document` (opcional): Documento específico o "all"/"summary" (default: "summary")
287
- - `format` (opcional): "full" o "summary" (default: "full")
288
-
289
- **Ejemplo:**
290
- ```json
291
- // Obtener resumen de todos los docs
292
- {
293
- "projectId": "my-project",
294
- "document": "summary"
295
- }
444
+ - `document` (opcional): `"summary"`, `"all"`, o nombre específico (`projectBrief`, `systemPatterns`, etc.)
445
+ - `format` (opcional): `"full"` o `"summary"` (default: "full")
296
446
 
297
- // Obtener documento específico
298
- {
299
- "projectId": "my-project",
300
- "document": "systemPatterns"
301
- }
302
- ```
447
+ ---
303
448
 
304
449
  ## 📋 Plantillas de Instrucciones para Agentes
305
450
 
306
- Memory Bank incluye plantillas de instrucciones en dos formatos:
307
- - **AGENTS.md** - Estándar [agents.md](https://agents.md/) (compatible con múltiples agentes)
308
- - **VSCode/Copilot** - Formato `.github/copilot-instructions.md` para VS Code
309
-
310
- ### Instalación - Formato AGENTS.md
311
-
312
- Copia la plantilla que prefieras a la raíz de tu proyecto:
313
-
314
- ```bash
315
- # Elegir una plantilla
316
- cp node_modules/@grec0/memory-bank-mcp/templates/AGENTS.basic.md ./AGENTS.md
317
-
318
- # Editar los placeholders
319
- # Reemplaza {{PROJECT_ID}} con tu ID de proyecto
320
- # Reemplaza {{WORKSPACE_PATH}} con la ruta del workspace
321
- ```
322
-
323
- ### Instalación - Formato VS Code
451
+ Memory Bank incluye plantillas de instrucciones en dos formatos para configurar el comportamiento del agente:
324
452
 
325
- Para VS Code con GitHub Copilot, usa el formato `copilot-instructions.md`:
453
+ - **AGENTS.md** - Estándar [agents.md](https://agents.md/) (compatible con Claude, Cursor, múltiples agentes)
454
+ - **VSCode/Copilot** - Formato `.github/copilot-instructions.md` para GitHub Copilot en VS Code
326
455
 
327
- ```bash
328
- # Crear carpeta .github si no existe
329
- mkdir -p .github
456
+ ### Modos Disponibles
330
457
 
331
- # Elegir una plantilla
332
- cp node_modules/@grec0/memory-bank-mcp/templates/vscode/copilot-instructions.basic.md ./.github/copilot-instructions.md
458
+ | Modo | Archivo | Uso Ideal |
459
+ |------|---------|-----------|
460
+ | **Basic** | `AGENTS.basic.md` | Control total, indexación manual |
461
+ | **Auto-Index** | `AGENTS.auto-index.md` | Desarrollo activo, sincronización automática |
462
+ | **Sandboxed** | `AGENTS.sandboxed.md` | Entornos sin acceso directo a archivos |
333
463
 
334
- # Habilitar en VS Code settings.json:
335
- # "github.copilot.chat.codeGeneration.useInstructionFiles": true
336
- ```
337
-
338
- También puedes usar el archivo `.instructions.md` con aplicación condicional:
339
-
340
- ```bash
341
- # Crear carpeta de instrucciones
342
- mkdir -p .github/instructions
343
-
344
- # Copiar instrucciones base
345
- cp node_modules/@grec0/memory-bank-mcp/templates/vscode/memory-bank.instructions.md ./.github/instructions/
346
- ```
347
-
348
- ### 1. Basic Mode (`AGENTS.basic.md`)
464
+ ### 1. Basic Mode
349
465
 
350
466
  **Para proyectos donde quieres control total.**
351
467
 
@@ -356,7 +472,7 @@ cp node_modules/@grec0/memory-bank-mcp/templates/vscode/memory-bank.instructions
356
472
 
357
473
  **Ideal para**: Proyectos críticos, revisión de código, onboarding.
358
474
 
359
- ### 2. Auto-Index Mode (`AGENTS.auto-index.md`)
475
+ ### 2. Auto-Index Mode
360
476
 
361
477
  **Para desarrollo activo con sincronización automática.**
362
478
 
@@ -367,7 +483,7 @@ cp node_modules/@grec0/memory-bank-mcp/templates/vscode/memory-bank.instructions
367
483
 
368
484
  **Ideal para**: Desarrollo activo, iteración rápida, equipos.
369
485
 
370
- ### 3. Sandboxed Mode (`AGENTS.sandboxed.md`)
486
+ ### 3. Sandboxed Mode
371
487
 
372
488
  **Para entornos sin acceso directo al sistema de archivos.**
373
489
 
@@ -378,14 +494,81 @@ cp node_modules/@grec0/memory-bank-mcp/templates/vscode/memory-bank.instructions
378
494
 
379
495
  **Ideal para**: Entornos restringidos, desarrollo remoto, seguridad.
380
496
 
381
- ### Ejemplo de `AGENTS.md` Configurado
497
+ ### Plantillas Disponibles
498
+
499
+ Todas las plantillas están disponibles en el repositorio de GitHub:
500
+
501
+ #### Formato AGENTS.md (Cursor, Claude, Multi-agente)
502
+
503
+ | Modo | URL |
504
+ |------|-----|
505
+ | **Basic** | [AGENTS.basic.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/AGENTS.basic.md) |
506
+ | **Auto-Index** | [AGENTS.auto-index.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/AGENTS.auto-index.md) |
507
+ | **Sandboxed** | [AGENTS.sandboxed.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/AGENTS.sandboxed.md) |
508
+
509
+ **Instalación:**
510
+
511
+ ```bash
512
+ # Descargar plantilla (elige una)
513
+ curl -o AGENTS.md https://raw.githubusercontent.com/gcorroto/memory-bank-mcp/main/templates/AGENTS.basic.md
514
+ # O
515
+ curl -o AGENTS.md https://raw.githubusercontent.com/gcorroto/memory-bank-mcp/main/templates/AGENTS.auto-index.md
516
+ # O
517
+ curl -o AGENTS.md https://raw.githubusercontent.com/gcorroto/memory-bank-mcp/main/templates/AGENTS.sandboxed.md
518
+
519
+ # Editar los placeholders:
520
+ # - Reemplaza {{PROJECT_ID}} con tu ID de proyecto único
521
+ # - Reemplaza {{WORKSPACE_PATH}} con la ruta absoluta del workspace
522
+ ```
523
+
524
+ #### Formato VS Code / GitHub Copilot
525
+
526
+ | Modo | URL |
527
+ |------|-----|
528
+ | **Basic** | [copilot-instructions.basic.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/copilot-instructions.basic.md) |
529
+ | **Auto-Index** | [copilot-instructions.auto-index.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/copilot-instructions.auto-index.md) |
530
+ | **Sandboxed** | [copilot-instructions.sandboxed.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/copilot-instructions.sandboxed.md) |
531
+ | **Instructions** | [memory-bank.instructions.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/memory-bank.instructions.md) |
532
+
533
+ **Instalación:**
534
+
535
+ ```bash
536
+ # Crear carpeta .github si no existe
537
+ mkdir -p .github
538
+
539
+ # Descargar plantilla (elige una)
540
+ curl -o .github/copilot-instructions.md https://raw.githubusercontent.com/gcorroto/memory-bank-mcp/main/templates/vscode/copilot-instructions.basic.md
541
+ # O
542
+ curl -o .github/copilot-instructions.md https://raw.githubusercontent.com/gcorroto/memory-bank-mcp/main/templates/vscode/copilot-instructions.auto-index.md
543
+ # O
544
+ curl -o .github/copilot-instructions.md https://raw.githubusercontent.com/gcorroto/memory-bank-mcp/main/templates/vscode/copilot-instructions.sandboxed.md
545
+
546
+ # Habilitar en VS Code settings.json:
547
+ # "github.copilot.chat.codeGeneration.useInstructionFiles": true
548
+ ```
549
+
550
+ #### Instrucciones con Aplicación Condicional (VS Code)
551
+
552
+ Para usar el archivo `.instructions.md` que aplica solo a ciertos archivos:
553
+
554
+ ```bash
555
+ # Crear carpeta de instrucciones
556
+ mkdir -p .github/instructions
557
+
558
+ # Descargar instrucciones base
559
+ curl -o .github/instructions/memory-bank.instructions.md https://raw.githubusercontent.com/gcorroto/memory-bank-mcp/main/templates/vscode/memory-bank.instructions.md
560
+ ```
561
+
562
+ Este archivo incluye `applyTo: "**/*"` que aplica a todos los archivos, pero puedes modificarlo.
563
+
564
+ ### Ejemplo de AGENTS.md Configurado
382
565
 
383
566
  ```markdown
384
567
  # AGENTS.md
385
568
 
386
569
  ## Project Configuration
387
570
  - **Project ID**: `my-awesome-app`
388
- - **Workspace**: `/home/user/projects/my-awesome-app`
571
+ - **Workspace**: `C:/workspaces/my-awesome-app`
389
572
 
390
573
  ## Memory Bank Instructions
391
574
 
@@ -395,8 +578,14 @@ Before any action, call `memorybank_search` with projectId="my-awesome-app"
395
578
  ### Auto-Indexing Policy
396
579
  AFTER every file modification:
397
580
  memorybank_index_code({ projectId: "my-awesome-app", path: "<modified_file>" })
581
+
582
+ ### Session Start
583
+ At the beginning of each session, get context:
584
+ memorybank_get_project_docs({ projectId: "my-awesome-app", document: "activeContext" })
398
585
  ```
399
586
 
587
+ ---
588
+
400
589
  ## 🎯 Casos de Uso
401
590
 
402
591
  ### 1. Primera Indexación
@@ -427,21 +616,40 @@ Claude: [ejecuta memorybank_search({ projectId: "my-app", query: "autenticación
427
616
  La validación se hace en el middleware src/middleware/auth.ts.
428
617
  ```
429
618
 
430
- ### 3. Modificación de Código
619
+ ### 3. Consulta Entre Proyectos
620
+
621
+ ```
622
+ Usuario: Estoy trabajando en "frontend-v2" pero quiero ver cómo se hizo la
623
+ paginación en el proyecto "admin-dashboard"
624
+
625
+ Claude: [ejecuta memorybank_search({
626
+ projectId: "admin-dashboard",
627
+ query: "paginación tabla listado"
628
+ })]
629
+
630
+ En admin-dashboard, la paginación se implementó así...
631
+ [Muestra código del otro proyecto]
632
+
633
+ ¿Quieres que implemente algo similar en frontend-v2?
634
+ ```
635
+
636
+ ### 4. Generación de Documentación
431
637
 
432
638
  ```
433
- Usuario: Añade validación de email al formulario de registro
434
- Claude: [busca formulario de registro con projectId]
435
- [busca validadores existentes con projectId]
436
- [lee archivo actual]
437
- [genera código respetando estilo del proyecto]
438
- [escribe archivo con memorybank_write_file({ projectId: "my-app", ... })]
639
+ Usuario: Genera documentación del proyecto para nuevos desarrolladores
640
+ Claude: [ejecuta memorybank_generate_project_docs({ projectId: "my-app" })]
641
+
642
+ He generado 6 documentos de conocimiento del proyecto:
643
+ - projectBrief.md: Descripción general
644
+ - systemPatterns.md: Arquitectura y patrones
645
+ - techContext.md: Stack tecnológico
646
+ ...
439
647
 
440
- He añadido la validación de email en src/forms/RegisterForm.tsx línea 45.
441
- Usa el validador existente de emailValidator.ts para mantener consistencia.
442
- El archivo ha sido reindexado automáticamente.
648
+ Puedes consultarlos en cualquier momento con memorybank_get_project_docs
443
649
  ```
444
650
 
651
+ ---
652
+
445
653
  ## 🔧 Archivos de Configuración
446
654
 
447
655
  ### `.memoryignore`
@@ -474,26 +682,27 @@ build/
474
682
  *.mp4
475
683
  ```
476
684
 
477
- **Copia el ejemplo**:
478
- ```bash
479
- cp .memoryignore.example .memoryignore
480
- ```
481
-
482
685
  ### Respeto de `.gitignore`
483
686
 
484
687
  Memory Bank **respeta automáticamente** los patrones de `.gitignore` en tu proyecto, además de los de `.memoryignore`.
485
688
 
689
+ ---
690
+
486
691
  ## 💰 Costos de OpenAI
487
692
 
488
693
  Memory Bank usa `text-embedding-3-small` que es muy económico:
489
694
 
490
- - **Precio**: ~$0.00002 por 1K tokens
695
+ - **Precio embeddings**: ~$0.00002 por 1K tokens
491
696
  - **Ejemplo**: 10,000 archivos × 1,000 tokens promedio = **~$0.20**
492
697
  - **Cache**: Los embeddings se cachean, solo se regeneran si el código cambia
493
698
  - **Incremental**: Solo se reindexan archivos modificados
494
699
 
495
700
  **Búsquedas son extremadamente baratas** (solo 1 embedding por query).
496
701
 
702
+ **Documentación con IA** usa modelos de razonamiento que son más costosos pero se ejecutan solo cuando se solicita explícitamente.
703
+
704
+ ---
705
+
497
706
  ## 🧪 Testing
498
707
 
499
708
  ```bash
@@ -504,6 +713,8 @@ npm test
504
713
  npm test -- --coverage
505
714
  ```
506
715
 
716
+ ---
717
+
507
718
  ## 🔐 Seguridad y Privacidad
508
719
 
509
720
  - ✅ **Vector store local**: LanceDB corre en tu máquina
@@ -519,18 +730,13 @@ npm test -- --coverage
519
730
  3. **API keys en variables de entorno**, nunca en código
520
731
  4. **Revisa que `.env` esté en .gitignore**
521
732
 
733
+ ---
734
+
522
735
  ## 🐛 Solución de Problemas
523
736
 
524
737
  ### Error: "OPENAI_API_KEY is required"
525
738
 
526
- **Solución**: Configura tu API key en las variables de entorno.
527
-
528
- ```bash
529
- # En .env
530
- OPENAI_API_KEY=sk-your-key-here
531
-
532
- # O en la configuración de Claude Desktop (ver arriba)
533
- ```
739
+ **Solución**: Configura tu API key en las variables de entorno del MCP.
534
740
 
535
741
  ### Error: "No files found to index"
536
742
 
@@ -539,27 +745,17 @@ OPENAI_API_KEY=sk-your-key-here
539
745
  2. Todos los archivos están en .gitignore/.memoryignore
540
746
  3. No hay archivos de código reconocidos
541
747
 
542
- **Solución**: Verifica que haya archivos .ts, .js, .py, etc. en el directorio.
543
-
544
748
  ### Búsquedas retornan resultados irrelevantes
545
749
 
546
750
  **Soluciones**:
547
751
  1. **Aumenta `minScore`**: Usa 0.8 o 0.9 para resultados más precisos
548
752
  2. **Usa filtros**: `filterByFile` o `filterByLanguage`
549
753
  3. **Reformula la query**: Sé más específico y descriptivo
550
- 4. **Reindexa**: Puede que el índice esté desactualizado
551
-
552
- ```
553
- memorybank_index_code({ forceReindex: true })
554
- ```
754
+ 4. **Reindexa**: `memorybank_index_code({ forceReindex: true })`
555
755
 
556
- ### Rate limit de OpenAI
557
-
558
- El sistema maneja automáticamente rate limits con exponential backoff, pero si tienes proyectos muy grandes:
756
+ ### Error: "projectId is required"
559
757
 
560
- 1. **Indexa en partes**: Indexa directorios individuales
561
- 2. **Aumenta límites**: Usa una API key con tier más alto
562
- 3. **Reduce batch size**: Ajusta en código (default: 100)
758
+ **Solución**: Todas las herramientas requieren `projectId`. Define el `projectId` en tu archivo `AGENTS.md` para que el agente lo use consistentemente.
563
759
 
564
760
  ### Índice desactualizado
565
761
 
@@ -576,18 +772,24 @@ Si `pendingFiles` muestra archivos pendientes:
576
772
  }
577
773
  ```
578
774
 
579
- ### Error: "projectId is required"
775
+ ---
580
776
 
581
- **Solución**: Todas las herramientas requieren `projectId`. Asegúrate de incluirlo en cada llamada:
777
+ ## 📖 Documentación Adicional
582
778
 
583
- ```json
584
- {
585
- "projectId": "my-project",
586
- "query": "..."
587
- }
588
- ```
779
+ ### Plantillas de Instrucciones
780
+
781
+ **Formato AGENTS.md** (estándar multi-agente):
782
+ - [AGENTS.basic.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/AGENTS.basic.md) - Modo básico (indexación manual)
783
+ - [AGENTS.auto-index.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/AGENTS.auto-index.md) - Modo auto-indexación
784
+ - [AGENTS.sandboxed.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/AGENTS.sandboxed.md) - Modo sin acceso directo a archivos
785
+
786
+ **Formato VS Code / Copilot**:
787
+ - [copilot-instructions.basic.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/copilot-instructions.basic.md) - Modo básico
788
+ - [copilot-instructions.auto-index.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/copilot-instructions.auto-index.md) - Modo auto-indexación
789
+ - [copilot-instructions.sandboxed.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/copilot-instructions.sandboxed.md) - Modo sandboxed
790
+ - [memory-bank.instructions.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/memory-bank.instructions.md) - Instrucciones condicionales
589
791
 
590
- Tip: Define el `projectId` en tu archivo `AGENTS.md` para que el agente lo use consistentemente.
792
+ ---
591
793
 
592
794
  ## 🤝 Contribución
593
795
 
@@ -599,20 +801,7 @@ Tip: Define el `projectId` en tu archivo `AGENTS.md` para que el agente lo use c
599
801
  4. Push al branch (`git push origin feature/AmazingFeature`)
600
802
  5. Abre un Pull Request
601
803
 
602
- ## 📖 Documentación Adicional
603
-
604
- - [templates/](templates/): Plantillas de instrucciones para agentes
605
- - **Formato AGENTS.md** (estándar multi-agente):
606
- - `AGENTS.basic.md`: Modo básico (indexación manual)
607
- - `AGENTS.auto-index.md`: Modo auto-indexación
608
- - `AGENTS.sandboxed.md`: Modo sin acceso directo a archivos
609
- - **Formato VS Code** (`templates/vscode/`):
610
- - `copilot-instructions.basic.md`: Modo básico para Copilot
611
- - `copilot-instructions.auto-index.md`: Modo auto-indexación para Copilot
612
- - `copilot-instructions.sandboxed.md`: Modo sandboxed para Copilot
613
- - `memory-bank.instructions.md`: Instrucciones con aplicación condicional
614
- - [wiki/Developer-Guide.md](wiki/Developer-Guide.md): Guía para desarrolladores
615
- - [wiki/API-Reference.md](wiki/API-Reference.md): Referencia completa de API
804
+ ---
616
805
 
617
806
  ## 🎓 Inspiración
618
807
 
@@ -620,23 +809,24 @@ Este proyecto está inspirado en el sistema de Memory Bank de Cursor IDE, tal co
620
809
 
621
810
  - [Advanced Cursor: Use the Memory Bank](https://medium.com/codetodeploy/advanced-cursor-use-the-memory-bank-to-eliminate-hallucination-affd3fbeefa3)
622
811
  - [How Cursor Indexes Codebases Fast](https://read.engineerscodex.com/p/how-cursor-indexes-codebases-fast)
623
- - [Cursor Security](https://simonwillison.net/2025/May/11/cursor-security/)
812
+
813
+ ---
624
814
 
625
815
  ## 📜 Licencia
626
816
 
627
817
  Este proyecto está licenciado bajo la Licencia MIT - ver el archivo [LICENSE](LICENSE) para detalles.
628
818
 
819
+ ---
820
+
629
821
  ## 🆘 Soporte
630
822
 
631
- - **Issues**: [GitHub Issues](https://github.com/grec0/memory-bank-mcp/issues)
632
- - **Documentación**: [Wiki del Proyecto](https://github.com/grec0/memory-bank-mcp/wiki)
823
+ - **Issues**: [GitHub Issues](https://github.com/gcorroto/memory-bank-mcp/issues)
824
+ - **Documentación**: [Wiki del Proyecto](https://github.com/gcorroto/memory-bank-mcp/wiki)
633
825
  - **OpenAI API**: [Documentación Oficial](https://platform.openai.com/docs)
634
826
  - **LanceDB**: [Documentación](https://lancedb.github.io/lancedb/)
635
827
 
636
- ## ⭐ Star History
637
-
638
- Si este proyecto te resulta útil, ¡considera darle una estrella! ⭐
639
-
640
828
  ---
641
829
 
830
+ ⭐ Si este proyecto te resulta útil, ¡considera darle una estrella!
831
+
642
832
  **Hecho con ❤️ para la comunidad de AI coding assistants**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@grec0/memory-bank-mcp",
3
- "version": "0.0.6",
3
+ "version": "0.1.0",
4
4
  "description": "MCP server for semantic code indexing with Memory Bank - AI-powered codebase understanding",
5
5
  "license": "MIT",
6
6
  "author": "@grec0",