coolify-mcp-server

GoCoder7/coolify-mcp-server

3.2

If you are the rightful owner of coolify-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

The Coolify MCP Server is a 4-tool unified Model Context Protocol server designed for integration with the Coolify deployment platform, enabling AI assistants to manage application deployment, configuration, and monitoring.

Tools
4
Resources
0
Prompts
0

Coolify MCP Server

A 4-tool unified Model Context Protocol (MCP) server for Coolify deployment platform integration. This server enables AI assistants to interact with Coolify Self-hosted instances for application deployment, management, and monitoring.

๐ŸŽฏ Optimized for VS Code's 128-tool limit with 87% reduction (19โ†’4 tools)

Features

๐Ÿš€ Application Management

  • Deploy applications with optional force deployment and branch selection
  • Get detailed application information and status
  • List applications with filtering capabilities
  • Start, stop, and restart applications
  • Monitor deployment status and health
  • Create new applications

๐Ÿ”ง Environment & Configuration

  • Update and retrieve environment variables
  • Configure domains and SSL certificates
  • Retrieve application logs for debugging
  • Manage sensitive and build-time variables

๐Ÿ–ฅ๏ธ System Management

  • List and monitor servers
  • Manage teams and permissions
  • View deployed services (databases, caches, etc.)
  • Test API connectivity and system health

๐Ÿ“š Built-in Documentation

  • Search Documentation: Find relevant Coolify guides and references
  • API Reference: Access comprehensive API documentation with examples
  • Troubleshooting Guides: Get help for common deployment and configuration issues
  • Topic-specific Help: Get targeted documentation for specific features

Perfect for AI agents without Context7 MCP access - no external documentation dependencies required!

๐Ÿงช Complete Testing Suite

  • 100% Test Success Rate: Comprehensive integration tests
  • Demo Environment: Full Coolify setup with Docker Compose
  • Browser Automation: MCP Playwright integration
  • Real API Testing: Direct Coolify instance validation

Prerequisites

  • Node.js 18+
  • A running Coolify Self-hosted instance
  • Coolify API token with appropriate permissions

Installation

  1. Clone or download this repository

    git clone <repository-url>
    cd coolify-mcp-server
    
  2. Install dependencies

    npm install
    
  3. Configure environment variables

    cp .env.example .env
    # Edit .env with your Coolify instance details
    
  4. Build the project

    npm run build
    

Configuration

Environment Variables

Create a .env file with the following variables:

# Required: Your Coolify instance URL
COOLIFY_BASE_URL=https://your-coolify-instance.com

# Required: API token from Coolify
COOLIFY_API_TOKEN=your-api-token-here

# Optional: Team ID for scoped access
COOLIFY_TEAM_ID=your-team-id

Getting Your API Token

  1. Log into your Coolify dashboard
  2. Go to Settings โ†’ Keys & Tokens โ†’ API Tokens
  3. Click Create New Token
  4. Choose permissions:
    • read-only: View data only
    • read:sensitive: View sensitive data
    • *: Full access (recommended for automation)
  5. Copy the generated token to your .env file

โš ๏ธ Security Note: API tokens are shown only once. Store them securely and never commit them to version control.

Usage

Development Mode

npm run dev

Production Mode

npm start

Integration with AI Assistants

This MCP server provides 4 unified tools for AI assistants, optimized for the 128-tool limit in VS Code:

๐Ÿ“ฑ Application Management (coolify_application_management)

Unified tool with 8 actions:

  • deploy - Deploy an application with optional force deployment and branch selection
  • get - Get detailed application information
  • list - List all applications with filtering capabilities
  • status - Get deployment status and health
  • start - Start an application
  • stop - Stop an application
  • restart - Restart an application
  • create - Create a new application
โš™๏ธ Environment Configuration (coolify_environment_configuration)

Unified tool for environment and domain management:

  • env_vars - Update and retrieve environment variables
  • domains - Configure domains and SSL certificates
  • logs - Retrieve application logs for debugging
๐Ÿ–ฅ๏ธ System Management (coolify_system_management)

Unified tool for server and infrastructure:

  • servers - List and monitor servers
  • teams - Manage teams and permissions
  • services - View deployed services (databases, caches, etc.)
  • health_check - Test API connectivity and system health
๐Ÿ“š Documentation (coolify_documentation)

Unified documentation tool with 6 actions:

  • search - Search built-in Coolify documentation
  • get - Get documentation for specific topics
  • api_reference - Get API reference documentation with examples
  • troubleshooting - Get troubleshooting guides for common issues
  • topics - List available documentation topics
  • api - Get API endpoint documentation

Perfect for AI agents without Context7 MCP access - no external documentation dependencies required!

Example Usage

Here are some example commands you can use with AI assistants using the unified tools:

Application Management:

"Deploy my application with ID 'app-123' using force deployment"
"Get details for application 'my-web-app'"
"List all running applications"
"Check the status of application 'app-456'"
"Start application 'my-backend'"
"Restart application 'frontend-app'"

Environment Configuration:

"Update environment variables for 'app-789': set DATABASE_URL and REDIS_URL"
"Get current environment variables for 'my-app'"
"Set the domain 'example.com' for application 'app-456' with HTTPS enabled"
"Get the logs for application 'my-web-app'"

System Management:

"List all servers and their status"
"Get information about teams"
"Show all running services"
"Check system health and API connectivity"

Documentation:

"Search documentation for 'deployment failed'"
"Get troubleshooting help for SSL certificate issues"
"Show me API reference for environment variables"
"List all available documentation topics"
"Get API documentation for applications endpoint"

Documentation Features

The MCP server includes comprehensive built-in documentation accessed through the unified coolify_documentation tool:

// Search for deployment-related documentation
await callTool('coolify_documentation', { action: 'search', query: 'deployment failed' });

// Get API reference for applications endpoint
await callTool('coolify_documentation', { action: 'api_reference', endpoint: 'applications' });

// Get troubleshooting help for SSL issues
await callTool('coolify_documentation', { action: 'troubleshooting', issue: 'ssl certificate' });

// List all available topics
await callTool('coolify_documentation', { action: 'topics' });

// Get general documentation on environment variables
await callTool('coolify_documentation', { action: 'get', topic: 'environment variables' });

Built-in Documentation Covers:

  • API Reference with examples
  • Step-by-step deployment guides
  • Environment variable configuration
  • Domain and SSL setup
  • Common troubleshooting scenarios

API Reference

This MCP server interacts with the Coolify API. For detailed API documentation, visit:

Architecture

coolify-mcp-server/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ index.ts              # Main MCP server (unified version)
โ”‚   โ”œโ”€โ”€ types/
โ”‚   โ”‚   โ”œโ”€โ”€ coolify.ts        # Coolify API types
โ”‚   โ”‚   โ””โ”€โ”€ mcp.ts           # MCP tool schemas
โ”‚   โ”œโ”€โ”€ utils/
โ”‚   โ”‚   โ””โ”€โ”€ coolify-client.ts # Coolify API client
โ”‚   โ””โ”€โ”€ tools/
โ”‚       โ”œโ”€โ”€ application-unified.ts    # Unified application management
โ”‚       โ”œโ”€โ”€ environment-unified.ts    # Unified environment & domain tools
โ”‚       โ”œโ”€โ”€ system-unified.ts        # Unified system management
โ”‚       โ””โ”€โ”€ documentation-unified.ts  # Unified documentation tools
โ”œโ”€โ”€ demo-server/
โ”‚   โ”œโ”€โ”€ docker-compose.yml    # Complete Coolify demo environment
โ”‚   โ””โ”€โ”€ DEMO-SETUP.md        # Demo setup instructions
โ”œโ”€โ”€ .env.example             # Environment configuration template
โ”œโ”€โ”€ test-*.js               # Comprehensive test suites
โ”œโ”€โ”€ tsconfig.json           # TypeScript configuration
โ””โ”€โ”€ package.json           # Project dependencies

Demo Environment

This project includes a complete Coolify demo environment for testing:

cd demo-server
docker compose up -d

Includes:

  • โœ… Coolify latest version
  • โœ… PostgreSQL database
  • โœ… Redis cache
  • โœ… Soketi WebSocket server
  • โœ… Pre-configured demo users
  • โœ… Web interface at http://localhost:8000

Demo Credentials:

  • Email: test@example.com
  • Password: password123

Development

Building

npm run build

Type Checking

npm run type-check

Testing Documentation Features

node test-docs.js

This will test all built-in documentation features without requiring a Coolify connection.

Testing with Demo Environment

# Start the demo environment
cd demo-server && docker compose up -d

# Run comprehensive tests
npm test

Test Suites:

  • test-integration.js - Docker environment and build tests
  • test-mcp-simple.js - MCP server functionality tests
  • test-web-interface.js - Playwright browser automation tests
  • test-real-coolify.js - Real Coolify integration tests

Expected Results: 100% test success rate

Cleaning

npm run clean

Supported Coolify Versions

This MCP server is designed to work with:

  • Coolify v4.x (Self-hosted)
  • API version: v1

Security Considerations

  • API Tokens: Store API tokens securely using environment variables
  • Network Access: Ensure your Coolify instance is accessible from where this MCP server runs
  • Permissions: Use appropriate API token permissions based on your use case
  • HTTPS: Always use HTTPS for production Coolify instances

Troubleshooting

Common Issues

  1. Connection Failed

    • Verify COOLIFY_BASE_URL is correct and accessible
    • Check that API token has proper permissions
    • Ensure Coolify instance is running
  2. Permission Denied

    • Verify API token has sufficient permissions
    • Check if team ID is required for your setup
  3. Application Not Found

    • Verify application ID is correct
    • Ensure you have access to the application

Debug Mode

Enable debug logging by setting:

NODE_ENV=development npm run dev

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

License

MIT License - see LICENSE file for details

Support

Changelog

v1.0.0

  • โœ… 4 Unified Tools: Optimized for VS Code's 128-tool limit
  • โœ… Complete Demo Environment: Docker Compose setup with working Coolify instance
  • โœ… 100% Test Coverage: Comprehensive test suites with 100% success rate
  • โœ… Built-in Documentation: No external dependencies required
  • โœ… Browser Automation: MCP Playwright integration for testing
  • โœ… Application Management: Deploy, manage, and monitor applications
  • โœ… Environment Configuration: Manage env vars, domains, and logs
  • โœ… System Management: Server, team, and service management
  • โœ… Full TypeScript Support: Complete type safety with Zod validation