@dollhousemcp/mcp-server 1.8.0 โ†’ 1.9.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 (56) hide show
  1. package/CHANGELOG.md +118 -0
  2. package/README.github.md +126 -8
  3. package/README.md +1 -1
  4. package/README.md.backup +50 -795
  5. package/README.npm.md +1 -1
  6. package/dist/collection/CollectionBrowser.d.ts.map +1 -1
  7. package/dist/collection/CollectionBrowser.js +6 -5
  8. package/dist/config/ConfigWizardDisplay.d.ts +64 -0
  9. package/dist/config/ConfigWizardDisplay.d.ts.map +1 -0
  10. package/dist/config/ConfigWizardDisplay.js +150 -0
  11. package/dist/config/WizardFirstResponse.d.ts +25 -0
  12. package/dist/config/WizardFirstResponse.d.ts.map +1 -0
  13. package/dist/config/WizardFirstResponse.js +118 -0
  14. package/dist/elements/memories/Memory.d.ts +190 -0
  15. package/dist/elements/memories/Memory.d.ts.map +1 -0
  16. package/dist/elements/memories/Memory.js +627 -0
  17. package/dist/elements/memories/MemoryManager.d.ts +136 -0
  18. package/dist/elements/memories/MemoryManager.d.ts.map +1 -0
  19. package/dist/elements/memories/MemoryManager.js +607 -0
  20. package/dist/elements/memories/MemorySearchIndex.d.ts +156 -0
  21. package/dist/elements/memories/MemorySearchIndex.d.ts.map +1 -0
  22. package/dist/elements/memories/MemorySearchIndex.js +690 -0
  23. package/dist/elements/memories/constants.d.ts +95 -0
  24. package/dist/elements/memories/constants.d.ts.map +1 -0
  25. package/dist/elements/memories/constants.js +102 -0
  26. package/dist/elements/memories/index.d.ts +7 -0
  27. package/dist/elements/memories/index.d.ts.map +1 -0
  28. package/dist/elements/memories/index.js +7 -0
  29. package/dist/elements/memories/utils.d.ts +68 -0
  30. package/dist/elements/memories/utils.d.ts.map +1 -0
  31. package/dist/elements/memories/utils.js +137 -0
  32. package/dist/generated/version.d.ts +2 -2
  33. package/dist/generated/version.js +3 -3
  34. package/dist/scripts/scripts/run-config-wizard.js +57 -0
  35. package/dist/scripts/src/config/ConfigManager.js +799 -0
  36. package/dist/scripts/src/config/ConfigWizard.js +368 -0
  37. package/dist/scripts/src/errors/SecurityError.js +47 -0
  38. package/dist/scripts/src/security/constants.js +28 -0
  39. package/dist/scripts/src/security/contentValidator.js +415 -0
  40. package/dist/scripts/src/security/errors.js +32 -0
  41. package/dist/scripts/src/security/regexValidator.js +217 -0
  42. package/dist/scripts/src/security/secureYamlParser.js +272 -0
  43. package/dist/scripts/src/security/securityMonitor.js +111 -0
  44. package/dist/scripts/src/security/validators/unicodeValidator.js +315 -0
  45. package/dist/scripts/src/utils/logger.js +288 -0
  46. package/dist/security/audit/SecurityAuditor.d.ts.map +1 -1
  47. package/dist/security/audit/SecurityAuditor.js +24 -2
  48. package/dist/security/audit/config/suppressions.d.ts.map +1 -1
  49. package/dist/security/audit/config/suppressions.js +91 -1
  50. package/dist/security/securityMonitor.d.ts +1 -1
  51. package/dist/security/securityMonitor.d.ts.map +1 -1
  52. package/dist/security/securityMonitor.js +1 -1
  53. package/dist/tools/getWelcomeMessage.d.ts +41 -0
  54. package/dist/tools/getWelcomeMessage.d.ts.map +1 -0
  55. package/dist/tools/getWelcomeMessage.js +109 -0
  56. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,123 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.8.1] - 2025-09-15
4
+
5
+ ### Fixed
6
+ - **Extended Node Compatibility**: Fixed Headers constructor undefined in CI environment
7
+ - Replaced Headers constructor with plain object mock to ensure cross-platform compatibility
8
+ - Previously failing test "should provide helpful error messages for common failures" now passes consistently
9
+ - Improves CI reliability for Extended Node Compatibility workflow
10
+ - **Documentation**: Updated website URL to reflect live status (removed "(planned)" designation)
11
+ - Website https://dollhousemcp.com is now live and accessible
12
+ - Updated README chunks and regenerated documentation files
13
+
14
+ ### Improved
15
+ - **CI Reliability**: Enhanced test infrastructure for better cross-platform compatibility
16
+ - **Test Mocking**: Improved mock strategies to work in both local and CI environments
17
+
18
+ ## [1.8.0] - 2025-09-15
19
+
20
+ ### ๐Ÿšจ Breaking Changes
21
+ - **Configuration Wizard Auto-Trigger Removed**: The configuration wizard no longer appears automatically on first MCP interaction
22
+ - Different LLMs handled auto-insertion unpredictably, causing UX inconsistencies
23
+ - Migration: Wizard still available manually via `config` tool with `action: 'wizard'`
24
+
25
+ ### Added
26
+
27
+ #### Major Portfolio System Enhancements
28
+ - **Configurable Repository Names**: Portfolio repository names now configurable via `TEST_GITHUB_REPO` environment variable
29
+ - **Full Portfolio Sync Functionality**: Complete bidirectional sync with GitHub portfolios
30
+ - `sync_portfolio pull` functionality for downloading elements from GitHub
31
+ - Three sync modes: additive (default), mirror, backup
32
+ - Dry-run mode with change preview
33
+ - Progress reporting and conflict resolution
34
+ - **Portfolio Pull Handler**: New modular architecture for GitHub portfolio synchronization
35
+ - PortfolioPullHandler for orchestrating pull operations
36
+ - PortfolioSyncComparer for intelligent comparison logic
37
+ - PortfolioDownloader with Unicode normalization and batch processing
38
+ - **Enhanced Tool Clarity**: Renamed conflicting tools for better user experience
39
+ - `install_content` โ†’ `install_collection_content` (install FROM collection)
40
+ - `submit_content` โ†’ `submit_collection_content` (submit TO collection)
41
+ - Maintained `sync_portfolio` for bulk operations
42
+
43
+ #### GitHub Integration Improvements
44
+ - **Portfolio Repository Management**: Comprehensive GitHub repository management
45
+ - Automated repository creation and initialization
46
+ - Smart conflict detection and resolution
47
+ - Authenticated username resolution for portfolio operations
48
+ - **Rate Limiting Fixes**: Resolved bulk operation failures
49
+ - Fixed redundant token validation causing GitHub API rate limits
50
+ - Added tokenPreValidated flag to prevent validation on every API call
51
+ - Improved bulk sync success rate from 0% to functional operation
52
+ - **Filename Transformation Fix**: Fixed critical portfolio sync issue
53
+ - Resolved mismatch between GitHub filenames and local processing
54
+ - Portfolio pull operations now correctly find and restore files
55
+ - Eliminated "No elements found in GitHub portfolio" errors
56
+
57
+ #### Test Infrastructure & Environment
58
+ - **Isolated Test Environment**: Dedicated test infrastructure with real GitHub integration
59
+ - Created dollhouse-test-portfolio repository for safe testing
60
+ - Docker Compose configuration for test environment
61
+ - Configurable test parameters via environment variables
62
+ - **Enhanced Test Coverage**: Comprehensive unit tests for portfolio functionality
63
+ - PortfolioSyncComparer.test.ts (11 test suites, 15 tests)
64
+ - PortfolioDownloader.test.ts (5 test suites, 15 tests)
65
+ - Performance tests for large portfolios (1000+ elements)
66
+
67
+ ### Fixed
68
+
69
+ #### Critical Portfolio Sync Issues
70
+ - **Issue #930**: Portfolio sync pull failures resolved
71
+ - Fixed filename transformation mismatch preventing file restoration
72
+ - GitHub operations now use consistent filename format
73
+ - **Issue #913**: Portfolio upload failures with null response errors
74
+ - Fixed IElement object incomplete method implementations
75
+ - Now uses PortfolioElementAdapter pattern for reliable uploads
76
+ - **Issue #926**: Rate limiting issues in bulk operations
77
+ - Eliminated redundant token validation calls
78
+ - Batch processing with proper rate limiting
79
+
80
+ #### GitHub Authentication & API
81
+ - **JSON Parsing Error**: Fixed `Unexpected token 'U', "Unauthorized" is not valid JSON` error
82
+ - Added proper response status checking before JSON parsing
83
+ - Improved error messages for authentication failures
84
+ - **User Authentication**: Fixed portfolio operations using incorrect usernames
85
+ - Now uses authenticated user's username instead of element author
86
+ - Prevents 404 errors in portfolio sync operations
87
+ - **Token Management**: Enhanced GitHub token handling and validation
88
+
89
+ #### Template System
90
+ - **Issue #914**: Template variable interpolation completely broken
91
+ - Refactored template rendering to dedicated TemplateRenderer utility class
92
+ - Fixed variable substitution and validation
93
+ - Added comprehensive error handling and logging
94
+
95
+ ### Performance
96
+ - **Portfolio Sync Optimization**: Significant performance improvements
97
+ - Batch index rebuilds (4x faster for large portfolios)
98
+ - Parallel downloads with rate limiting (up to 5x faster)
99
+ - Single index rebuild after all operations complete
100
+ - **Test Coverage**: Maintained 97%+ test coverage across all changes
101
+ - **CI Reliability**: Enhanced workflow consistency and eliminated flaky tests
102
+
103
+ ### Dependencies
104
+ - **@modelcontextprotocol/sdk**: Updated to v1.18.0 (latest MCP protocol features)
105
+ - **zod**: Updated to v4.1.8 (schema validation improvements)
106
+ - **jsdom**: Updated to v27.0.0 (DOM testing environment enhancements)
107
+ - **@types/node**: Updated to v24.4.0 (latest Node.js type definitions)
108
+
109
+ ### Security
110
+ - **Input Validation**: Enhanced Unicode normalization to prevent homograph attacks
111
+ - **Security Audit Logging**: Added comprehensive logging for portfolio operations
112
+ - **Authentication**: Improved GitHub authentication flow reliability
113
+ - **YAML Parsing Security**: Enhanced validation to prevent code injection
114
+
115
+ ### Developer Experience
116
+ - **Tool Organization**: Organized 41 MCP tools into 6 logical categories
117
+ - **Configuration Wizard**: Interactive setup for new installations
118
+ - **Debug Infrastructure**: Enhanced logging and error tracking
119
+ - **Documentation**: Comprehensive session notes and troubleshooting guides
120
+
3
121
  ## [1.7.3] - 2025-09-09
4
122
 
5
123
  ### Security
package/README.github.md CHANGED
@@ -29,7 +29,7 @@
29
29
  **๐ŸŒ Repository**: https://github.com/DollhouseMCP/mcp-server
30
30
  **๐Ÿช Collection**: https://github.com/DollhouseMCP/collection
31
31
  **๐Ÿ“ฆ NPM Package**: https://www.npmjs.com/package/@dollhousemcp/mcp-server
32
- **๐ŸŒ Website**: https://dollhousemcp.com (planned)
32
+ **๐ŸŒ Website**: https://dollhousemcp.com
33
33
 
34
34
  ---
35
35
 
@@ -158,21 +158,17 @@ Enable autonomous task completion
158
158
 
159
159
  </td>
160
160
  </tr>
161
- </table>
162
-
163
- ### ๐Ÿ”„ Coming Soon
164
-
165
- <table>
166
161
  <tr>
167
162
  <td width="50%">
168
163
 
169
- #### ๐Ÿง  Memory
164
+ #### ๐Ÿง  Memory (NEW in v1.9.0!)
170
165
  Persistent context across sessions
171
166
  - **Project Context** - Remember project details and decisions
172
167
  - **Learning Progress** - Track skill development over time
173
168
  - **Personal Preferences** - Store user-specific settings
174
169
  - **Conversation History** - Maintain dialogue continuity
175
- - **Status**: Coming Soon
170
+ - **Date-based organization** - Automatic folder structure
171
+ - **Use**: `"Create a memory for this project"`
176
172
 
177
173
  </td>
178
174
  <td width="50%">
@@ -842,6 +838,128 @@ For detailed guidelines, see [CONTRIBUTING.md](CONTRIBUTING.md).
842
838
 
843
839
  ## ๐Ÿท๏ธ Version History
844
840
 
841
+ ### v1.9.0 - September 19, 2025
842
+
843
+ **๐ŸŽ‰ Memory Element Release**: Persistent context storage with enterprise-grade features
844
+
845
+ #### โœจ New Features
846
+ - **Memory Element**: Complete implementation of persistent context storage (PR #1000 - The Milestone PR!)
847
+ - **Date-based Organization**: Automatic folder structure (YYYY-MM-DD) prevents flat directory issues
848
+ - **Content Deduplication**: SHA-256 hashing prevents duplicate storage (Issue #994)
849
+ - **Search Indexing**: Fast queries across thousands of entries with O(log n) performance (Issue #984)
850
+ - **Privacy Levels**: Three-tier access control (public, private, sensitive)
851
+ - **Retention Policies**: Automatic cleanup based on age and capacity
852
+
853
+ #### ๐Ÿ”ง Improvements
854
+ - **Performance Optimizations**: 60-second cache for date folder operations
855
+ - **Collision Handling**: Automatic version suffixes for same-named files
856
+ - **Atomic Operations**: FileLockManager prevents corruption and race conditions
857
+ - **Sanitization Caching**: SHA-256 checksums reduce CPU usage by ~40% during deserialization
858
+ - **Retry Logic**: Search index building with exponential backoff
859
+
860
+ #### ๐Ÿ›ก๏ธ Security
861
+ - **Comprehensive Input Validation**: All memory content sanitized with DOMPurify
862
+ - **Path Traversal Protection**: Robust validation in MemoryManager
863
+ - **Size Limits**: DoS protection with 1MB memory and 100KB entry limits
864
+ - **Audit Logging**: Complete security event tracking
865
+
866
+ #### ๐Ÿงช Testing
867
+ - **89 Memory Tests**: Comprehensive coverage across 4 test suites
868
+ - **Concurrent Access Tests**: Thread safety verification
869
+ - **Security Coverage**: XSS, Unicode attacks, path traversal
870
+ - **CI Improvements**: Fixed GitHub integration test conflicts (PR #1001)
871
+
872
+ ---
873
+
874
+ ### v1.8.1 - September 15, 2025
875
+
876
+ **CI Reliability Improvements**: Fixed persistent test failures across platforms
877
+
878
+ #### ๐Ÿ”ง Bug Fixes
879
+ - **GitHub API 409 Conflicts**: Enhanced retry mechanism with jitter for parallel CI jobs
880
+ - **Windows Performance Tests**: Platform-specific timing thresholds for CI environments
881
+ - **Test Stability**: Resolved flaky tests in Extended Node Compatibility workflow
882
+
883
+ ---
884
+
885
+ ### v1.8.0 - September 15, 2025
886
+
887
+ **Major Portfolio System Enhancements**: Full GitHub portfolio synchronization
888
+
889
+ #### โœจ New Features
890
+ - **Portfolio Sync**: Complete bidirectional sync with GitHub portfolios
891
+ - **Pull Functionality**: Download elements from GitHub portfolios (3 sync modes)
892
+ - **Configurable Repos**: Portfolio repository names now configurable
893
+ - **Configuration Wizard**: Now manual-only (removed auto-trigger for better UX)
894
+
895
+ #### ๐Ÿ”ง Improvements
896
+ - **Tool Clarity**: Renamed conflicting tools for better user experience
897
+ - **Rate Limiting**: Fixed redundant token validation causing API limits
898
+ - **GitHub Integration**: Comprehensive repository management
899
+
900
+ ---
901
+
902
+ ### v1.7.4 - September 12, 2025
903
+
904
+ **Hotfix Release**: Critical build and registration fixes
905
+
906
+ #### ๐Ÿ”ง Bug Fixes
907
+ - **Build Infrastructure**: Fixed missing TypeScript files in dist
908
+ - **Tool Registration**: Resolved MCP tool availability issues
909
+ - **Skill System**: Fixed skill registration and activation
910
+ - **Test Framework**: Restored test infrastructure functionality
911
+
912
+ ---
913
+
914
+ ### v1.7.3 - September 9, 2025
915
+
916
+ **Security & Configuration Release**: Prototype pollution protection and config management
917
+
918
+ #### ๐Ÿ›ก๏ธ Security
919
+ - **Prototype Pollution Protection**: Comprehensive validation against injection attacks
920
+ - **YAML Security**: Maintained FAILSAFE_SCHEMA with security documentation
921
+ - **Security Audit**: Achieved 0 security findings across all severity levels
922
+
923
+ #### โœจ Improvements
924
+ - **Configuration Management**: Complete overhaul with atomic operations
925
+ - **Test Coverage**: Comprehensive security and configuration tests
926
+ - **Input Normalization**: All inputs normalized at MCP request layer
927
+
928
+ ---
929
+
930
+ ### v1.7.2 - September 7, 2025
931
+
932
+ **Security Patch Release**: Critical logging vulnerability fixes
933
+
934
+ #### ๐Ÿ›ก๏ธ Security Fixes
935
+ - **Clear-text Logging Prevention**: Comprehensive sanitization of sensitive data
936
+ - **OAuth Token Protection**: Prevents exposure of tokens in console output
937
+ - **API Key Sanitization**: Masks all credentials before logging
938
+
939
+ ---
940
+
941
+ ### v1.7.1 - September 3, 2025
942
+
943
+ **Maintenance Release**: Documentation and compatibility improvements
944
+
945
+ #### ๐Ÿ”ง Improvements
946
+ - **Documentation**: Updated for better clarity and accuracy
947
+ - **Compatibility**: Enhanced cross-platform support
948
+ - **Bug Fixes**: Various minor fixes and optimizations
949
+
950
+ ---
951
+
952
+ ### v1.7.0 - August 30, 2025
953
+
954
+ **Major Feature Release**: Enhanced portfolio and collection systems
955
+
956
+ #### โœจ New Features
957
+ - **Portfolio Management**: Improved local portfolio organization
958
+ - **Collection Integration**: Better integration with community collection
959
+ - **Security Enhancements**: Critical security fixes from code review
960
+
961
+ ---
962
+
845
963
  ### v1.6.11 - August 28, 2025
846
964
 
847
965
  **Test Reliability & Collection Fixes**: Improved test suite stability and fixed collection system
package/README.md CHANGED
@@ -10,7 +10,7 @@ A comprehensive Model Context Protocol (MCP) server that enables dynamic AI pers
10
10
  **๐ŸŒ Repository**: https://github.com/DollhouseMCP/mcp-server
11
11
  **๐Ÿช Collection**: https://github.com/DollhouseMCP/collection
12
12
  **๐Ÿ“ฆ NPM Package**: https://www.npmjs.com/package/@dollhousemcp/mcp-server
13
- **๐ŸŒ Website**: https://dollhousemcp.com (planned)
13
+ **๐ŸŒ Website**: https://dollhousemcp.com
14
14
 
15
15
  ## ๐Ÿš€ Quick Start
16
16