@bwlab/prestashop-devtools-mcpserver
v1.1.1
Published
MCP Server with tools for generating PrestaShop modules
Maintainers
Readme
PrestaShop MCP Server
MCP Server with tools for generating PrestaShop modules.
Created by bwlab: PrestaShop Expert Partner
Usage
This server can be run directly using npx:
npx mcpserver(Note: Replace mcpserver with the actual package name if you rename it).
Tools
Module Setup Tools
getPrestashopModuleQuestions
Description: Gets the questions to ask the user when creating a PrestaShop module. What it creates: Returns the necessary questions to gather module information. Parameters: None Example code:
// No parameters requiredgetPrestashopModuleCreationPlan
Description: Returns the step-by-step plan for creating a PrestaShop module from scratch. What it creates: Detailed plan with steps to follow. Parameters: None Example code:
// No parameters requiredgetPrestashopModuleStructure
Description: Gets instructions and folder structure for a new PrestaShop module. What it creates: Module directory structure. Parameters:
moduleName(string): Technical name of the module (lowercase) Example code:
{
"moduleName": "mymodule"
}Core Module Files
createPrestashopModuleComposer
Description: Generates instructions and templates for creating a PrestaShop module's composer.json file.
What it creates: composer.json file with PSR-4 autoload configuration, dev dependencies and configurations.
Parameters:
moduleName(string): Technical name of the module (lowercase)nameSpace(string): Module namespace (e.g. 'MyModule') Example code:
{
"moduleName": "mymodule",
"nameSpace": "MyModule"
}createPrestashopModuleMainFile
Description: Generates instructions and templates for creating the main PHP file of a PrestaShop module.
What it creates: Main module file (modulename.php) with base class, install/uninstall methods and configuration.
Parameters:
moduleName(string): Technical name of the module (lowercase) Example code:
{
"moduleName": "mymodule"
}Controllers
createAdminController
Description: Generates instructions and templates for creating an Admin Controller for a PrestaShop module. What it creates:
- PHP Controller in
src/Controller/ - Twig template in
views/templates/admin/controller/ - Route configuration in
config/routes.yml - Tab configuration for back office Parameters:
controllerName(string): Controller name (e.g. 'AdminProductController')moduleName(string): Technical name of the module (lowercase)nameSpace(string): Module namespace (e.g. 'MyModule') Example code:
{
"controllerName": "AdminProductController",
"moduleName": "mymodule",
"nameSpace": "MyModule"
}createFrontController
Description: Generates instructions and templates for creating a Front Controller for a PrestaShop module. What it creates:
- Front-end controller in
controllers/front/ - Smarty template in
views/templates/front/ - Methods for Ajax handling Parameters:
moduleName(string): Technical name of the module (lowercase)frontControllerName(string): Front controller name (e.g. 'display') Example code:
{
"moduleName": "mymodule",
"frontControllerName": "display"
}createConfigurationController
Description: Generates instructions and templates for creating a complete Configuration Controller with Form, DataConfiguration, DataProvider and templates. What it creates:
- Form Type in
src/Form/ - Data Configuration in
src/Configuration/ - Form Data Provider in
src/Provider/ - Twig template in
views/templates/admin/controller/ - Services configuration in
config/admin/configuration.yml - Controller action and route Parameters:
moduleName(string): Technical name of the module (lowercase)controllerName(string): Configuration controller name (e.g. 'settings')nameSpace(string): Module namespace (e.g. 'MyModule') Example code:
{
"moduleName": "mymodule",
"controllerName": "settings",
"nameSpace": "MyModule"
}Forms and UI Components
createSymfonyForm
Description: Generates instructions and templates for creating a Symfony Form for a PrestaShop module. What it creates:
- Form Type class in
src/Form/ - Services configuration
- Controller usage example
- Validations and constraints Parameters:
className(string): Form class name (e.g. 'ProductType')moduleName(string): Technical name of the module (lowercase)nameSpace(string): Module namespace (e.g. 'MyModule') Example code:
{
"className": "ProductType",
"moduleName": "mymodule",
"nameSpace": "MyModule"
}createGrid
Description: Generates instructions and templates for creating a complete Grid with Grid Definition Factory, Query Builder, templates and services configuration. What it creates:
- Grid Definition Factory in
src/Grid/Definition/Factory/ - Query Builder in
src/Grid/Query/ - Twig template in
views/templates/admin/controller/ - Services configuration in
config/admin/grid.yml - Controller action and route Parameters:
moduleName(string): Technical name of the module (lowercase)gridName(string): Grid name (e.g. 'products')nameSpace(string): Module namespace (e.g. 'MyModule') Example code:
{
"moduleName": "mymodule",
"gridName": "products",
"nameSpace": "MyModule"
}JavaScript and Ajax
createAjaxJavaScriptFile
Description: Generates instructions and templates for creating an Ajax JavaScript file for a PrestaShop module. What it creates:
- JavaScript file in
views/js/ - Ajax functions for GET and POST calls
- Error and response handling
- Examples with jQuery and Fetch API
- Instructions for including the file in the module Parameters:
moduleName(string): Technical name of the module (lowercase)fileName(string): JavaScript file name (e.g. 'display') Example code:
{
"moduleName": "mymodule",
"fileName": "display"
}Configuration
To configure this MCP server in your client (e.g., Claude Desktop, Windsurf), add the following to your configuration file:
"prestashop-devtools": {
"command": "npx",
"args": [
"-y",
"@bwlab/prestashop-devtools-mcpserver"
],
"disabled": false,
"env": {}
}