Provides containerized deployment options for the CS-Cart MCP server with both standard and optimized production images, including resource limits and environment variable configuration.
Supports installation and management of the CS-Cart MCP server through npm commands for setup, development, and production deployment.
CS-Cart MCP Server
A Model Context Protocol (MCP) server that provides comprehensive tools for managing CS-Cart e-commerce stores, including product management, order handling, and sales analytics.
Features
Product Management
- get_products: Retrieve product listings with filtering and pagination
- get_product: Get detailed product information
- create_product: Add new products to the store
- update_product: Modify existing product details
- delete_product: Remove products from the store
- update_product_stock: Update product inventory levels
Order Management
- get_orders: Retrieve order listings with various filters
- get_order: Get detailed order information
- update_order_status: Change order status and notify customers
Category Management
- get_categories: Retrieve product categories and subcategories
User Management
- get_users: Get customer and user information
Analytics
- get_sales_statistics: Retrieve sales data and statistics
Installation
Option 1: Quick Setup (Recommended)
- Clone this repository:
- Run the setup script:
- Install dependencies:
- Update
.env
with your CS-Cart credentials and start:
Option 2: Manual Local Installation
- Clone this repository:
- Install dependencies:
- Configure environment variables:
Edit .env
with your CS-Cart API credentials:
Option 2: Docker Installation
- Clone this repository:
- Configure environment variables:
- Build and run with Docker Compose:
Or build and run with Docker:
Option 3: Production Docker Build
For production deployment with optimized image:
CS-Cart API Setup
- Enable API Access:
- Log into your CS-Cart admin panel
- Go to Administration → API access
- Enable API access for your store
- Generate API Key:
- Create a new API key or use existing one
- Note the API key and admin email for configuration
- API Permissions:
- Ensure the API user has appropriate permissions for:
- Products (read/write)
- Orders (read/write)
- Categories (read)
- Users (read)
- Statistics (read)
- Ensure the API user has appropriate permissions for:
Usage
Running the Server
Quick Commands
Docker Deployment
Start with Docker Compose:
View logs:
Stop the service:
Production Deployment
For production use the optimized Dockerfile:
Integration with MCP Clients
Add this server to your MCP client configuration. For example, with Claude Desktop:
Note: Use the full path to the node
executable. Common paths:
- macOS:
/usr/local/bin/node
or/opt/homebrew/bin/node
- Linux:
/usr/bin/node
or/usr/local/bin/node
- Windows:
C:\\Program Files\\nodejs\\node.exe
Integration with AnythingLLM
To integrate this MCP server with AnythingLLM:
- Navigate to AnythingLLM Settings:
- Open your AnythingLLM instance
- Go to Settings → Integrations → MCP Servers
- Add the CS-Cart MCP Server:
- Important Path Notes:
- Use the full absolute path to the
node
executable - Use the full absolute path to the
src/index.js
file - Ensure the paths are accessible from the AnythingLLM container/environment
- Use the full absolute path to the
- Example for macOS:
- Docker Integration (if AnythingLLM is running in Docker):
- Mount the CS-Cart MCP server directory as a volume
- Use the container path in the configuration
- Ensure proper file permissions
- Test the Integration:
- Restart AnythingLLM after adding the MCP server
- Check the logs for any connection errors
- Try using CS-Cart tools in your conversations
Available Tools
Product Tools
get_products
Retrieve a list of products with optional filtering:
create_product
Create a new product:
Order Tools
get_orders
Retrieve orders with filtering:
update_order_status
Update order status:
Status Codes
Product Status:
A
- ActiveD
- DisabledH
- Hidden
Order Status:
O
- OpenP
- ProcessedC
- CompleteF
- FailedD
- DeclinedB
- BackorderedI
- Incomplete
User Status:
A
- ActiveD
- Disabled
User Types:
A
- AdminV
- VendorC
- Customer
Error Handling
The server includes comprehensive error handling:
- API connection errors
- Invalid parameters
- Missing required fields
- CS-Cart API errors
All errors are returned with descriptive messages to help with debugging.
Docker Configuration
Environment Variables
When using Docker, you can set environment variables in several ways:
- Using .env file (recommended):
- Using docker-compose.yml:
- Using Docker run command:
Docker Images
- Dockerfile: Standard development image (~200MB)
- Dockerfile.production: Optimized production image (~150MB)
- Multi-stage build for smaller size
- Non-root user for security
- Proper signal handling with dumb-init
- Health checks included
Resource Limits
The docker-compose.yml includes resource limits:
- CPU: 0.5 cores max, 0.25 cores reserved
- Memory: 512MB max, 256MB reserved
Adjust these based on your server capacity and usage requirements.
Project Structure
Adding New Tools
To add new tools, extend the ListToolsRequestSchema
handler and add corresponding methods to the CSCartMCPServer
class.
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Support
For issues related to:
- CS-Cart API: Check CS-Cart documentation or support
- MCP Protocol: Refer to MCP documentation
- This Server: Open an issue in this repository
Changelog
v0.1.0
- Initial release
- Basic product management tools
- Order management functionality
- Category and user tools
- Sales statistics support
Tools
A Model Context Protocol server that provides comprehensive tools for managing CS-Cart e-commerce stores, enabling product management, order handling, and sales analytics.
Related MCP Servers
- AsecurityAlicenseAqualityA Model Context Protocol server that interfaces with Biomart databases, allowing models to discover biological datasets, explore attributes/filters, retrieve biological data, and translate between different biological identifiers.Last updated -85PythonMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that connects to a Magento 2 REST API, allowing Claude and other MCP clients to query product information, customer data, and order statistics from a Magento store.Last updated -1432JavaScriptGPL 3.0
- -securityFlicense-qualityA Model Context Protocol server that enables AI assistants to interact with a complete e-commerce application, providing authentication, product browsing, and shopping cart management through standardized MCP tools.Last updated -TypeScript
- -securityAlicense-qualityProvides a Model Context Protocol server for managing shipping orders and address book functionality with support for connecting to real shipping services via HTTP API.Last updated -PythonMIT License