Magento 2 Skill
by @caravanglory
Manage a Magento 2 / Adobe Commerce store via REST API. Use for orders, catalog, customers, inventory, promotions, and sales reporting. It can also discover...
clawhub install magento2π About This Skill
name: magento2 description: > Manage a Magento 2 / Adobe Commerce store via REST API. Use for orders, catalog, customers, inventory, promotions, and sales reporting. It can also discover and interact with custom modules (like blogs) by exploring the system's modules and REST schema. Triggers on requests like "show me today's orders", "update product stock", "check installed modules", "call custom api", "morning brief", "store health", "inventory risk", "stockout", "promotion audit", "stuck orders", "order exceptions", "pricing issues", or anything referencing a Magento store. version: 1.1.0 metadata: openclaw: emoji: "π" homepage: https://github.com/caravanglory/openclaw-magento2 primaryEnv: MAGENTO_BASE_URL requires: env: - MAGENTO_BASE_URL - MAGENTO_CONSUMER_KEY - MAGENTO_CONSUMER_SECRET - MAGENTO_ACCESS_TOKEN - MAGENTO_ACCESS_TOKEN_SECRET bins: - python3 install: - kind: uv packages: - requests - requests-oauthlib - pandas - tabulate label: "Install Python dependencies (uv)"
Magento 2 Skill
Connect to one or more Magento 2 / Adobe Commerce stores via REST API using OAuth 1.0a.
Authentication
All requests are signed with OAuth 1.0a. Credentials are read from environment variables β never ask the user to paste them in chat.
Single site (default)
MAGENTO_BASE_URL β e.g. https://store.example.comMAGENTO_CONSUMER_KEYMAGENTO_CONSUMER_SECRETMAGENTO_ACCESS_TOKENMAGENTO_ACCESS_TOKEN_SECRETMulti-site setup
To connect to additional stores, define credentials with a site suffix (MAGENTO__):
MAGENTO_BASE_URL_US=https://us.store.com
MAGENTO_CONSUMER_KEY_US=...
MAGENTO_CONSUMER_SECRET_US=...
MAGENTO_ACCESS_TOKEN_US=...
MAGENTO_ACCESS_TOKEN_SECRET_US=...MAGENTO_BASE_URL_EU=https://eu.store.com
MAGENTO_CONSUMER_KEY_EU=...
...
All scripts accept --site to target a specific store. When omitted, the default (unsuffixed) credentials are used.
python3 orders.py list --site us --limit 10
python3 system.py sites # list all configured sites
Optional env vars
MAGENTO_TIMEOUT β Default is 30 seconds. Supports per-site override: MAGENTO_TIMEOUT_US.MAGENTO_DEBUG β Set to 1 to enable verbose logging to stderr.All scripts import the shared client from scripts/magento_client.py. Never construct raw HTTP requests inline β always use the client.
Available commands
Run scripts with: python3