Skip to main content
Glama

MCP Launch Assistant

by mcpassistant

MCP Launch Assistant

⚠️ DEPRECATED: This service has been replaced by mcp-services-assistant which provides better separation of concerns and improved LaunchAgent management. Please migrate to the new service.

Service lifecycle management for the MCP ecosystem.

Overview

The Launch Assistant manages the lifecycle of all MCP services in the ecosystem with integrated health monitoring and auto-restart capabilities.

Features

  • Service Management: Start, stop, restart, and monitor services
  • Health Monitoring: Automatic health checks every 30 seconds for services with ports
  • Auto-Restart: Automatically restart failed services (up to 3 attempts by default)
  • Process Tracking: Track PIDs, uptime, restart counts, and exit codes
  • Log Capture: Capture stdout/stderr and keep last 100 lines in memory
  • Graceful Shutdown: 10-second grace period before force-killing
  • Service Discovery: Auto-discover services from registry
  • LaunchAgent Support: macOS system integration for auto-start

Installation

npm install

Usage

As MCP Server (Claude Desktop)

Configure in Claude Desktop settings:

{ "mcpServers": { "launch": { "command": "node", "args": ["/path/to/mcp-launch-assistant/index.js"] } } }

As HTTP Service

npm start

The service will be available at http://localhost:9102

Available Tools

list_services

List all registered services and their status.

await client.callTool({ name: 'list_services', arguments: { category: 'platform' // optional: filter by category } });

start_service

Start a specific service.

await client.callTool({ name: 'start_service', arguments: { service: 'mcp-gateway-assistant', mode: 'dual' // 'mcp', 'http', or 'dual' } });

stop_service

Stop a running service.

await client.callTool({ name: 'stop_service', arguments: { service: 'mcp-gateway-assistant' } });

restart_service

Restart a service.

await client.callTool({ name: 'restart_service', arguments: { service: 'mcp-gateway-assistant' } });

service_status

Get detailed status of a service including health and logs.

await client.callTool({ name: 'service_status', arguments: { service: 'mcp-gateway-assistant' } }); // Returns: { service: 'mcp-gateway-assistant', status: 'running', pid: 12345, startedAt: '2025-01-13T10:00:00Z', uptime: 3600000, restarts: 0, health: { status: 'healthy', responseTime: '45ms' }, recentLogs: [...] }

setup_launchagent

Create a LaunchAgent for automatic startup (macOS only).

await client.callTool({ name: 'setup_launchagent', arguments: { service: 'mcp-gateway-assistant' } });

Configuration

Constructor Options

const launcher = new McpLaunchAssistant({ healthCheckInterval: 30000, // Check health every 30 seconds autoRestart: true, // Auto-restart failed services maxRestarts: 3, // Max restart attempts restartDelay: 5000, // Wait 5 seconds before restart gracefulShutdownTimeout: 10000 // 10 seconds for graceful shutdown });

Environment Variables

SERVICE_PORT=9103 # Launch assistant port SERVICE_MODE=dual # Default service mode LOG_LEVEL=info # Logging level NODE_ENV=production # Environment

Data Storage

  • Service metadata: ~/Documents/mcp-assistant/data/launch-assistant/services.json
  • Process info: ~/Documents/mcp-assistant/data/launch-assistant/processes.json
  • Logs: ~/Documents/mcp-assistant/logs/launch-assistant.log

Development

# Run tests npm test # Development mode npm run dev

Events

The launcher emits these events:

  • serviceStarted - Service successfully started
  • serviceStopped - Service stopped
  • serviceRestarted - Service restarted after failure
  • serviceUnhealthy - Health check failed
  • serviceExited - Process exited
  • serviceLog - New log entry
  • serviceError - Error log entry

Troubleshooting

Service won't start

  • Check if port is already in use
  • Verify service directory exists
  • Check NODE_PATH environment variable
  • Review service logs with service_status

Health checks failing

  • Ensure service implements /health endpoint
  • Check if service is actually listening on configured port
  • Increase health check timeout if service is slow

Auto-restart not working

  • Check if max restarts exceeded
  • Verify autoRestart option is enabled
  • Check logs for crash reasons

LaunchAgent not working

  • Ensure proper permissions
  • Check ~/Library/LaunchAgents/
  • Review system logs with log show --predicate 'subsystem == "com.mcpassistant"'
-
security - not tested
F
license - not found
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

Manages the lifecycle of MCP services with health monitoring, auto-restart capabilities, and process tracking. Enables users to start, stop, restart, and monitor MCP services through natural language commands.

  1. Overview
    1. Features
      1. Installation
        1. Usage
          1. As MCP Server (Claude Desktop)
          2. As HTTP Service
        2. Available Tools
          1. list_services
          2. start_service
          3. stop_service
          4. restart_service
          5. service_status
          6. setup_launchagent
        3. Configuration
          1. Constructor Options
          2. Environment Variables
        4. Data Storage
          1. Development
            1. Events
              1. Troubleshooting
                1. Service won't start
                2. Health checks failing
                3. Auto-restart not working
                4. LaunchAgent not working

              Related MCP Servers

              • A
                security
                A
                license
                A
                quality
                A dynamic service that creates and manages Model Context Protocol (MCP) servers, allowing users to spawn, customize, and control multiple MCP servers as child processes.
                Last updated -
                5
                0
                91
                MIT License
                • Apple
                • Linux
              • -
                security
                A
                license
                -
                quality
                An enhanced Python-based MCP server that enables complete VM lifecycle management and monitoring of Proxmox virtualization platforms through natural language, with 11 REST API endpoints for seamless integration.
                Last updated -
                9
                MIT License
                • Apple
                • Linux
              • A
                security
                A
                license
                A
                quality
                An MCP server that allows users to list and kill operating system processes through natural language queries, making process management more intuitive across Windows, macOS, and Linux.
                Last updated -
                2
                7
                Python
                GPL 3.0
                • Apple
                • Linux
              • -
                security
                A
                license
                -
                quality
                An MCP server that lets agents and humans monitor and control long-running processes, reducing copy-pasting between AI tools and enabling multiple agents to interact with the same process outputs.
                Last updated -
                4
                MIT License

              View all related MCP servers

              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/mcpassistant/mcp-launch-assistant'

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