Skip to main content
Glama

Matrix Pattern MCP Server

by Rodrigo-JM
README.mdโ€ข12.9 kB
# Matrix Pattern MCP Server Advanced pattern management and synchronization MCP server for Claude applications. The Matrix Pattern System provides a structured approach to organizing and coordinating complex development patterns across multiple dimensions. ## ๐Ÿš€ Quick Start 1. **Clone and setup:** ```bash git clone <repository-url> cd matrix-mcp-server ./setup.sh ``` 2. **Install dependencies:** ```bash npm install ``` 3. **Start the server:** ```bash npm start ``` 4. **Add to Claude configuration:** ```bash # Copy the provided configuration cp claude_mcp_config.json ~/.claude/mcp_servers.json ``` ## ๐Ÿ“Š Matrix Pattern System Overview The Matrix Pattern System organizes development patterns in a two-dimensional structure: - **Horizontal (Rows)**: Different pattern types (requirements, architecture, implementation, etc.) - **Vertical (Columns)**: Feature domains (authentication, data-processing, ui-components, etc.) ### Key Concepts - **Forward-Only Constraint**: Cells can only be created once, ensuring pattern integrity - **Horizontal Synchronization**: Share patterns across feature domains - **Vertical Synchronization**: Cascade updates through development phases - **Metadata Tracking**: Comprehensive lifecycle and relationship tracking ## ๐Ÿ› ๏ธ Available Tools (7 Total) ### 1. `matrix_create_cell` - Create Pattern Cells Create new cells in the matrix pattern system. ```javascript // Example: Create authentication requirements cell { "cellId": { "row": "requirements", "column": "authentication" }, "data": { "content": "# Authentication Requirements\n\n## Functional Requirements\n- User login with email/password\n- Multi-factor authentication support\n- Session management\n\n## Non-Functional Requirements\n- Security: OAuth 2.0 compliance\n- Performance: < 2s login time\n- Availability: 99.9% uptime", "metadata": { "priority": "high", "horizontal_type": "requirements" } } } ``` ### 2. `matrix_read_cell` - Read Pattern Cells Retrieve cell content and metadata. ```javascript // Example: Read specific cell { "cellId": { "row": "architecture", "column": "authentication" } } ``` ### 3. `matrix_sync_horizontal` - Horizontal Pattern Sync Synchronize patterns across feature domains within the same development phase. ```javascript // Example: Sync requirements from authentication to authorization { "sourceRow": "requirements", "targetRow": "requirements", "columns": ["authentication", "authorization"] } ``` ### 4. `matrix_sync_vertical` - Vertical Pattern Sync Cascade patterns from one development phase to another. ```javascript // Example: Sync authentication from requirements to architecture { "column": "authentication", "fromRow": "requirements", "toRow": "architecture" } ``` ### 5. `matrix_list_verticals` - List Column Cells Show all cells in a vertical column (feature domain). ```javascript // Example: List all authentication-related cells { "column": "authentication" } ``` ### 6. `matrix_list_horizontals` - List Row Cells Show all cells in a horizontal row (development phase). ```javascript // Example: List all requirement cells { "row": "requirements" } ``` ### 7. `matrix_read_horizontal_instructions` - Get Sync Instructions Retrieve synchronization instructions and metadata for horizontal patterns. ```javascript // Example: Get requirements sync instructions { "row": "requirements" } ``` ## ๐Ÿ“ Project Structure ``` matrix-mcp-server/ โ”œโ”€โ”€ src/ # Source code โ”‚ โ”œโ”€โ”€ index.js # Main MCP server โ”‚ โ”œโ”€โ”€ validator.js # Cell content validator โ”‚ โ”œโ”€โ”€ matrix-fs.js # File system utilities โ”‚ โ”œโ”€โ”€ sync-engine.js # Synchronization engine โ”‚ โ””โ”€โ”€ test/ # Test files โ”œโ”€โ”€ .matrix_pattern/ # Matrix Pattern system files โ”‚ โ”œโ”€โ”€ matrix/ # Pattern storage (*.json files) โ”‚ โ”œโ”€โ”€ metadata/ # Pattern metadata โ”‚ โ”‚ โ”œโ”€โ”€ horizontals/ # Horizontal pattern metadata โ”‚ โ”‚ โ””โ”€โ”€ sync-reports/ # Synchronization reports โ”‚ โ”‚ โ”œโ”€โ”€ horizontal/ # Horizontal sync reports โ”‚ โ”‚ โ””โ”€โ”€ vertical/ # Vertical sync reports โ”‚ โ””โ”€โ”€ config.json # System configuration โ”œโ”€โ”€ claude_mcp_config.json # Claude MCP configuration โ”œโ”€โ”€ package.json # Project configuration โ”œโ”€โ”€ setup.sh # Setup script โ””โ”€โ”€ README.md # This file ``` ## โš™๏ธ Configuration ### Claude MCP Configuration The `claude_mcp_config.json` file contains the complete MCP server configuration for Claude integration. ### System Configuration The Matrix Pattern system is configured via `.matrix_pattern/config.json`: ```json { "matrix_pattern": { "version": "1.0.0", "initialized": true, "config": { "max_patterns": 1000, "auto_cleanup": true, "sync": { "horizontal": { "conflict_resolution": "manual" }, "vertical": { "auto_cascade": false } } } } } ``` ## ๐ŸŽฏ Usage Examples ### Complete Development Flow ```javascript // 1. Create requirements cell matrix_create_cell({ cellId: { row: "requirements", column: "user-management" }, data: { content: "# User Management Requirements\n- User registration\n- Profile management\n- Account deactivation", metadata: { horizontal_type: "requirements" } } }) // 2. Sync to architecture phase matrix_sync_vertical({ column: "user-management", fromRow: "requirements", toRow: "architecture" }) // 3. List all user-management cells matrix_list_verticals({ column: "user-management" }) // 4. Sync architecture across related features matrix_sync_horizontal({ sourceRow: "architecture", targetRow: "architecture", columns: ["user-management", "authentication"] }) ``` ### Content Validation ```javascript import { CellValidator } from './src/validator.js'; const validator = new CellValidator(); const result = validator.validateCell(cellData, { horizontal_type: 'requirements' }); console.log(validator.getValidationSummary(result)); ``` ## ๐Ÿงช Available Scripts - `npm start` - Start the MCP server - `npm run dev` - Start with file watching - `npm test` - Run comprehensive test suite - `npm run build` - Build and validate project - `npm run setup` - Run setup script - `npm run init-matrix` - Initialize pattern management - `npm run validate` - Validate pattern integrity - `npm run lint` - Code linting - `npm run format` - Code formatting ## ๐Ÿ—๏ธ Core Features ### 1. Advanced Pattern Management - **Cell-based Storage**: Each pattern stored as individual JSON cell - **Metadata Tracking**: Comprehensive lifecycle and relationship tracking - **Version Control**: Pattern version management and history - **Schema Validation**: Content structure validation with CellValidator ### 2. Multi-Dimensional Synchronization - **Horizontal Sync**: Share patterns across feature domains - **Vertical Sync**: Cascade patterns through development phases - **Selective Sync**: Choose specific columns/cells to synchronize - **Conflict Detection**: Intelligent conflict resolution mechanisms ### 3. Content Validation System - **Format Validation**: Markdown structure and formatting checks - **Section Requirements**: Validate required sections per horizontal type - **Quality Assessment**: Content quality scoring (0-100) - **Custom Validators**: Extensible validation system ### 4. Intelligent Reporting - **Sync Reports**: Detailed synchronization operation reports - **Quality Metrics**: Content quality and completeness tracking - **Relationship Mapping**: Track dependencies and relationships - **Audit Trail**: Complete operation history ## ๐Ÿ”ง Installation & Setup ### Prerequisites - Node.js >= 18.0.0 - npm package manager - Claude CLI (for MCP integration) ### Step-by-Step Installation 1. **Clone repository:** ```bash git clone <repository-url> cd matrix-mcp-server ``` 2. **Run setup script:** ```bash chmod +x setup.sh ./setup.sh ``` 3. **Install dependencies:** ```bash npm install ``` 4. **Validate installation:** ```bash npm test npm run validate ``` 5. **Configure Claude MCP:** ```bash # Copy configuration to Claude cp claude_mcp_config.json ~/.claude/mcp_servers.json # Or merge with existing configuration cat claude_mcp_config.json >> ~/.claude/mcp_servers.json ``` 6. **Start the server:** ```bash npm start ``` ## ๐Ÿšจ Troubleshooting Guide ### Common Issues #### 1. Server Connection Failed **Symptoms:** Server not responding, connection timeout **Solutions:** - Check Node.js version: `node --version` (must be >= 18.0.0) - Verify server is running: `npm start` - Check working directory path in claude_mcp_config.json - Ensure dependencies installed: `npm install` #### 2. Cell Creation Validation Errors **Symptoms:** Cell creation fails, validation error messages **Solutions:** - Verify cell data format matches schema - Ensure cellId has both row and column properties - Check content is non-empty string - Use CellValidator to validate content before creation #### 3. Synchronization Issues **Symptoms:** Sync operations fail, forward-only constraint errors **Solutions:** - Verify source cells exist before syncing - Check target cells don't exist (forward-only constraint) - Review sync reports in `.matrix_pattern/metadata/sync-reports/` - Ensure proper file permissions on `.matrix_pattern/` directory #### 4. File Permission Errors **Symptoms:** Cannot read/write matrix files **Solutions:** - Check directory permissions: `ls -la .matrix_pattern/` - Fix permissions: `chmod -R 755 .matrix_pattern/` - Re-run setup: `./setup.sh` ### Debugging Tools #### Log Files - Server logs: `.matrix_pattern/logs/server.log` - Sync reports: `.matrix_pattern/metadata/sync-reports/` - Error logs: Check console output during operations #### Diagnostic Commands ```bash # Check system status npm run validate # Run comprehensive tests npm test # Check Node.js version node --version # Verify MCP configuration cat claude_mcp_config.json | jq . # Check directory structure ls -la .matrix_pattern/ ``` ## ๐Ÿ” Advanced Usage ### Custom Validation Rules ```javascript import { CellValidator } from './src/validator.js'; const customValidator = CellValidator.createValidator({ strict_mode: true, custom_validators: [ (cellData) => { if (cellData.content.includes('TODO')) { return { errors: [{ type: 'content_quality', message: 'TODO items not allowed in production cells', severity: 'high' }] }; } return { valid: true }; } ] }); ``` ### Batch Operations ```javascript // Validate multiple cells const batchResult = validator.validateBatch([cell1, cell2, cell3]); console.log(`${batchResult.passed}/${batchResult.total} cells passed validation`); ``` ### Pattern Templates Create reusable pattern templates for consistent cell structure: ```javascript const requirementTemplate = { content: `# {FEATURE_NAME} Requirements ## Functional Requirements - TODO: Add functional requirements ## Non-Functional Requirements - Performance: TODO: Add performance requirements - Security: TODO: Add security requirements - Scalability: TODO: Add scalability requirements ## Acceptance Criteria - TODO: Add acceptance criteria`, metadata: { horizontal_type: "requirements", template_version: "1.0.0" } }; ``` ## ๐Ÿ“ˆ Performance Considerations - **File System**: Uses efficient JSON file storage with fs-extra - **Caching**: Implements intelligent caching for frequently accessed cells - **Batch Operations**: Supports batch validation and operations - **Memory Management**: Optimized for large pattern collections - **Concurrent Access**: Thread-safe operations with proper locking ## ๐Ÿค Contributing 1. Fork the repository 2. Create feature branch: `git checkout -b feature/amazing-feature` 3. Commit changes: `git commit -m 'Add amazing feature'` 4. Push to branch: `git push origin feature/amazing-feature` 5. Open pull request ## ๐Ÿ“„ License This project is licensed under the MIT License - see the LICENSE file for details. ## ๐Ÿ†˜ Support - **Documentation**: Check this README and inline code comments - **Issues**: Create GitHub issues for bugs and feature requests - **Community**: Join discussions in the repository - **Professional Support**: Contact for enterprise support options --- **Matrix Pattern System** - Organize, synchronize, and scale your development patterns with confidence.

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Rodrigo-JM/matrix-pattern'

If you have feedback or need assistance with the MCP directory API, please join our Discord server