Open-source B2B and marketplace ecommerce; new stores include an MCP server for AI agents.
Horoshop
ภาพรวม
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
MCP server for the Horoshop e-commerce API — orders, catalog, customers, webhooks
สามเสาของ PopNx MCP
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
- เสียงผู้ใช้iยังไม่มีรีวิวรีวิวเปิดพร้อมระบบบัญชีในขั้นถัดไป
- ผลตรวจเบื้องต้นของเราiผ่าน 1 จาก 1 ข้อตรวจจากข้อมูลที่เปิดอยู่ ยังไม่ได้สแกนโค้ด
- การใช้งานiยังไม่ได้วัด★ –
ใช้ทำอะไรได้
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
- การเชื่อมต่อ: รันบนเครื่อง
- ช่องทาง (transport): stdio
- หมวด: ร้านค้าออนไลน์และรับเงิน
- ต้องใส่ค่าเหล่านี้: HOROSHOP_DOMAIN, HOROSHOP_LOGIN, HOROSHOP_PASSWORD
ติดตั้ง
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ก่อนติดตั้ง
- ผลตรวจเบื้องต้น: ผ่าน 1 จาก 1 ข้อ
- รันในเครื่องคุณด้วยสิทธิ์ของผู้ใช้คุณ (ไฟล์ อินเทอร์เน็ต แอปต่าง ๆ)
- ค่าที่คุณต้องใส่เอง:
HOROSHOP_DOMAIN,HOROSHOP_LOGIN,HOROSHOP_PASSWORD,HOROSHOP_READONLY,HOROSHOP_TIMEOUT_MS,HOROSHOP_MAX_RESPONSE_BYTES,HOROSHOP_INSECURE_HTTP
ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
- npmติดตั้ง Node.js (มีคำสั่ง npx) ในเครื่อง
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"horoshop": {
"command": "npx",
"args": [
"-y",
"horoshop-mcp"
],
"env": {
"HOROSHOP_DOMAIN": "ใส่ค่าของคุณ",
"HOROSHOP_LOGIN": "ใส่ค่าของคุณ",
"HOROSHOP_PASSWORD": "ใส่ค่าของคุณ",
"HOROSHOP_READONLY": "ใส่ค่าของคุณ",
"HOROSHOP_TIMEOUT_MS": "ใส่ค่าของคุณ",
"HOROSHOP_MAX_RESPONSE_BYTES": "ใส่ค่าของคุณ",
"HOROSHOP_INSECURE_HTTP": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add horoshop --env HOROSHOP_DOMAIN='ใส่ค่าของคุณ' --env HOROSHOP_LOGIN='ใส่ค่าของคุณ' --env HOROSHOP_PASSWORD='ใส่ค่าของคุณ' --env HOROSHOP_READONLY='ใส่ค่าของคุณ' --env HOROSHOP_TIMEOUT_MS='ใส่ค่าของคุณ' --env HOROSHOP_MAX_RESPONSE_BYTES='ใส่ค่าของคุณ' --env HOROSHOP_INSECURE_HTTP='ใส่ค่าของคุณ' -- npx -y horoshop-mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
หรือคัดลอกค่าตั้งเอง
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"horoshop": {
"command": "npx",
"args": [
"-y",
"horoshop-mcp"
],
"env": {
"HOROSHOP_DOMAIN": "ใส่ค่าของคุณ",
"HOROSHOP_LOGIN": "ใส่ค่าของคุณ",
"HOROSHOP_PASSWORD": "ใส่ค่าของคุณ",
"HOROSHOP_READONLY": "ใส่ค่าของคุณ",
"HOROSHOP_TIMEOUT_MS": "ใส่ค่าของคุณ",
"HOROSHOP_MAX_RESPONSE_BYTES": "ใส่ค่าของคุณ",
"HOROSHOP_INSECURE_HTTP": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
หรือคัดลอกค่าตั้งเอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"horoshop": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"horoshop-mcp"
],
"env": {
"HOROSHOP_DOMAIN": "ใส่ค่าของคุณ",
"HOROSHOP_LOGIN": "ใส่ค่าของคุณ",
"HOROSHOP_PASSWORD": "ใส่ค่าของคุณ",
"HOROSHOP_READONLY": "ใส่ค่าของคุณ",
"HOROSHOP_TIMEOUT_MS": "ใส่ค่าของคุณ",
"HOROSHOP_MAX_RESPONSE_BYTES": "ใส่ค่าของคุณ",
"HOROSHOP_INSECURE_HTTP": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าที่ต้องใส่เอง
- Store domain, e.g. myshop.com.ua (with or without https://)
- Login of a dedicated admin account created in the Horoshop panel (Налаштування → Адміни)
- Password of that admin account. Horoshop has no API keys, so admin credentials are used
HOROSHOP_READONLYenvSet to 1 to hide every tool that writes to the store. Recommended for a first runHOROSHOP_TIMEOUT_MSenvRequest timeout in millisecondsHOROSHOP_MAX_RESPONSE_BYTESenvCap on a single tool response; larger exports are truncated with a noteHOROSHOP_INSECURE_HTTPenvSet to 1 to use plain http instead of https (dev stores only)
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ทำอะไรได้บ้าง
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
ผลตรวจเบื้องต้นi
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
- ✓ ผ่าน
ตัวตนผู้ทำตรงกับ repo
ชื่อใน registry ยืนยันด้วยบัญชี GitHub ecomkit-com-ua ซึ่งเป็นเจ้าของ repo
- … ยังไม่ตรวจ
ยังมีคนดูแล
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
- … ยังไม่ตรวจ
มีสัญญาอนุญาต (license)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
- – ไม่เกี่ยว
endpoint ตอบ
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
- – ไม่เกี่ยว
ล็อกอินแบบ OAuth
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
- … ยังไม่ตรวจ
คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับตัวอื่นในหมวด ร้านค้าออนไลน์และรับเงินi
- ดาวมากกว่า 0% ของอีก 1749 ตัวในหมวดนี้
- ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 35% ของอีก 1749 ตัวในหมวดนี้
- ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 1749 ตัวในหมวดนี้
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
คำถามที่พบบ่อย
Horoshop ปลอดภัยไหม?
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใช้กุญแจหรือรหัสอะไรบ้าง?
ต้องใส่ค่าเหล่านี้: HOROSHOP_DOMAIN, HOROSHOP_LOGIN, HOROSHOP_PASSWORD
ตัวนี้รันบนเครื่องหรือบนคลาวด์?
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
ยังมีคนดูแลอยู่ไหม?
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.1) เข้า registry 2 เดือนที่ผ่านมา
ใช้กับโปรแกรมไหนได้บ้าง?
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
มีตัวไหนใช้แทนได้บ้าง?
ในหมวดเดียวกันมี Spree Commerce: open-source B2B and marketplace ecommerce, Stripe MCP, MCP Cn Commerce
ตัวที่ใช้แทนได้
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Stripe MCP
server ทางการของ Stripe ให้ AI ดูและจัดการลูกค้า สินค้า การชำระเงิน และใบแจ้งหนี้ ต่อผ่านคลาวด์ของ Stripe และล็อกอินแบบ OAuth
MCP Cn Commerce
8 read-only MCP platform entries; support is operation-specific; merchant live acceptance pending
README จากผู้ทำ
เปิดอ่าน README
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
horoshop-mcp
English: an MCP server for the Horoshop e-commerce platform. It gives Claude, Cursor and any other MCP client direct access to a Horoshop store's API — orders, catalog, categories, customers, product sets, reference data and webhooks. Install with npx -y horoshop-mcp, configure with your store domain and an admin login. llms-install.md lets an AI agent do the whole setup for you. MIT licensed. Documentation below is in Ukrainian.
Пояснення для власника магазину, без технічних деталей —
Що це
Це MCP-сервер для Horoshop. Він дає Claude (або будь-якому іншому MCP-клієнту) прямий доступ до API вашого магазину: замовлення, каталог, розділи, покупці, комплекти товарів, довідники доставки й оплати, вебхуки.
Далі можна просто просити звичайною мовою:
- «покажи замовлення за минулий тиждень, які ще в обробці»
- «вивантаж товари з розділу "Аксесуари", де не заповнений SEO-опис»
- «онови ціни на ці 20 артикулів»
- «скільки покупців зареєструвалося в серпні»
Сервер не має власної логіки поверх Horoshop — це тонка обгортка над офіційним API.
Що потрібно
- Node.js 20 або новіший
- магазин на Horoshop
- логін і пароль адміністратора
Встановлення через ШІ
Найшвидший шлях — попросити про це самого асистента. Скопіюйте цей промпт у Claude Code, Claude Desktop або Cursor:
Встанови мені MCP-сервер horoshop-mcp.
Інструкція для тебе: https://github.com/ecomkit-com-ua/horoshop-mcp/blob/main/llms-install.md Прочитай її й виконай: спитай у мене домен магазину, логін і пароль адміна, пропиши конфіг для того клієнта, у якому ти зараз працюєш, залиш на перший раз режим лише-читання і перевір, що сервер відповідає.
Асистент сам спитає доступи, впише блок у потрібний файл конфігурації й перевірить зв'язок. Пароль він записує тільки в конфіг — не в чат і не в git.
Далі — те саме руками, якщо так зручніше.
Крок 1. Створіть окремого адміна для API
В адмінпанелі магазину: Налаштування → Адміни → додати адміністратора.
Створіть окремий обліковий запис саме для API, а не використовуйте свій особистий. Так доступ можна відкликати одним рухом, не блокуючи собі вхід, і в логах видно, що саме робив інтеграційний доступ.
Horoshop не має API-ключів: авторизація йде звичайним логіном і паролем адміна.
Крок 2. Підключіть сервер
Claude Code — у .mcp.json в корені проєкту:
{
"mcpServers": { "horoshop": { "command": "npx", "args": ["-y", "horoshop-mcp"], "env": { "HOROSHOP_DOMAIN": "myshop.com.ua", "HOROSHOP_LOGIN": "api", "HOROSHOP_PASSWORD": "..." } } } }
Claude Desktop — те саме, але у claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\).
Cursor — той самий блок у ~/.cursor/mcp.json.
Cline — той самий блок у cline_mcp_settings.json.
Gemini CLI — той самий блок у ~/.gemini/settings.json.
VS Code (GitHub Copilot) — те саме у .vscode/mcp.json, але сервери лежать під ключем servers, а не mcpServers.
Будь-який інший клієнт із підтримкою MCP через stdio теж підійде — конфіг скрізь той самий.
Після цього перезапустіть клієнт.
npx сам завантажить пакет з npm — окремо нічого встановлювати не треба. Найсвіжіший код, ще до релізу, ставиться прямо з GitHub: ["-y", "github:ecomkit-com-ua/horoshop-mcp"].
Файл конфігурації містить пароль адміна відкритим текстом. Тримайте його поза git —
додайте
.mcp.jsonу.gitignore.
Інструменти
Читання:
horoshop_orders_list— замовлення з товарами, доставкою, оплатою, знижками й UTM-мітками. Фільтри за датами, номерами та статусамиhoroshop_order_statuses— усі статуси замовлень магазину (потрібен Horoshop 4.0+)horoshop_products_export— товари з каталогу: ціни, наявність, розділи, характеристики, залишки, SEO. Фільтри за розділом, артикулом і видимістюhoroshop_categories_export— дерево розділів каталогу з ідентифікаторамиhoroshop_users_export— зареєстровані покупціhoroshop_store_reference— довідники магазину одним інструментом: варіанти й типи доставки, варіанти й методи оплати, валюти з курсами, іконки товарів, а для B2B — групи покупців і рівні цін
Запис:
horoshop_products_import— створення й оновлення товарівhoroshop_orders_update— статус, ознака оплати, номер відстеженняhoroshop_users_import— створення й оновлення покупцівhoroshop_product_sets_import/horoshop_product_sets_remove— комплекти «разом дешевше»horoshop_webhook_subscribe/horoshop_webhook_unsubscribe— підписка на події магазину
Універсальний виклик:
horoshop_call— будь-яка функція API за назвою з документації. Для того, чого ще немає серед окремих інструментів
Обережно з імпортом товарів
horoshop_products_import пише в живий магазин, і скасувати це неможливо. Найнебезпечніші значення за замовчуванням:
images,gallery_commonіgallery_360маютьoverride: trueза замовчуванням — це видаляє поточну галерею перед завантаженням нових фото. Щоб додати фото без видалення, передавайтеoverride: false; щоб не чіпати галерею — не передавайте її взагаліaccessoriesіgiftsзамінюють поточні списки, а не доповнюють їх
Перед масовим імпортом перевірте все на одному тестовому артикулі й звірте результат через horoshop_products_export.
Якщо потрібен доступ лише на читання — поставте HOROSHOP_READONLY=1, і інструменти запису взагалі не з'являться в списку.
Змінні середовища
Обов'язкові:
HOROSHOP_DOMAIN— домен магазину, наприкладmyshop.com.ua. Можна зhttps://, можна безHOROSHOP_LOGIN— логін адмінаHOROSHOP_PASSWORD— пароль адміна
Необов'язкові:
HOROSHOP_READONLY=1— сховати всі інструменти записуHOROSHOP_TIMEOUT_MS— таймаут запиту, за замовчуванням60000HOROSHOP_MAX_RESPONSE_BYTES— межа розміру відповіді, за замовчуванням100000. Великі вивантаження обрізаються з поміткою, скільки записів показано — див. «Гортання великих вивантажень»HOROSHOP_INSECURE_HTTP=1— звертатися поhttpзамістьhttps(для тестових магазинів)
Гортання великих вивантажень
horoshop_orders_list, horoshop_products_export і horoshop_users_export приймають limit і offset. Але розмір відповіді обмежений ще й окремо — через HOROSHOP_MAX_RESPONSE_BYTES.
Ці два обмеження незалежні, і це важливо. Horoshop може віддати всі 50 запитаних товарів, а в бюджет відповіді влізе, скажімо, 17. Решта 33 вже приїхали, але показані не будуть.
Тому підказка про наступну сторінку рахується від показаних записів, а не від `limit`: після такої обрізаної сторінки сервер каже продовжити з offset 17, а не з offset 50. Якби він радив offset 50, ті 33 товари зникли б назавжди — жоден наступний запит їх би не зачепив.
Що з цього варто знати:
- обрізана сторінка завжди залишається валідним JSON — записи прибираються з кінця масиву цілими, сервер не ріже відповідь посередині запису
- якщо в бюджет не влазить навіть один запис, сервер каже про це прямо: гортання тут не допоможе, потрібно просити менше полів (
include_params) або піднятиHOROSHOP_MAX_RESPONSE_BYTES - якщо Horoshop віддав менше, ніж запитано, сервер позначає це як останню сторінку й не пропонує наступний
offset
Обмеження Horoshop, про які варто знати
- токен авторизації живе 600 секунд — сервер оновлює його сам
catalog/exportвіддає максимум 500 товарів за раз; гортайте черезoffsetorders/getіusers/exportігноруютьoffsetбезlimit— сервер завжди надсилає обидва- вебхуків на одну подію може бути не більше 5, і API не вміє показати наявні підписки
- частина функцій потребує Horoshop 4.0+ або модуля B2B — тоді у відповіді буде
UNDEFINED_FUNCTION
Розробка
npm install
npm run build node dist/index.js
Тести
npm test
npm test спочатку виконує npm run build, тож тести завжди йдуть проти скомпільованого dist/, а не проти джерел. Справжній магазин для цього не потрібен: макет Horoshop піднімається на випадковому порту 127.0.0.1, тому тести не роблять жодного зовнішнього запиту.
Що де лежить:
test/format.test.mjs— юніт-тести форматера відповіді: обрізання великих payload'ів, підказки про наступну сторінку, статусиEMPTYіWARNING, перетворення помилокtest/server.test.mjs— інтеграційні тести. Піднімають справжнійdist/index.jsокремим процесом і спілкуються з ним по JSON-RPC через stdio, як це робить MCP-клієнт: рукостискання, список інструментів, режим лише-читання, життєвий цикл токена, форми відповідей Horoshoptest/support/mock-horoshop.mjs— макет API: авторизація, протермінований токен, конверти відповідей, неконвертованіhooks/*, HTML замість JSONtest/support/mcp-client.mjs— мінімальний MCP-клієнт для тестів
Один файл окремо:
node --test test/format.test.mjs
Новий файл тестів достатньо назвати test/<щось>.test.mjs — npm test підхопить його сам. Файли в test/support/ тестами не вважаються, це допоміжний код.
Ліцензія
MIT.
Privacy Policy
No data is collected. This server contains no telemetry, analytics or usage reporting, and makes no requests to any server operated by ecomkit.
- Credentials — your store domain, admin login and password are stored in your own MCP client's configuration file on your own machine and are transmitted only to your own store. The author has no access to them.
- Where your data does go — the server passes your store's data into your conversation with your AI assistant, so it reaches your AI provider (Anthropic, Google, OpenAI or another) under that provider's privacy policy, not this one. Do not request exports of data that must not leave your company.
- Third parties — none beyond those two. Nothing is shared, sold or transferred.
- Retention — none by the author, as nothing is received.
- Contact — hello@ecomkit.com.ua
Full policy, in Ukrainian and English: ecomkit.com.ua/pryvatnist-instrumenty
Зробив Сергій Троїцький — запуск, SEO та автоматизація інтернет-магазинів. Потрібен аудит магазину на Horoshop? ecomkit.com.ua