Files
nasir@endelospay.com f4ca680532 feat: add PM2 configuration and deployment setup for remote server
- Add Makefile with convenient PM2 commands for development and production
- Add ecosystem.config.js with production/staging/dev environment configurations
- Add comprehensive PM2-GUIDE.md documentation for deployment
- Update package.json with PM2-specific npm scripts
- Fix Chrome extension URL handling to omit standard ports (443/80)
- Hide embedding model and semantic engine sections in popup UI
2025-08-22 00:21:10 +05:00

111 lines
2.7 KiB
Makefile

# MCP Remote Server Makefile
# Provides convenient commands for development and production deployment
.PHONY: help install build start stop restart status logs dev clean test lint format pm2-setup pm2-start pm2-stop pm2-restart pm2-status pm2-logs pm2-delete
# Default target
help:
@echo "MCP Remote Server - Available Commands:"
@echo ""
@echo "Development:"
@echo " make install - Install dependencies"
@echo " make build - Build TypeScript to JavaScript"
@echo " make dev - Start development server with hot reload"
@echo " make test - Run tests"
@echo " make lint - Run ESLint"
@echo " make format - Format code with Prettier"
@echo " make clean - Clean build artifacts"
@echo ""
@echo "Production (Direct):"
@echo " make start - Build and start server"
@echo " make stop - Stop server (if running in background)"
@echo ""
@echo "Production (PM2):"
@echo " make pm2-setup - Install PM2 globally (requires sudo/admin)"
@echo " make pm2-start - Start server with PM2"
@echo " make pm2-stop - Stop PM2 server"
@echo " make pm2-restart - Restart PM2 server"
@echo " make pm2-status - Show PM2 status"
@echo " make pm2-logs - Show PM2 logs"
@echo " make pm2-delete - Delete PM2 process"
@echo ""
# Development commands
install:
@echo "Installing dependencies..."
npm install
build:
@echo "Building TypeScript..."
npm run build
dev:
@echo "Starting development server..."
npm run dev
test:
@echo "Running tests..."
npm test
lint:
@echo "Running ESLint..."
npm run lint
format:
@echo "Formatting code..."
npm run format
clean:
@echo "Cleaning build artifacts..."
rm -rf dist/
rm -rf node_modules/.cache/
# Direct production commands
start: build
@echo "Starting server..."
npm start
stop:
@echo "Stopping server..."
@pkill -f "node dist/index.js" || echo "No server process found"
# PM2 commands
pm2-setup:
@echo "Installing PM2 globally..."
npm install -g pm2
pm2-start: build
@echo "Starting server with PM2..."
pm2 start ecosystem.config.js
pm2-stop:
@echo "Stopping PM2 server..."
pm2 stop mcp-remote-server
pm2-restart:
@echo "Restarting PM2 server..."
pm2 restart mcp-remote-server
pm2-status:
@echo "PM2 status:"
pm2 status
pm2-logs:
@echo "Showing PM2 logs..."
pm2 logs mcp-remote-server
pm2-delete:
@echo "Deleting PM2 process..."
pm2 delete mcp-remote-server
# Utility commands
restart: stop start
status:
@echo "Checking server status..."
@curl -s http://localhost:3040/health || echo "Server not responding"
logs:
@echo "Server logs (if running with PM2):"
@pm2 logs mcp-remote-server --lines 50 || echo "Use 'make pm2-logs' for PM2 logs"