Files
hive/mcp-server/SERVICE_README.md
anthonyrawlins 268214d971 Major WHOOSH system refactoring and feature enhancements
- Migrated from HIVE branding to WHOOSH across all components
- Enhanced backend API with new services: AI models, BZZZ integration, templates, members
- Added comprehensive testing suite with security, performance, and integration tests
- Improved frontend with new components for project setup, AI models, and team management
- Updated MCP server implementation with WHOOSH-specific tools and resources
- Enhanced deployment configurations with production-ready Docker setups
- Added comprehensive documentation and setup guides
- Implemented age encryption service and UCXL integration

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-27 08:34:48 +10:00

133 lines
3.3 KiB
Markdown

# 🐝 WHOOSH MCP Server Service
This directory contains the systemd service configuration for running the WHOOSH MCP Server as a background daemon with automatic agent discovery.
## 🚀 Quick Start
### 1. Install the Service
```bash
./install-service.sh
```
### 2. Start the Service
```bash
sudo systemctl start whoosh-mcp
```
### 3. Check Status
```bash
sudo systemctl status whoosh-mcp
```
### 4. View Logs
```bash
journalctl -u whoosh-mcp -f
```
## 🛠️ Management Script
Use the provided management script for easy operations:
```bash
# Install service
./whoosh-mcp.sh install
# Start/stop/restart
./whoosh-mcp.sh start
./whoosh-mcp.sh stop
./whoosh-mcp.sh restart
# Monitor
./whoosh-mcp.sh status
./whoosh-mcp.sh logs
./whoosh-mcp.sh follow
# Agent management
./whoosh-mcp.sh discover # Trigger agent discovery
./whoosh-mcp.sh test # Test backend connection
# Remove service
./whoosh-mcp.sh uninstall
```
## ⚙️ Configuration
The service is configured via environment variables in the service file:
- `WHOOSH_API_URL`: WHOOSH backend API endpoint (default: https://whoosh.home.deepblack.cloud/api)
- `WHOOSH_WS_URL`: WebSocket endpoint (default: wss://whoosh.home.deepblack.cloud/socket.io)
- `AUTO_DISCOVERY`: Enable periodic discovery (default: true)
- `DISCOVERY_INTERVAL`: Discovery interval in ms (default: 300000 = 5 minutes)
- `LOG_LEVEL`: Logging level (default: info)
## 🔄 Auto-Discovery
The service automatically:
1. **On Startup**: Scans the network for available Ollama agents
2. **Periodically**: Re-scans every 5 minutes (configurable)
3. **On Signal**: Triggers discovery when receiving SIGHUP (`systemctl reload whoosh-mcp`)
## 📊 Monitoring
### Service Status
```bash
sudo systemctl status whoosh-mcp
```
### Live Logs
```bash
journalctl -u whoosh-mcp -f
```
### Resource Usage
```bash
sudo systemctl show whoosh-mcp --property=MemoryCurrent,CPUUsageNSec
```
### Agent Status
```bash
curl -s https://whoosh.home.deepblack.cloud/api/agents | jq
```
## 🔧 Troubleshooting
### Service Won't Start
1. Check logs: `journalctl -u whoosh-mcp -n 50`
2. Verify backend connectivity: `./whoosh-mcp.sh test`
3. Check file permissions: `ls -la /home/tony/AI/projects/whoosh/mcp-server/`
### Auto-Discovery Issues
1. Check network connectivity to agent machines
2. Verify Ollama is running on target machines
3. Manually trigger discovery: `./whoosh-mcp.sh discover`
### High Resource Usage
1. Check discovery interval: `grep DISCOVERY_INTERVAL /etc/systemd/system/whoosh-mcp.service`
2. Monitor agent count: `curl -s https://whoosh.home.deepblack.cloud/api/agents | jq '.total'`
3. Adjust memory limits in service file if needed
## 🛡️ Security
The service runs with:
- Non-root user (tony)
- Restricted filesystem access
- Memory and CPU limits
- Private tmp directory
- No new privileges
## 📁 Files
- `whoosh-mcp.service` - Systemd service definition
- `install-service.sh` - Service installation script
- `whoosh-mcp.sh` - Management script
- `logs/` - Log directory (created by service)
- `data/` - Data directory (created by service)
## 🔗 Integration
The service integrates with:
- **WHOOSH Backend**: https://whoosh.home.deepblack.cloud/api
- **Socket.IO**: wss://whoosh.home.deepblack.cloud/socket.io
- **Systemd**: Full systemd service lifecycle
- **Journal**: Centralized logging via systemd-journald