23f7624596
ADR-166 MCP Bridge Security Lock / Static-source security lock (push) Failing after 0s
ADR-166 MCP Bridge Security Lock / Compose default binds loopback + Mongo has auth (push) Failing after 2s
CodeQL Advanced / Analyze (rust) (push) Failing after 0s
ADR-166 MCP Bridge Security Lock / plugin-agent-federation bindHost default (push) Failing after 1s
ADR-166 MCP Bridge Security Lock / Runtime behavior — 401 + terminal gate + fail-closed (push) Failing after 4s
business-pods-smoke / smoke (push) Failing after 1s
all-plugins-smoke / smoke-all (push) Failing after 2s
CI/CD Pipeline / Security & Code Quality (push) Failing after 1s
CI/CD Pipeline / Test Suite (ubuntu-latest) (push) Failing after 1s
CI/CD Pipeline / Build & Package (macos-latest) (push) Has been skipped
CI/CD Pipeline / Build & Package (ubuntu-latest) (push) Has been skipped
CI/CD Pipeline / Build & Package (windows-latest) (push) Has been skipped
CI/CD Pipeline / Documentation & Examples (push) Failing after 1s
Clone Tracker (14-day rolling) / Snapshot clones for ruflo ecosystem (push) Failing after 1s
CodeQL Advanced / Analyze (actions) (push) Failing after 1s
CodeQL Advanced / Analyze (javascript-typescript) (push) Failing after 1s
federation-peer-rust / stable-noop (push) Failing after 1s
metaharness-ci / score (push) Failing after 1s
metaharness-ci / router-compat (push) Failing after 0s
metaharness-ci / similarity-tests (push) Failing after 0s
no-agentbbs-smoke / smoke-without-agentbbs (push) Failing after 1s
V3 CI/CD Pipeline / Build V3 (windows-latest) (push) Has been skipped
codex-integration-audit / Codex integration audit (push) Failing after 1s
helpers-manifest-guard / guard (push) Failing after 1s
🔗 Cross-Agent Integration Tests / 🤝 Agent Coordination Tests (push) Has been skipped
🔗 Cross-Agent Integration Tests / 🧠 Memory Sharing Integration (push) Has been skipped
🔗 Cross-Agent Integration Tests / 🛡️ Fault Tolerance Tests (push) Has been skipped
🔗 Cross-Agent Integration Tests / ⚡ Performance Integration Tests (push) Has been skipped
metaharness-ci / mcp-scan (push) Failing after 1s
metaharness-ci / eject-dryrun (push) Failing after 1s
metaharness-ci / metaharness-real-data (push) Failing after 0s
no-cli-optdep-bloat-2561 / guard (push) Failing after 1s
no-metaharness-smoke / smoke-without-metaharness (push) Failing after 1s
no-phantom-agentic-flow-subpath / guard (push) Failing after 1s
🔄 Automated Rollback Manager / 🚨 Failure Detection (push) Failing after 1s
V3 CI/CD Pipeline / Plugin hooks smoke / ubuntu-latest / Node 22 (push) Failing after 1s
V3 CI/CD Pipeline / ruflo-graph-intelligence build + test smoke (#2044, ADR-123) (push) Failing after 1s
CVE Audit Gate / Audit root (critical-blocking) (push) Failing after 2s
cost-tracker-smoke / smoke (push) Failing after 3s
oia-audit-weekly / audit (push) Failing after 2s
ruflo-agent-smoke / ruflo-agent structural smoke (push) Failing after 1s
📊 Status Badges Update / 📊 Update Status Badges (push) Failing after 1s
V3 CI/CD Pipeline / Static regression guards (#2267 YAML + (push) Failing after 1s
V3 CI/CD Pipeline / Test V3 Packages (push) Failing after 0s
V3 CI/CD Pipeline / agent_execute provider routing smoke (#2042) (push) Failing after 0s
CVE Audit Gate / Audit v3 (critical-blocking) (push) Failing after 1s
federation-peer-rust / stable-native (push) Failing after 2s
🔗 Cross-Agent Integration Tests / 🚀 Integration Test Setup (push) Failing after 2s
neural-trader-smoke / runtime-smoke (push) Failing after 1s
V3 CI/CD Pipeline / Build V3 (macos-latest) (push) Has been skipped
V3 CI/CD Pipeline / Build V3 (ubuntu-latest) (push) Has been skipped
V3 CI/CD Pipeline / Type Check V3 (push) Failing after 1s
V3 CI/CD Pipeline / Smoke (no better-sqlite3) / ubuntu-latest / Node 24 (push) Failing after 1s
V3 CI/CD Pipeline / Smoke (no better-sqlite3) / ubuntu-latest / Node 22 (push) Failing after 2s
V3 CI/CD Pipeline / browser rvf create flag smoke (#2015) (push) Failing after 0s
V3 CI/CD Pipeline / Dependency review (#2046) (push) Has been skipped
V3 CI/CD Pipeline / Supply-chain audit (#2046) (push) Failing after 0s
V3 CI/CD Pipeline / witness marker drift smoke (#2021) (push) Failing after 1s
V3 CI/CD Pipeline / neural-trader portfolio CG smoke (#2068, ADR-126 Phase 3) (push) Failing after 1s
V3 CI/CD Pipeline / neural-trader backtest signing smoke (#2068, ADR-126 Phase 4) (push) Failing after 1s
V3 CI/CD Pipeline / kg-extract type-import classification smoke (#2049) (push) Failing after 0s
V3 CI/CD Pipeline / witness verify precondition smoke (#1880) (push) Failing after 2s
V3 CI/CD Pipeline / neural-trader pipeline risk-gate smoke (#2068, ADR-126 Phase 5) (push) Failing after 0s
V3 CI/CD Pipeline / neural-trader feature attribution smoke (#2068, ADR-126 Phase 6) (push) Failing after 0s
V3 CI/CD Pipeline / plugin-registry signature verification smoke (#1922, CWE-347) (push) Failing after 4s
V3 CI/CD Pipeline / memory stats legacy-DB smoke (#2120) (push) Failing after 4s
V3 CI/CD Pipeline / github deprecated actions smoke (#2089, ADR-127 Phase 3) (push) Failing after 1s
V3 CI/CD Pipeline / graph query + pathfinder smoke (ADR-130 P2+P5) (push) Has been skipped
V3 CI/CD Pipeline / graph trajectory hooks smoke (ADR-130 P3) (push) Has been skipped
V3 CI/CD Pipeline / graph plugin adapter smoke (ADR-130 P4) (push) Has been skipped
V3 CI/CD Pipeline / graph benchmark (ADR-130 P6) (push) Has been skipped
V3 CI/CD Pipeline / statusline generator delegation smoke (#2195) (push) Failing after 1s
V3 CI/CD Pipeline / wizard init regression guard (#2206 (push) Failing after 1s
V3 CI/CD Pipeline / memory no-stray-db smoke (ADR-125 P7) (push) Failing after 1s
V3 CI/CD Pipeline / github-safe injection smoke (#2089, ADR-127 Phase 1) (push) Failing after 1s
V3 CI/CD Pipeline / github actions pin smoke (#2089, ADR-127 Phase 1) (push) Failing after 1s
V3 CI/CD Pipeline / github attribution opt-in smoke (#2089, ADR-127 Phase 4) (push) Failing after 1s
V3 CI/CD Pipeline / pre-bash hook safety smoke (#2017) (push) Failing after 1s
V3 CI/CD Pipeline / Memory import smoke / ubuntu-latest (push) Failing after 0s
V3 CI/CD Pipeline / MCP protocol smoke / ubuntu-latest (push) Failing after 2s
V3 CI/CD Pipeline / ruvllm WASM auto-init smoke (#2086) (push) Failing after 4s
V3 CI/CD Pipeline / MCP paired-tool round-trip smoke (#1889) (push) Failing after 1s
V3 CI/CD Pipeline / Plugin package install-safety (#1902/#1903/#1904) (push) Failing after 1s
V3 CI/CD Pipeline / Tool description discoverability (ADR-112) (push) Failing after 3s
V3 CI/CD Pipeline / CLI npx-install smoke (#1147 / (22) (push) Failing after 1s
V3 CI/CD Pipeline / CLI npx-install smoke (#1147 / (24) (push) Failing after 1s
V3 CI/CD Pipeline / Windows hook shim smoke (#2132) / ubuntu-latest (push) Failing after 2s
V3 CI/CD Pipeline / Windows hook execution smoke (#2132) / ubuntu-latest (push) Failing after 1s
V3 CI/CD Pipeline / Windows init hooks smoke (#2132) / ubuntu-latest (push) Failing after 1s
V3 CI/CD Pipeline / Vector-index dimension audit (#1947) (push) Failing after 0s
V3 CI/CD Pipeline / Hook-command install safety (#1921) (push) Failing after 1s
V3 CI/CD Pipeline / ToolOutputGuardrail smoke (ADR-131, (push) Failing after 1s
V3 CI/CD Pipeline / init-bundle invariants smoke (#2095, ADR-128 Phase 5) (push) Failing after 1s
V3 CI/CD Pipeline / wasm provider bridge smoke (ADR-129 P1) (push) Failing after 2s
V3 CI/CD Pipeline / wasm gallery CRUD smoke (ADR-129 P3) (push) Failing after 1s
V3 CI/CD Pipeline / wasm plugin bridge smoke (ADR-129 P4) (push) Failing after 0s
V3 CI/CD Pipeline / wasm compose smoke (ADR-129 P2) (push) Failing after 4s
V3 CI/CD Pipeline / graph schema smoke (ADR-130 P1) (push) Failing after 0s
Validate Marketplace / validate (push) Failing after 1s
🔍 Verification Pipeline / 🚀 Setup Verification (push) Failing after 1s
🔍 Verification Pipeline / 🛡️ Security Verification (push) Has been skipped
🔍 Verification Pipeline / 📝 Code Quality (push) Has been skipped
🔍 Verification Pipeline / 🧪 Test Verification (${{ matrix.os }}, Node ${{ matrix.node }}) (push) Has been skipped
🔍 Verification Pipeline / 🏗️ Build Verification (push) Has been skipped
🔍 Verification Pipeline / 📚 Documentation Verification (push) Has been skipped
CVE Audit Gate / High-severity report (warn only) (push) Has been cancelled
🔄 Automated Rollback Manager / 🔄 Execute Rollback (push) Has been cancelled
🔄 Automated Rollback Manager / ✅ Post-Rollback Verification (push) Has been cancelled
🔄 Automated Rollback Manager / 📊 Rollback Monitoring (push) Has been cancelled
V3 CI/CD Pipeline / Windows init hooks smoke (#2132) / windows-latest (push) Has been cancelled
V3 CI/CD Pipeline / Windows hook execution smoke (#2132) / macos-latest (push) Has been cancelled
V3 CI/CD Pipeline / Windows hook execution smoke (#2132) / windows-latest (push) Has been cancelled
🔄 Automated Rollback Manager / ⏳ Manual Rollback Approval (push) Has been cancelled
V3 CI/CD Pipeline / MCP protocol smoke / macos-latest (push) Has been cancelled
V3 CI/CD Pipeline / Memory import smoke / macos-latest (push) Has been cancelled
V3 CI/CD Pipeline / Windows hook shim smoke (#2132) / macos-latest (push) Has been cancelled
V3 CI/CD Pipeline / Windows hook shim smoke (#2132) / windows-latest (push) Has been cancelled
V3 CI/CD Pipeline / Windows init hooks smoke (#2132) / macos-latest (push) Has been cancelled
V3 CI/CD Pipeline / Witness verify (signed manifest) / macos-latest (push) Has been cancelled
V3 CI/CD Pipeline / Witness verify (signed manifest) / ubuntu-latest (push) Has been cancelled
V3 CI/CD Pipeline / Witness verify (signed manifest) / windows-latest (push) Has been cancelled
V3 CI/CD Pipeline / Publish to npm (alpha) (push) Has been cancelled
V3 CI/CD Pipeline / Smoke (no better-sqlite3) / macos-latest / Node 22 (push) Has been cancelled
V3 CI/CD Pipeline / Plugin hooks smoke / macos-latest / Node 22 (push) Has been cancelled
CI/CD Pipeline / Deploy & Release (push) Has been cancelled
CI/CD Pipeline / CI Status (push) Has been cancelled
🔗 Cross-Agent Integration Tests / 📊 Integration Test Report (push) Has been cancelled
🔄 Automated Rollback Manager / 🔍 Pre-Rollback Validation (push) Has been cancelled
🔍 Verification Pipeline / ⚡ Performance Verification (push) Has been cancelled
🔍 Verification Pipeline / 📊 Verification Report (push) Has been cancelled
295 lines
6.7 KiB
Bash
Executable File
295 lines
6.7 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# Claude-Flow MCP Server V3 Startup Script
|
|
#
|
|
# Usage:
|
|
# ./start-mcp.sh [options]
|
|
#
|
|
# Options:
|
|
# --transport, -t <type> Transport: stdio, http, websocket (default: stdio)
|
|
# --host <host> Server host (default: localhost)
|
|
# --port, -p <port> Server port (default: 3000)
|
|
# --log-level, -l <level> Log level: debug, info, warn, error (default: info)
|
|
# --daemon, -d Run as daemon
|
|
# --help Show help
|
|
#
|
|
# Examples:
|
|
# ./start-mcp.sh # Start with defaults
|
|
# ./start-mcp.sh -t http -p 8080 # Start HTTP on port 8080
|
|
# ./start-mcp.sh --daemon # Run as background daemon
|
|
#
|
|
|
|
set -e
|
|
|
|
# Script directory
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
V3_DIR="$(dirname "$SCRIPT_DIR")"
|
|
PROJECT_ROOT="$(dirname "$V3_DIR")"
|
|
|
|
# Default configuration
|
|
TRANSPORT="stdio"
|
|
HOST="localhost"
|
|
PORT="3000"
|
|
LOG_LEVEL="info"
|
|
DAEMON=false
|
|
|
|
# PID file location
|
|
PID_FILE="${TMPDIR:-/tmp}/claude-flow-mcp.pid"
|
|
LOG_FILE="${TMPDIR:-/tmp}/claude-flow-mcp.log"
|
|
|
|
# Colors for output
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[0;33m'
|
|
BLUE='\033[0;34m'
|
|
NC='\033[0m' # No Color
|
|
|
|
# Print functions
|
|
print_info() {
|
|
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"
|
|
}
|
|
|
|
# Show help
|
|
show_help() {
|
|
cat << EOF
|
|
Claude-Flow MCP Server V3 Startup Script
|
|
|
|
Usage:
|
|
./start-mcp.sh [options]
|
|
|
|
Options:
|
|
--transport, -t <type> Transport type: stdio, http, websocket (default: stdio)
|
|
--host <host> Server host (default: localhost)
|
|
--port, -p <port> Server port (default: 3000)
|
|
--log-level, -l <level> Log level: debug, info, warn, error (default: info)
|
|
--daemon, -d Run as background daemon
|
|
--stop Stop running server
|
|
--status Show server status
|
|
--help Show this help message
|
|
|
|
Examples:
|
|
./start-mcp.sh # Start with defaults (stdio)
|
|
./start-mcp.sh -t http -p 8080 # Start HTTP server on port 8080
|
|
./start-mcp.sh --daemon # Run as background daemon
|
|
./start-mcp.sh --stop # Stop the daemon
|
|
./start-mcp.sh --status # Check if server is running
|
|
|
|
Environment Variables:
|
|
MCP_TRANSPORT Override transport type
|
|
MCP_HOST Override host
|
|
MCP_PORT Override port
|
|
MCP_LOG_LEVEL Override log level
|
|
|
|
EOF
|
|
}
|
|
|
|
# Check if server is running
|
|
is_running() {
|
|
if [ -f "$PID_FILE" ]; then
|
|
local pid
|
|
pid=$(cat "$PID_FILE")
|
|
if kill -0 "$pid" 2>/dev/null; then
|
|
return 0
|
|
fi
|
|
fi
|
|
return 1
|
|
}
|
|
|
|
# Get server PID
|
|
get_pid() {
|
|
if [ -f "$PID_FILE" ]; then
|
|
cat "$PID_FILE"
|
|
fi
|
|
}
|
|
|
|
# Stop server
|
|
stop_server() {
|
|
if ! is_running; then
|
|
print_info "MCP Server is not running"
|
|
return 0
|
|
fi
|
|
|
|
local pid
|
|
pid=$(get_pid)
|
|
print_info "Stopping MCP Server (PID: $pid)..."
|
|
|
|
# Send SIGTERM for graceful shutdown
|
|
kill -TERM "$pid" 2>/dev/null || true
|
|
|
|
# Wait for process to exit
|
|
local timeout=30
|
|
while [ $timeout -gt 0 ] && kill -0 "$pid" 2>/dev/null; do
|
|
sleep 1
|
|
((timeout--))
|
|
done
|
|
|
|
# Force kill if still running
|
|
if kill -0 "$pid" 2>/dev/null; then
|
|
print_warning "Forcing shutdown..."
|
|
kill -KILL "$pid" 2>/dev/null || true
|
|
fi
|
|
|
|
# Remove PID file
|
|
rm -f "$PID_FILE"
|
|
|
|
print_success "MCP Server stopped"
|
|
}
|
|
|
|
# Show status
|
|
show_status() {
|
|
if is_running; then
|
|
local pid
|
|
pid=$(get_pid)
|
|
print_success "MCP Server is running (PID: $pid)"
|
|
|
|
# Show additional info if HTTP transport
|
|
if [ -f "$LOG_FILE" ]; then
|
|
echo ""
|
|
echo "Recent logs:"
|
|
tail -n 5 "$LOG_FILE" 2>/dev/null || true
|
|
fi
|
|
else
|
|
print_info "MCP Server is not running"
|
|
return 1
|
|
fi
|
|
}
|
|
|
|
# Parse arguments
|
|
while [[ $# -gt 0 ]]; do
|
|
case $1 in
|
|
--transport|-t)
|
|
TRANSPORT="$2"
|
|
shift 2
|
|
;;
|
|
--host)
|
|
HOST="$2"
|
|
shift 2
|
|
;;
|
|
--port|-p)
|
|
PORT="$2"
|
|
shift 2
|
|
;;
|
|
--log-level|-l)
|
|
LOG_LEVEL="$2"
|
|
shift 2
|
|
;;
|
|
--daemon|-d)
|
|
DAEMON=true
|
|
shift
|
|
;;
|
|
--stop)
|
|
stop_server
|
|
exit 0
|
|
;;
|
|
--status)
|
|
show_status
|
|
exit $?
|
|
;;
|
|
--help)
|
|
show_help
|
|
exit 0
|
|
;;
|
|
*)
|
|
print_error "Unknown option: $1"
|
|
show_help
|
|
exit 1
|
|
;;
|
|
esac
|
|
done
|
|
|
|
# Override from environment variables
|
|
TRANSPORT="${MCP_TRANSPORT:-$TRANSPORT}"
|
|
HOST="${MCP_HOST:-$HOST}"
|
|
PORT="${MCP_PORT:-$PORT}"
|
|
LOG_LEVEL="${MCP_LOG_LEVEL:-$LOG_LEVEL}"
|
|
|
|
# Check if already running
|
|
if is_running; then
|
|
local pid
|
|
pid=$(get_pid)
|
|
print_warning "MCP Server already running (PID: $pid)"
|
|
print_info "Use --stop to stop the server first"
|
|
exit 1
|
|
fi
|
|
|
|
# Check for Node.js
|
|
if ! command -v node &> /dev/null; then
|
|
print_error "Node.js is not installed"
|
|
exit 1
|
|
fi
|
|
|
|
# Check for npx
|
|
if ! command -v npx &> /dev/null; then
|
|
print_error "npx is not available"
|
|
exit 1
|
|
fi
|
|
|
|
# Server entry point
|
|
SERVER_ENTRY="$V3_DIR/mcp/server-entry.ts"
|
|
|
|
if [ ! -f "$SERVER_ENTRY" ]; then
|
|
print_error "Server entry point not found: $SERVER_ENTRY"
|
|
exit 1
|
|
fi
|
|
|
|
# Build command
|
|
CMD="npx tsx $SERVER_ENTRY \
|
|
--transport $TRANSPORT \
|
|
--host $HOST \
|
|
--port $PORT \
|
|
--log-level $LOG_LEVEL"
|
|
|
|
# Start server
|
|
print_info "Starting Claude-Flow MCP Server V3..."
|
|
print_info " Transport: $TRANSPORT"
|
|
print_info " Host: $HOST"
|
|
print_info " Port: $PORT"
|
|
print_info " Log level: $LOG_LEVEL"
|
|
|
|
if [ "$DAEMON" = true ]; then
|
|
print_info " Mode: daemon"
|
|
|
|
# Start in background
|
|
nohup $CMD >> "$LOG_FILE" 2>&1 &
|
|
echo $! > "$PID_FILE"
|
|
|
|
# Wait a moment for startup
|
|
sleep 2
|
|
|
|
if is_running; then
|
|
local pid
|
|
pid=$(get_pid)
|
|
print_success "MCP Server started (PID: $pid)"
|
|
print_info "Logs: $LOG_FILE"
|
|
|
|
if [ "$TRANSPORT" = "http" ]; then
|
|
print_info "Health check: http://$HOST:$PORT/health"
|
|
print_info "RPC endpoint: http://$HOST:$PORT/rpc"
|
|
elif [ "$TRANSPORT" = "websocket" ]; then
|
|
print_info "WebSocket: ws://$HOST:$PORT/ws"
|
|
fi
|
|
else
|
|
print_error "Failed to start MCP Server"
|
|
print_info "Check logs: $LOG_FILE"
|
|
exit 1
|
|
fi
|
|
else
|
|
print_info " Mode: foreground (Ctrl+C to stop)"
|
|
echo ""
|
|
|
|
# Run in foreground
|
|
exec $CMD
|
|
fi
|