mcp-code-context 3.7.0 → 3.8.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 (82) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/INSTRUCTIONS.md +3 -3
  3. package/README.md +12 -9
  4. package/SECURITY.md +17 -17
  5. package/dist/src/core/engine.d.ts +1 -1
  6. package/dist/src/core/engine.js +1 -1
  7. package/dist/src/core/indexManager.d.ts +1 -1
  8. package/dist/src/core/indexManager.js +1 -1
  9. package/dist/src/core/sessionManager.d.ts +1 -1
  10. package/dist/src/core/sessionManager.js +1 -1
  11. package/dist/src/core/validator.d.ts +1 -1
  12. package/dist/src/core/validator.js +1 -1
  13. package/dist/src/index.d.ts +1 -1
  14. package/dist/src/index.js +2 -2
  15. package/dist/src/operations/astTransform.d.ts +1 -1
  16. package/dist/src/operations/astTransform.js +2 -2
  17. package/dist/src/operations/astTransform.js.map +1 -1
  18. package/dist/src/operations/compress.d.ts +1 -1
  19. package/dist/src/operations/compress.js +1 -1
  20. package/dist/src/operations/confirmationStore.d.ts +1 -1
  21. package/dist/src/operations/confirmationStore.js +1 -1
  22. package/dist/src/operations/write.d.ts +1 -1
  23. package/dist/src/operations/write.js +1 -1
  24. package/dist/src/parsers/base.d.ts +1 -1
  25. package/dist/src/parsers/base.js +1 -1
  26. package/dist/src/parsers/csharp.d.ts +1 -1
  27. package/dist/src/parsers/csharp.js +1 -1
  28. package/dist/src/parsers/dartTreeSitter.d.ts +1 -1
  29. package/dist/src/parsers/dartTreeSitter.js +1 -1
  30. package/dist/src/parsers/go.d.ts +1 -1
  31. package/dist/src/parsers/go.js +1 -1
  32. package/dist/src/parsers/java.d.ts +1 -1
  33. package/dist/src/parsers/java.js +1 -1
  34. package/dist/src/parsers/kotlin.d.ts +1 -1
  35. package/dist/src/parsers/kotlin.js +1 -1
  36. package/dist/src/parsers/php.d.ts +1 -1
  37. package/dist/src/parsers/php.js +1 -1
  38. package/dist/src/parsers/python.d.ts +1 -1
  39. package/dist/src/parsers/python.js +1 -1
  40. package/dist/src/parsers/registry.d.ts +1 -1
  41. package/dist/src/parsers/registry.js +1 -1
  42. package/dist/src/parsers/ruby.d.ts +8 -1
  43. package/dist/src/parsers/ruby.js +18 -3
  44. package/dist/src/parsers/ruby.js.map +1 -1
  45. package/dist/src/parsers/rust.d.ts +1 -1
  46. package/dist/src/parsers/rust.js +1 -1
  47. package/dist/src/parsers/typescript.d.ts +1 -1
  48. package/dist/src/parsers/typescript.js +1 -1
  49. package/dist/src/tools/readHandlers.js +26 -0
  50. package/dist/src/tools/readHandlers.js.map +1 -1
  51. package/dist/src/tools/toolDefinitionsCore.js +2 -2
  52. package/dist/src/utils/appDir.d.ts +1 -1
  53. package/dist/src/utils/appDir.js +1 -1
  54. package/dist/src/utils/auditLogger.d.ts +1 -1
  55. package/dist/src/utils/auditLogger.js +1 -1
  56. package/dist/src/utils/backupManager.d.ts +1 -1
  57. package/dist/src/utils/backupManager.js +1 -1
  58. package/dist/src/utils/constants.d.ts +1 -1
  59. package/dist/src/utils/constants.js +1 -1
  60. package/dist/src/utils/diff.d.ts +2 -2
  61. package/dist/src/utils/diff.js +2 -2
  62. package/dist/src/utils/fileLock.d.ts +1 -1
  63. package/dist/src/utils/fileLock.js +1 -1
  64. package/dist/src/utils/fileWalker.d.ts +1 -1
  65. package/dist/src/utils/fileWalker.js +1 -1
  66. package/dist/src/utils/fileWatcher.d.ts +1 -1
  67. package/dist/src/utils/fileWatcher.js +1 -1
  68. package/dist/src/utils/fuzzySearch.d.ts +1 -1
  69. package/dist/src/utils/fuzzySearch.js +1 -1
  70. package/dist/src/utils/logger.d.ts +1 -1
  71. package/dist/src/utils/logger.js +1 -1
  72. package/dist/src/utils/railsSchema.d.ts +10 -0
  73. package/dist/src/utils/railsSchema.js +104 -0
  74. package/dist/src/utils/railsSchema.js.map +1 -0
  75. package/dist/src/utils/rateLimiter.d.ts +1 -1
  76. package/dist/src/utils/rateLimiter.js +1 -1
  77. package/dist/src/utils/streaming.d.ts +1 -1
  78. package/dist/src/utils/streaming.js +1 -1
  79. package/dist/src/utils/telemetry.d.ts +1 -1
  80. package/dist/src/utils/telemetry.js +1 -1
  81. package/llms.txt +11 -9
  82. package/package.json +6 -3
package/llms.txt CHANGED
@@ -1,8 +1,8 @@
1
- # mcp-code-context v3.7.0
1
+ # mcp-code-context v3.8.0
2
2
 
3
3
  > A Model Context Protocol (MCP) server with **Tree-sitter WASM parsers** for 100% AST accuracy. Zero native dependencies. Production-ready with middleware pipeline, session-scoped state, and crash recovery.
4
4
 
5
- ## What's New in v3.7.0
5
+ ## What's New in v3.8.0
6
6
 
7
7
  🚀 **CRITICAL FIXES - Production Readiness Release**:
8
8
  - ✅ **Session-scoped state**: Each MCP client gets isolated locks, confirmation store, rate limiter (no state leakage)
@@ -11,8 +11,10 @@
11
11
  - ✅ **Auto-persist before eviction**: CacheManager now persists before LRU eviction
12
12
  - ✅ **Higher file limits**: MAX_FILES_REPO_MAP = 2000 (was 500)
13
13
  - ✅ **Multi-client tests**: New integration tests for concurrent MCP clients
14
+ - ✅ **Ruby full support**: Complete `RubyParser` with `search()` for `search_code_pattern` compatibility
15
+ - ✅ **ActiveRecord Virtual Schema**: Parses `db/schema.rb` and injects column annotations on AR model reads
14
16
 
15
- ## What's New in v3.7.0 (Previously Added)
17
+ ## Previously Added in v3.7.x
16
18
 
17
19
  - ✅ 4 new tools: `search_symbols`, `explain_symbol`, `batch_read`, `get_rate_limit_status`
18
20
  - ✅ `diffFormat` parameter on all write tools (`unified`, `compact`, `summary`, `none`)
@@ -147,13 +149,13 @@ This MCP server solves two problems:
147
149
  - `steps` (optional): Number of versions to go back (1-5, default: 1).
148
150
  **What it does:** Reverts the file to the state it was in before the last 1-5 modifications.
149
151
 
150
- ### Write Tools (v3.7.0 Two-Phase Workflow)
152
+ ### Write Tools (v3.8.0 Two-Phase Workflow)
151
153
 
152
154
  All write tools follow a **Two-Phase Workflow**:
153
155
  1. **Phase 1 (Preview)**: Call without a token to get a unified `diff` and a `confirmationToken`.
154
156
  2. **Phase 2 (Apply)**: Call with `confirmationToken` and `confirm: true` to apply the changes.
155
157
 
156
- **Important Notes (v3.7.0):**
158
+ **Important Notes (v3.8.0):**
157
159
  - ✅ **Windows CRLF Support**: Fully resolved. All operations work correctly on Windows files with CRLF line endings.
158
160
  - ✅ **Parameter Brace Handling**: Methods with braces in parameters (e.g., `{int? cart}`) are now handled correctly.
159
161
  - ✅ **Session-scoped state**: Each MCP client gets isolated state (locks, confirmation store, rate limiter).
@@ -234,7 +236,7 @@ All write tools follow a **Two-Phase Workflow**:
234
236
 
235
237
  **Best used when:** Cleaning up deprecated functions or unused code.
236
238
 
237
- ## New Tools (v3.7.0)
239
+ ## New Tools (v3.8.0)
238
240
 
239
241
  #### 11. `get_session_stats`
240
242
  **Purpose:** Get statistics for the current MCP client session.
@@ -266,7 +268,7 @@ All write tools follow a **Two-Phase Workflow**:
266
268
 
267
269
  **Best used when:** Recovering work after a server crash.
268
270
 
269
- ## Previously Added Tools (v3.7.0)
271
+ ## Previously Added Tools (v3.8.0)
270
272
 
271
273
  #### 14. `parse_file`
272
274
  **Purpose:** Parse a file using Tree-sitter and extract all symbols.
@@ -311,7 +313,7 @@ All write tools follow a **Two-Phase Workflow**:
311
313
  5. **Phase 2: Apply Edit** → Verify the diff, then call with the token and `confirm: true`.
312
314
  6. **Recovery** → Use `rollback_file` if needed.
313
315
 
314
- ## Session State Configuration (v3.7.0+)
316
+ ## Session State Configuration (v3.8.0+)
315
317
 
316
318
  ### Critical: Session-Scoped State
317
319
 
@@ -427,6 +429,6 @@ No additional configuration is needed beyond adding the MCP server definition. S
427
429
 
428
430
  ---
429
431
 
430
- **Version**: 3.7.0
432
+ **Version**: 3.8.0
431
433
  **Last Updated**: June 8, 2026
432
434
  **Status**: Production-ready with session-scoped state and crash recovery
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mcp-code-context",
3
- "version": "3.7.0",
4
- "description": "Powerful MCP server with Tree-sitter WASM parsers for 100% AST accuracy. Zero native dependencies. Production-ready with persistent caching, structured logging, file watching, fuzzy search, rate limiting, file locking, and ReDoS protection. Supports TypeScript, JavaScript, PHP, Dart, and Python.",
3
+ "version": "3.8.0",
4
+ "description": "Powerful MCP server with Tree-sitter WASM parsers for 100% AST accuracy. Zero native dependencies. Production-ready with persistent caching, structured logging, file watching, fuzzy search, rate limiting, file locking, and ReDoS protection. Supports TypeScript, JavaScript, PHP, Dart, Python, and Ruby (with ActiveRecord Virtual Schema extraction).",
5
5
  "type": "module",
6
6
  "main": "dist/src/index.js",
7
7
  "bin": {
@@ -38,7 +38,10 @@
38
38
  "typescript",
39
39
  "php",
40
40
  "dart",
41
- "python"
41
+ "python",
42
+ "ruby",
43
+ "rails",
44
+ "activerecord"
42
45
  ],
43
46
  "author": "Alejandro Chataing <a.chataing.a@gmail.com>",
44
47
  "license": "MIT",