retailcrm-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@retailcrm-mcplist orders from yesterday"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@theyahia/retailcrm-mcp
Production-grade MCP server for RetailCRM e-commerce CRM. 39 tools + 2 prompt skills for managing orders, customers, products, inventory, payments, tasks, references, and analytics via API v5.
Output is token-efficient by default
Read tools return a compact, shaped summary of only the fields an agent needs — not the full RetailCRM payload. Control verbosity per call:
Param | Effect |
(default) |
|
| All shaped fields (line items, delivery, payments, address…) |
| The untouched RetailCRM response (for debugging) |
⚠️ v3 is a breaking change vs v2: default output is now the shaped summary instead of raw JSON. Pass
raw:trueto restore the old payload.
Related MCP server: mcp-server-woocommerce
Tools (39)
Orders
Tool | Description |
| List orders by status, customer, number, date range |
| Get one order by ID or externalId |
| Create an order; link an existing customer ( |
| Update status, customer, delivery, comments |
| Order change history incl. status transitions (incremental sync) |
Customers
Tool | Description |
| Search customers by name, email, phone, date |
| Get one customer by ID or externalId |
| Create a customer |
| Edit an existing customer |
| Merge duplicates (destructive) |
| Customer change log (growth/churn, incremental sync) |
Products & inventory
Tool | Description |
| Catalog products by name, group, active, price |
| Product category tree |
| Stock levels & cost prices per offer/warehouse |
Payments
Tool | Description |
| Record a payment on an order |
| Edit a payment |
| Delete a payment (destructive) |
Notes & tasks
Tool | Description |
| Free-text customer notes |
| Follow-up tasks/reminders |
Marketing & finance
Tool | Description |
| Customer segments (RFM/marketing cohorts) |
| Expense records for margin analytics |
Files
Tool | Description |
| Attach & retrieve files (raw octet-stream upload) |
References
Tool | Description |
| Order/delivery/payment/store reference data |
| Sites the API key can act on (fill the |
| Address & order reference data |
Analytics
Tool | Description |
| Period-scoped order stats: exact count + revenue, AOV, status distribution |
| New-customer count for a date range |
Prompt Skills (2)
Skill | Description |
| Quick daily overview of today's orders |
| Find a customer by name, email, or phone |
Setup
In RetailCRM, go to Settings > Integration > API keys.
Create an API key with the required permissions (orders, customers, store, references). For a multi-site key, pass the
sitecode on create/edit tools (seelist_sites).Note your domain (the
yourstorepart ofyourstore.retailcrm.ru).
Environment Variables
Variable | Required | Description |
| Yes | Your RetailCRM domain (e.g. |
| Yes | API key (sent via the |
| No |
|
| No | Client-side requests/second cap (RetailCRM allows ~10/s) |
| No | HTTP server bind (default |
| No | Comma-separated allowed |
| No |
|
RETAILCRM_URLis still accepted as a fallback forRETAILCRM_DOMAIN.
Usage with Claude Desktop
{
"mcpServers": {
"retailcrm": {
"command": "npx",
"args": ["-y", "@theyahia/retailcrm-mcp"],
"env": {
"RETAILCRM_DOMAIN": "yourstore.retailcrm.ru",
"RETAILCRM_API_KEY": "your-api-key"
}
}
}
}Streamable HTTP Mode
Run as an HTTP server instead of stdio:
RETAILCRM_DOMAIN=yourstore.retailcrm.ru \
RETAILCRM_API_KEY=your-key \
npx @theyahia/retailcrm-mcp --httpPOST /mcp— MCP Streamable HTTP endpoint (stateless: a fresh server is created per request)GET /health— health check (JSON with version, tool count)GET/DELETE /mcp—405(not used in stateless mode)Default bind:
127.0.0.1:3000. DNS-rebinding protection is on by default for local binds.
Smithery
npx @smithery/cli install @theyahia/retailcrm-mcpDemo Prompts
1. Daily order overview: "Show me all orders created today with status 'new'. Summarize the total count and revenue."
2. Customer lookup and order history: "Find the customer with email anna@example.com. Show their full profile and recent orders."
3. Stock check: "Is the product with externalId SKU-42 in stock, and in which warehouse?"
Webhooks / Triggers
RetailCRM does not support API-created webhooks. Use Triggers in the admin panel (Settings > Triggers) to send HTTP requests to external endpoints on order/customer events.
Error Handling
Rate limits / 5xx: automatic retry with exponential backoff + jitter (up to 3 attempts).
API errors: RetailCRM error details are parsed and returned to the model as a tool result with
isError: true, so the agent can self-correct (e.g. retry withby:"externalId").Timeouts: 15-second per-request timeout with retry.
Development
npm install
npm test # vitest (mock-based; no live API key needed)
npm run lint # eslint
npm run typecheck # tsc --noEmit
npm run dev # stdio dev mode (tsx)
npm run build # clean + compile to dist/License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/theYahia/retailcrm-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server