Skip to content

dockergiant/rolldev-mcp-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RollDev MCP Server

npm version License: MIT Node.js CI JavaScript RollDev Magento Docker MCP

Trust Score

A Model Context Protocol (MCP) server for RollDev + Magento 2 development environments. This server enables Claude and other LLMs to interact with RollDev projects, manage environments, execute commands, and initialize new Magento 2 projects seamlessly.

Features

Environment Management

  • Environment Control: List, start, and stop RollDev project environments
  • Service Management: Control RollDev system services (database, Redis, OpenSearch, etc.)
  • Project Initialization: Create new Magento 2 projects with automatic configuration

Development Tools

  • Database Operations: Execute SQL queries directly in project databases
  • PHP Script Execution: Run PHP scripts within project containers
  • Magento CLI Access: Execute Magento commands through roll magento
  • Composer Integration: Run Composer commands in project environments

Reliability Features

  • Command Timeouts: All commands have appropriate timeouts to prevent hanging (5-15 min depending on operation)
  • Output File Redirection: Option to save command output to log files for later investigation

Prerequisites

  • RollDev installed and configured
  • Node.js 18+
  • Active RollDev project environments (for some operations)

Installation

Option 1: Using NPM (Recommended)

{
  "mcpServers": {
    "rolldev": {
      "command": "npx",
      "args": [
        "-y",
        "@disrex/rolldev-mcp-server"
      ]
    }
  }
}

Add this configuration to your Claude for Desktop config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Option 2: Manual Setup

  1. Clone this repository:
git clone https://github.com/dockergiant/rolldev-mcp-server.git
cd rolldev-mcp-server
  1. Install dependencies:
npm install
  1. Add to Claude configuration:
{
  "mcpServers": {
    "rolldev": {
      "command": "node",
      "args": ["/path/to/rolldev-mcp-server/server.js"]
    }
  }
}

Available Tools

rolldev_list_environments

Lists all running RollDev environments with structured information including project names, paths, URLs, Docker networks, and container counts.

rolldev_start_project

Starts a RollDev project environment.

  • project_path: Path to the project directory

rolldev_stop_project

Stops a RollDev project environment.

  • project_path: Path to the project directory

rolldev_start_svc

Starts RollDev system services.

  • project_path: Path to the project directory

rolldev_stop_svc

Stops RollDev system services.

  • project_path: Path to the project directory

rolldev_db_query

Executes SQL queries in project databases.

  • project_path: Path to the project directory
  • query: SQL query to execute
  • database: Database name (optional, defaults to "magento")

rolldev_php_script

Runs PHP scripts inside project containers.

  • project_path: Path to the project directory
  • script_path: Path to PHP script relative to project root
  • args: Additional arguments (optional)

rolldev_magento_cli

Executes Magento CLI commands (5 minute timeout).

  • project_path: Path to the project directory
  • command: Magento command (without 'bin/magento' prefix)
  • args: Additional arguments (optional)
  • save_output_to_file: Save full output to a log file (optional, default: false)

rolldev_composer

Runs Composer commands in project environments (10 minute timeout).

  • project_path: Path to the project directory
  • command: Composer command (e.g., "install", "update", "require symfony/console")
  • save_output_to_file: Save full output to a log file (optional, default: false)

rolldev_magento2_init

Initializes new Magento 2 projects with automatic configuration (15 minute timeout).

  • project_name: Project name (lowercase, letters, numbers, hyphens only)
  • magento_version: Magento version (optional, defaults to "2.4.x")
  • target_directory: Target directory (optional, defaults to current directory)

Examples

Here are some example interactions you can try with Claude after setting up the RollDev MCP server:

Basic Environment Management

  1. "Can you list all my RollDev environments?"
  2. "Start the project at /path/to/my-magento-project"
  3. "Stop the services for my current project"

Database Operations

  1. "Run the query 'SELECT * FROM admin_user LIMIT 5' in my project"
  2. "Show me all enabled modules in the database"
  3. "Check the current configuration values for my store"

Magento Development

  1. "Execute 'cache:flush' Magento command in my project"
  2. "Run 'setup:upgrade' on my Magento installation"
  3. "List all available Magento CLI commands"

Project Initialization

  1. "Initialize a new Magento 2.4.7 project called 'my-store'"
  2. "Create a Magento project with the latest version in /Users/dev/projects"

Composer Operations

  1. "Install dependencies with Composer in my project"
  2. "Require the symfony/console package in my project"

Output File Redirection

  1. "Run setup:upgrade and save the output to a file for investigation"
  2. "Execute composer install with output saved to a log file"

Development

# Start in development mode with debugging
npm run dev

# Run tests
npm test

Testing

You can test the server using the MCP Inspector:

npx @modelcontextprotocol/inspector node server.js

Contributing

  1. Fork the repository from dockergiant/rolldev-mcp-server
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

If you encounter any issues or have questions:

  1. Check the GitHub Issues section
  2. Consult the MCP documentation at modelcontextprotocol.io
  3. Open a new issue with detailed reproduction steps

Disrex T-Rex Mascot Waving


Sponsored by

Disrex Logo

About

RollDev MCP Server to use in Ai agents

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •