Shopify MCP Server
Model Context Protocol (MCP) server for integrating Shopify API with Claude Desktop for real-time e-commerce analytics and data visualization.
Version: v0.2.0 (GraphQL Edition)
Status: Production Ready
Documentation: Full Documentation
🚀 What's New in v0.2.0
- GraphQL API Support: Efficient data fetching with up to 70% fewer API calls
- Enhanced Testing: Comprehensive test suite with coverage reporting
- Flexible Dependencies: Better compatibility with version ranges
- Network Resilience: Improved handling of restricted network environments
✨ Features
Core Capabilities
- 🛍️ Real-time order data aggregation
- 📊 Sales analytics and visualization
- 💰 Currency-aware reporting (Multi-currency support)
- 🔒 Secure API integration
- 📈 Product performance tracking
- 🌐 GraphQL and REST API support
Technical Features
- 🚄 High-performance caching
- 🧪 Comprehensive test coverage
- 🐳 Docker support
- 📝 Extensive documentation
- 🔄 CI/CD ready
- 🛡️ Network resilient installation
📚 Quick Start
Prerequisites
- Python 3.8+
- Shopify store with API access
- Claude Desktop application
Installation
Standard Installation
# 1. Clone the repository
git clone https://github.com/mourigenta/shopify-mcp-server.git
cd shopify-mcp-server
# 2. Set up environment with network resilience
./setup_test_env.sh
# Or with custom options:
# INSTALL_TIMEOUT=300 INSTALL_RETRY=5 ./setup_test_env.sh
# 3. Configure your Shopify credentials
cp .env.example .env
# Edit .env with your credentials
Installation in Restricted Networks
# For environments with network restrictions:
# 1. Behind a proxy
export PIP_PROXY=http://your-proxy:port
./setup_test_env.sh
# 2. Limited network connectivity
INSTALL_TIMEOUT=300 INSTALL_RETRY=10 ./setup_test_env.sh
# 3. Offline installation
# First, download packages on a connected machine:
pip download -r requirements.txt -d vendor/
# Then on the target machine:
OFFLINE_MODE=1 ./setup_test_env.sh
# 4. Minimal installation (core features only)
INSTALL_OPTIONAL=0 INSTALL_DEV=0 ./setup_test_env.sh
Dependency Installation Options
# Core dependencies only (minimal functionality)
pip install -r requirements-base.txt
# Extended dependencies (recommended)
pip install -r requirements-extended.txt
# Full installation (all features)
pip install -r requirements.txt
Configuration
Configure your Shopify credentials in .env:
SHOPIFY_SHOP_NAME=your-shop-name
SHOPIFY_ACCESS_TOKEN=your-access-token
SHOPIFY_API_VERSION=2024-01
See Environment Setup Guide for detailed instructions.
🛠️ Available Tools
REST API Tools
get_orders_summary: Order statistics and revenueget_sales_analytics: Sales trends and analyticsget_product_performance: Top performing products
GraphQL API Tools
get_shop_info_graphql: Comprehensive shop informationget_products_graphql: Efficient product data fetchingget_inventory_levels_graphql: Location-aware inventory tracking
When to Use Which?
Use GraphQL for:
- Complex queries with related data
- Mobile apps with bandwidth constraints
- Selective field fetching
Use REST for:
- Simple CRUD operations
- Cached content
- Legacy integrations
See GraphQL vs REST Guide for detailed comparisons.
🧪 Testing
Run the comprehensive test suite:
# Run all tests with automatic dependency detection
python run_adaptive_tests.py
# Run with coverage report
./run_tests.sh --coverage
# Run specific test file
python -m pytest test_graphql_client.py
# Check environment and dependencies
python test_imports.py
🔧 Troubleshooting
Network Issues
If you encounter dependency installation failures:
- Check proxy settings:
export PIP_PROXY=http://proxy:port - Increase timeout:
INSTALL_TIMEOUT=300 ./setup_test_env.sh - Use offline mode: See docs/NETWORK_TROUBLESHOOTING.md
- Disable retries:
INSTALL_RETRY_DISABLED=1 ./setup_test_env.sh
Common Issues
- Import errors: Run
python test_imports.pyfor specific instructions - SSL errors: Update certificates or use trusted sources
- Timeout errors: Increase
INSTALL_TIMEOUTenvironment variable
🐳 Docker Support
Deploy with Docker:
# Build and run
docker-compose up
# Production deployment
docker-compose -f docker-compose.prod.yml up
See Docker Configuration for details.
🤝 Contributing
We welcome contributions! Please see our Contributing Guide for:
- Development workflow
- Code style guidelines
- Pull request process
- Release procedures
📊 Performance
v0.2.0 brings significant performance improvements:
- 70% reduction in API calls for complex queries (GraphQL)
- 40% faster response times for multi-resource fetches
- 50% less bandwidth usage with selective field queries
- Network resilient installation process
🔐 Security
- Environment-based configuration
- Secure token storage
- Rate limiting awareness
- SSL/TLS support
📄 License
MIT License - see LICENSE file for details.
🙏 Acknowledgments
Thanks to all contributors who have helped make this project better!
📞 Support
- 📖 Documentation
- 💬 Discussions
- 🐛 Issue Tracker
- 📧 Email: support@example.com
Made with ❤️ by the Shopify MCP Server team
Metadata
Release files for shopify-mcp-server 0.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| shopify_mcp_server-0.2.2.tar.gz | 29.5 kB | Without provenance | Details for shopify_mcp_server-0.2.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| shopify_mcp_server-0.2.2-py3-none-any.whl | Python 3 | none | any | Details for shopify_mcp_server-0.2.2-py3-none-any.whl |
Total release size: 52.9 kB
Release files / shopify_mcp_server-0.2.2.tar.gz
| Download URL | shopify_mcp_server-0.2.2.tar.gz |
|---|---|
| Size | 29.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6721e53fb0343c0c0ad2404e12f4f1d8c209b059b41d550078959f4a465c442f
|
|
BLAKE2b-256 checksum How to use checksums |
735bcdfc8beb23f799ab07e5b9e2c62780e815a4d92305639e5fb574750ffeb6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.9.6
|
Release files / shopify_mcp_server-0.2.2-py3-none-any.whl
| Download URL | shopify_mcp_server-0.2.2-py3-none-any.whl |
|---|---|
| Size | 23.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cf5383b93d2e83057da9176531009590e608ca078d45c038310e45d5a3255d85
|
|
BLAKE2b-256 checksum How to use checksums |
5fe1e571e2907c7f215be2a57b80375bbeaa0229fe3e201d0c7d7eb89f74fcce
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.9.6
|
Security for shopify-mcp-server 0.2.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.