PrestaShop MCP Server

PrestaShop MCP Server

Enables complete management of PrestaShop e-commerce stores through natural language, including products, categories, customers, orders, modules, cache, themes, and navigation menus.

Category
Visit Server

README

PrestaShop MCP Server

A professional Model Context Protocol (MCP) Server for complete management of PrestaShop e-commerce stores with extended functionality.

๐Ÿš€ Overview

This MCP Server enables complete management of your PrestaShop store through AI applications like Claude Desktop. With specialized tools, you can manage all aspects of your e-commerce business - from products and categories to customers, orders, modules, cache, themes, and navigation menus.

โœจ Features

  • ๐Ÿ›๏ธ Complete Store Management - Tools for all e-commerce areas
  • ๐Ÿ”ง Module Management - Install, activate, deactivate modules
  • ๐Ÿ’พ Cache Management - Clear and monitor cache status
  • ๐ŸŽจ Theme Management - Configure themes and settings
  • ๐Ÿ“‹ Menu Management - Manage main navigation (ps_mainmenu)
  • ๐Ÿ—๏ธ MCP Protocol Compliance for seamless AI integration
  • โšก Async/Await Architecture for maximum performance
  • ๐Ÿ›ก๏ธ Comprehensive Error Handling and validation
  • ๐Ÿ”ง Production-Ready with complete test suite
  • ๐Ÿ“– Comprehensive Documentation with practical examples

๐Ÿ› ๏ธ Available Tools

๐Ÿ“ฆ Unified Product Management

  • get_products - UNIFIED Product retrieval supporting all use cases:
    • Single Product by ID: Complete product details including stock and category info
    • Multiple Products: List with optional filtering and enhancement
    • Flexible Enhancement: Optional stock info, category details, custom field selection
    • Smart Filtering: By category, name, or custom criteria
  • create_product - Create new products with complete configuration
  • update_product - Edit product information
  • delete_product - Remove products
  • update_product_stock - Manage inventory levels
  • update_product_price - Update pricing

๐Ÿท๏ธ Category Management

  • get_categories - Retrieve categories (with hierarchy filter)
  • create_category - Create new categories
  • update_category - Edit categories
  • delete_category - Remove categories

๐Ÿ‘ฅ Customer Management

  • get_customers - Retrieve and filter customers
  • create_customer - Create new customers
  • update_customer - Edit customer data

๐Ÿ“‹ Order Management

  • get_orders - Retrieve and filter orders
  • update_order_status - Change order status
  • get_order_states - Retrieve available statuses

๐Ÿ”ง Module Management NEW

  • get_modules - List all PrestaShop modules
  • get_module_by_name - Get specific module details
  • install_module - Install new modules
  • update_module_status - Activate/deactivate modules

๐Ÿ“‹ Main Menu Management NEW

  • get_main_menu_links - Retrieve ps_mainmenu navigation links
  • update_main_menu_link - Edit existing menu links
  • add_main_menu_link - Add new navigation links

๐Ÿ’พ Cache Management NEW

  • clear_cache - Clear PrestaShop cache (all types)
  • get_cache_status - Monitor cache configuration

๐ŸŽจ Theme Management NEW

  • get_themes - Get current theme information
  • update_theme_setting - Configure theme settings

โš™๏ธ Store Administration

  • test_connection - Test API connection
  • get_shop_info - Comprehensive store statistics

๐Ÿ“‹ Installation

โš ๏ธ Recommended Installation (Virtual Environment)

This approach prevents module conflicts and ensures reliable installation:

Windows:

# Clone repository
git clone https://github.com/latinogino/prestashop-mcp.git
cd prestashop-mcp

# Create virtual environment
python -m venv venv_prestashop

# Activate virtual environment
.\venv_prestashop\Scripts\Activate.ps1

# Install dependencies
pip install -r requirements.txt

# Install package in development mode
pip install -e .

# Verify installation
python -c "import prestashop_mcp; print('โœ… Installation successful')"

# Note the Python path for Claude Desktop configuration
Write-Host "Python Path: $((Get-Command python).Source)"

Linux/macOS:

# Clone repository
git clone https://github.com/latinogino/prestashop-mcp.git
cd prestashop-mcp

# Create virtual environment
python3 -m venv venv_prestashop

# Activate virtual environment
source venv_prestashop/bin/activate

# Install dependencies
pip install -r requirements.txt

# Install package in development mode
pip install -e .

# Verify installation
python -c "import prestashop_mcp; print('โœ… Installation successful')"

# Note the Python path for Claude Desktop configuration
which python

โš™๏ธ Configuration

Create a .env file based on .env.example:

# PrestaShop Configuration
PRESTASHOP_SHOP_URL=https://your-shop.example.com
PRESTASHOP_API_KEY=YOUR_API_KEY

# Logging
LOG_LEVEL=INFO

๐ŸŽฏ Usage

๐Ÿค– With Claude Desktop

Using Virtual Environment (Recommended)

Add this configuration to claude_desktop_config.json:

Windows:

{
  "mcpServers": {
    "prestashop": {
      "command": "C:\\\\path\\\\to\\\\prestashop-mcp\\\\venv_prestashop\\\\Scripts\\\\python.exe",
      "args": ["-m", "prestashop_mcp.prestashop_mcp_server"],
      "cwd": "C:\\\\path\\\\to\\\\prestashop-mcp",
      "env": {
        "PRESTASHOP_SHOP_URL": "https://your-shop.example.com",
        "PRESTASHOP_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

Linux/macOS:

{
  "mcpServers": {
    "prestashop": {
      "command": "/path/to/prestashop-mcp/venv_prestashop/bin/python",
      "args": ["-m", "prestashop_mcp.prestashop_mcp_server"],
      "cwd": "/path/to/prestashop-mcp",
      "env": {
        "PRESTASHOP_SHOP_URL": "https://your-shop.example.com",
        "PRESTASHOP_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

๐Ÿ’ป CLI Usage

# Activate virtual environment first (if using venv)
source venv_prestashop/bin/activate  # Linux/macOS
.\venv_prestashop\Scripts\Activate.ps1  # Windows

# With environment variables
prestashop-mcp

# With direct parameters
prestashop-mcp --shop-url https://your-shop.com --api-key YOUR_API_KEY

# Debug mode
prestashop-mcp --log-level DEBUG

๐Ÿ†• Extended Functionality Examples

Module Management

"Show me all modules in my PrestaShop store"
"Activate the ps_mainmenu module"
"Deactivate the blockcart module"
"Get details for the ps_featuredproducts module"

Main Menu Management

"Show me all main menu links"
"Add a new menu link called 'Special Offers' pointing to /special-offers"
"Update menu link 3 to point to /new-products"
"Make menu link 5 inactive"

Cache Management

"Clear all PrestaShop cache"
"Show me the current cache status"
"Check if CSS cache is enabled"

Theme Management

"Show me current theme settings"
"Update the PS_LOGO setting to /img/new-logo.png"
"Change the PS_THEME_NAME to my-custom-theme"

๐Ÿ†• Unified Product API

The get_products tool handles all product retrieval scenarios with a single, powerful interface:

Use Cases:

Scenario Parameters Result
Single Product Details product_id="15", include_stock=true, include_category_info=true Complete product info with stock & category
Product List limit=20, category_id="5" List of products in category 5
Enhanced List limit=10, include_details=true, include_stock=true Full product details with stock for 10 products
Filtered Search name_filter="laptop", include_details=true All laptop products with complete information
Custom Fields display="id,name,price", limit=50 Specific fields only for 50 products

๐Ÿ› ๏ธ Advanced Features

ps_mainmenu Integration

The ps_mainmenu module management allows you to:

  • Retrieve all main navigation links
  • Add custom navigation items
  • Update existing menu links (name, URL, status)
  • Control menu link positioning

Cache Performance Optimization

Cache management includes:

  • Clear all cache types (CSS, JS, Template, General)
  • Monitor cache status for performance optimization
  • Toggle cache settings for development/production

Module Lifecycle Management

Complete module control:

  • List all installed modules with status
  • Install new modules programmatically
  • Activate/deactivate modules as needed
  • Get detailed module information

Theme Customization

Theme management capabilities:

  • View current theme configuration
  • Update theme-specific settings
  • Manage logos and visual elements
  • Configure theme-related PrestaShop settings

๐Ÿ”ง Troubleshooting

โŒ Common Issues

"ModuleNotFoundError: No module named 'prestashop_mcp'"

Solution: Use virtual environment and ensure package is installed:

# Check if in virtual environment
python -c "import sys; print(sys.prefix)"

# Reinstall package
pip install -e .

# Verify installation
python -c "import prestashop_mcp; print('Module found')"

Module Management Issues

Check Module Permissions:

# Ensure your API key has module management permissions
curl -u "YOUR_API_KEY:" https://your-shop.com/api/modules?output_format=JSON

Cache Clear Not Working

Alternative Cache Clear: If the API-based cache clear doesn't work, you may need to:

  1. Check PrestaShop permissions for API user
  2. Use manual cache clearing in PrestaShop admin
  3. Verify cache directory write permissions

๐Ÿ” Debug Mode

Enable debug logging in Claude Desktop configuration:

{
  "mcpServers": {
    "prestashop": {
      "command": "path/to/python",
      "args": ["-m", "prestashop_mcp.prestashop_mcp_server"],
      "cwd": "path/to/prestashop-mcp",
      "env": {
        "PRESTASHOP_SHOP_URL": "https://your-shop.example.com",
        "PRESTASHOP_API_KEY": "YOUR_API_KEY",
        "LOG_LEVEL": "DEBUG"
      }
    }
  }
}

๐Ÿ“Š Project Structure

prestashop-mcp/
โ”œโ”€โ”€ src/prestashop_mcp/                  # Main Package
โ”‚   โ”œโ”€โ”€ prestashop_mcp_server.py         # MCP Server (Extended)
โ”‚   โ”œโ”€โ”€ prestashop_client.py             # PrestaShop API Client (Extended)
โ”‚   โ”œโ”€โ”€ config.py                        # Configuration Management
โ”‚   โ””โ”€โ”€ cli.py                          # Command Line Interface
โ”œโ”€โ”€ tests/                               # All Tests
โ”‚   โ”œโ”€โ”€ test_config.py                   # Unit Tests
โ”‚   โ””โ”€โ”€ test_crud_operations.py          # CRUD Integration Tests
โ”œโ”€โ”€ venv_prestashop/                     # Virtual Environment (after setup)
โ”œโ”€โ”€ README.md                            # Documentation
โ”œโ”€โ”€ CHANGELOG.md                         # Version History
โ”œโ”€โ”€ pyproject.toml                       # Package Configuration
โ””โ”€โ”€ requirements.txt                     # All Dependencies

๐Ÿ“– API Documentation

PrestaShop API

Complete PrestaShop API documentation:

Authentication

curl -u "API_KEY:" https://your-shop.com/api/configurations?output_format=JSON

Important Endpoints

  • Products: /api/products
  • Categories: /api/categories
  • Customers: /api/customers
  • Orders: /api/orders
  • Stock: /api/stock_availables
  • Order Status: /api/order_states
  • Modules: /api/modules NEW
  • Configurations: /api/configurations NEW

๐Ÿงช Development

๐Ÿ—๏ธ Development Environment

# Activate virtual environment
source venv_prestashop/bin/activate  # Linux/macOS
.\venv_prestashop\Scripts\Activate.ps1  # Windows

# All dependencies (including test dependencies) are in requirements.txt
pip install -r requirements.txt

# Run tests
pytest

# Run tests with coverage
pytest --cov=src/prestashop_mcp --cov-report=html

# Run comprehensive integration tests
python tests/test_crud_operations.py

๐Ÿ“– Resources

๐Ÿ“„ License

MIT License - see LICENSE for details.

๐Ÿ“ Changelog

See CHANGELOG.md for a detailed history of changes.

๐Ÿ—๏ธ Project Status & Development Notes

๐Ÿ“‹ Maintenance Status

โš ๏ธ Limited Maintenance: I currently do not plan to actively maintain this repository. The PrestaShop MCP Server was rather a test of how an MCP server can be created without significant own programming experience and largely based on LLMs and MCPs.

๐Ÿงช Experimental Nature

This project served as a Proof of Concept for:

  • LLM-Assisted Development: Development of complex software integration solutions with minimal manual programming
  • MCP Server Architecture: Practical implementation of the Model Context Protocol specification
  • AI-Driven E-Commerce Integration: Automated PrestaShop management through natural language
  • No-Code/Low-Code Approach: Maximum use of AI tools for professional software development

๐Ÿณ Planned Docker Distribution

Upcoming Features: It is still planned to provide the entire MCP server as a ready-made Docker container as soon as all functions are implemented as desired.

Benefits of Docker deployment:

  • โœ… Zero-Configuration Setup: Easy installation without complex Python environment
  • โœ… Consistent Environment: Identical behavior on all platforms
  • โœ… Isolated Dependencies: No conflicts with local Python installations
  • โœ… Production-Ready: Optimized for productive use
  • โœ… Auto-Updates: Easy update to new versions

Planned Docker usage:

# Future Docker installation (planned)
docker pull latinogino/prestashop-mcp:latest
docker run -e PRESTASHOP_SHOP_URL=https://your-shop.com \
           -e PRESTASHOP_API_KEY=your-key \
           -p 8080:8080 \
           latinogino/prestashop-mcp:latest

๐ŸŽฏ Manage your complete PrestaShop store including modules, cache, themes, and navigation through natural language with Claude Desktop!

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured