Skip to main content
Glama

Matrix Pattern MCP Server

by Rodrigo-JM
setup.shโ€ข4.65 kB
#!/bin/bash # Matrix Pattern MCP Server Setup Script # This script initializes the Matrix Pattern System environment set -e echo "๐Ÿ”ท Matrix Pattern MCP Server Setup" echo "==================================" # Colors for output RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' # No Color # Function to print colored output print_status() { echo -e "${BLUE}[INFO]${NC} $1" } print_success() { echo -e "${GREEN}[SUCCESS]${NC} $1" } print_warning() { echo -e "${YELLOW}[WARNING]${NC} $1" } print_error() { echo -e "${RED}[ERROR]${NC} $1" } # Check Node.js version print_status "Checking Node.js version..." if ! command -v node &> /dev/null; then print_error "Node.js is not installed. Please install Node.js 18+ and try again." exit 1 fi NODE_VERSION=$(node -v | cut -d 'v' -f 2) REQUIRED_VERSION="18.0.0" if ! npx semver -r ">=$REQUIRED_VERSION" "$NODE_VERSION" &> /dev/null; then print_error "Node.js version $NODE_VERSION is not supported. Please install Node.js $REQUIRED_VERSION or higher." exit 1 fi print_success "Node.js version $NODE_VERSION is compatible" # Check if npm is available print_status "Checking npm availability..." if ! command -v npm &> /dev/null; then print_error "npm is not available. Please install npm and try again." exit 1 fi print_success "npm is available" # Create necessary directories if they don't exist print_status "Creating directory structure..." mkdir -p .matrix_pattern/logs mkdir -p .matrix_pattern/backups mkdir -p .matrix_pattern/temp mkdir -p src/handlers mkdir -p src/utils mkdir -p src/validators mkdir -p src/test/fixtures print_success "Directory structure created" # Install dependencies print_status "Installing dependencies..." if [ -f "package-lock.json" ]; then npm ci else npm install fi print_success "Dependencies installed" # Initialize Matrix Pattern configuration print_status "Initializing Matrix Pattern configuration..." if [ ! -f ".matrix_pattern/config.json" ]; then print_warning "Configuration file not found. Using default configuration." fi # Update configuration with initialization timestamp node -e " const fs = require('fs'); const config = JSON.parse(fs.readFileSync('.matrix_pattern/config.json', 'utf8')); config.matrix_pattern.initialized = true; config.matrix_pattern.initialized_at = new Date().toISOString(); fs.writeFileSync('.matrix_pattern/config.json', JSON.stringify(config, null, 2)); console.log('Configuration updated with initialization timestamp'); " print_success "Matrix Pattern configuration initialized" # Create .gitignore if it doesn't exist if [ ! -f ".gitignore" ]; then print_status "Creating .gitignore file..." cat > .gitignore << 'EOL' # Dependencies node_modules/ npm-debug.log* yarn-debug.log* yarn-error.log* # Runtime data pids *.pid *.seed *.pid.lock # Coverage directory used by tools like istanbul coverage/ # nyc test coverage .nyc_output # Logs logs *.log # Runtime and temp files .matrix_pattern/logs/ .matrix_pattern/temp/ .matrix_pattern/backups/ # Environment variables .env .env.local .env.development.local .env.test.local .env.production.local # OS generated files .DS_Store .DS_Store? ._* .Spotlight-V100 .Trashes ehthumbs.db Thumbs.db # IDE files .vscode/ .idea/ *.swp *.swo # Build outputs dist/ build/ *.tsbuildinfo # Test outputs test-results/ EOL print_success ".gitignore file created" fi # Validate setup print_status "Validating setup..." # Check if all required directories exist REQUIRED_DIRS=( ".matrix_pattern/matrix" ".matrix_pattern/metadata" ".matrix_pattern/metadata/horizontals" ".matrix_pattern/metadata/sync-reports/horizontal" ".matrix_pattern/metadata/sync-reports/vertical" "src" "src/test" ) for dir in "${REQUIRED_DIRS[@]}"; do if [ ! -d "$dir" ]; then print_error "Required directory $dir is missing" exit 1 fi done print_success "All required directories are present" # Check if config file is valid JSON if ! node -e "JSON.parse(require('fs').readFileSync('.matrix_pattern/config.json', 'utf8'))" 2>/dev/null; then print_error "Configuration file is not valid JSON" exit 1 fi print_success "Configuration file is valid" echo "" echo "๐ŸŽ‰ Matrix Pattern MCP Server setup completed successfully!" echo "" echo "Next steps:" echo "1. Run 'npm start' to start the MCP server" echo "2. Run 'npm test' to run the test suite" echo "3. Run 'npm run init-matrix' to initialize pattern management" echo "" echo "For more information, check the documentation or run 'npm run --silent' to see available scripts."

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