Trendyol Seller Mcp

io.github.koraynar由 GitHub 帳號 koraynar 發布v0.1.0更新於 Oct 24, 2026

Unofficial Trendyol seller API for AI assistants: products, orders, Q&A, guarded stock/price writes.

已驗證STDIO僅桌面效率與工作流商業與電商

概覽

AI 產生的概覽

針對 Trendyol 賣家 API 的非官方 MCP 伺服器,讓助理列出商品、查看訂單、退貨與客戶提問,並可選擇性更新庫存與價格。

可以做什麼
  • 分頁列出商品,含條碼、標題、數量與價格,可依審核狀態篩選
  • 依狀態與日期區間查看訂單包裹,預設隱去客戶姓名與地址
  • 讀取客戶提問與既有回覆,可依狀態篩選
  • 查看退貨與索賠,含各項目狀態與客戶原因
  • 回覆客戶提問、批次更新庫存與價格,僅在明確開啟寫入後可用
適用情境
適合想透過 AI 助理查看商品、訂單、退貨與客戶提問的土耳其 Trendyol 賣家;在信任唯讀流程後,也可用於回覆提問與調整庫存價格。
執行需求
以本機 Python 程序執行(需 Python 3.11+ 與 uv),由 MCP 用戶端啟動。需要賣家面板中的賣家 ID、API Key 與 API Secret,透過環境變數 TRENDYOL_SELLER_ID、TRENDYOL_API_KEY、TRENDYOL_API_SECRET 提供。需能連線 Trendyol API 閘道;選用的基礎 URL 變數可切換至測試環境。
安裝前請注意
伺服器在環境變數中保存賣家 API 憑證,且能改動線上商店:回覆提問會發布公開回覆且每題僅能發布一次,庫存與價格更新會變更商品資料。除非將 TRENDYOL_ALLOW_WRITES 設為 true,寫入功能維持關閉,建議先以唯讀方式使用。訂單資料預設含客戶城市,傳入 include_pii=true 會揭露姓名與完整地址。此專案為非官方,與 Trendyol 無關聯。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Trendyol Seller Mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

trendyol-seller-mcp

An unofficial MCP server for the Trendyol Marketplace seller API, so Turkish e-commerce sellers can drive day-to-day store operations from an AI assistant (Claude Desktop, Claude Code, or any other MCP client): list products, check order packages, review returns, and — when explicitly enabled — answer customer questions and update stock/prices.

Not affiliated with Trendyol. This is an independent open-source project by Koray Nar (Istanbul). It talks to the official seller API using your own API credentials, which you can find in the Trendyol Seller Panel: Satıcı Paneli > Hesap Bilgilerim > Entegrasyon Bilgileri (visible only to the panel's master user).

Built by Koray to support his own AI-automation practice and published as part of his public portfolio. It is a working tool with a mocked test suite — no user counts, clients, or production claims implied.

Türkçe Özet

trendyol-seller-mcp, Trendyol Pazaryeri satıcı API'si için resmi olmayan bir MCP sunucusudur. Claude gibi bir yapay zeka asistanının mağazanızla konuşmasını sağlar: ürünleri listeler, sipariş paketlerini ve iadeleri görüntüler, müşteri sorularını okur. Yazma işlemleri (soru cevaplama, stok/fiyat güncelleme) varsayılan olarak kapalıdır; yalnızca TRENDYOL_ALLOW_WRITES=true ortam değişkenini ayarlarsanız çalışır.

Gerekli bilgiler: Satıcı ID, API Key ve API Secret — bunları Satıcı Paneli > Hesap Bilgilerim > Entegrasyon Bilgileri sayfasında bulabilirsiniz. Proje Trendyol ile bağlantılı değildir; kendi API bilgilerinizle, kendi sorumluluğunuzda kullanılır. Sipariş verilerinde müşteri adı ve adresi varsayılan olarak gizlenir (yalnızca şehir gösterilir).

Tools

ToolTypeWhat it does
get_products(page=0, size=50, approved=None, barcode="")readPaged product list, trimmed to barcode, title, quantity, salePrice, listPrice, approved.
get_orders(status="", start_date="", end_date="", page=0, size=50, include_pii=False)readOrder packages: orderNumber, status, orderDate, totalPrice, lines, and customer city only. Name/full address are redacted unless include_pii=True. Dates accept YYYY-MM-DD or epoch ms. Status values: Created, Picking, Invoiced, Shipped, Cancelled, Delivered, UnDelivered, Returned, AtCollectionPoint, UnSupplied.
get_customer_questions(status="WAITING_FOR_ANSWER", page=0, size=50)readCustomer Q&A: id, question text, status, product, existing answer. Other statuses: WAITING_FOR_APPROVE, ANSWERED, REPORTED, REJECTED.
answer_question(question_id, text)writePublishes an answer (10–2000 chars, per Trendyol's rules). Guarded — see below.
update_price_and_stock(items_json)writeBatch stock/price update. items_json is a JSON array of {"barcode", "quantity", "salePrice", "listPrice"} (max 1000 items). Returns Trendyol's batchRequestId. Guarded — see below.
get_claims(page=0, size=20)readReturns/claims summary with per-item status and customer reason. Customer names excluded.

Write guard (read this first)

The two write tools are double-guarded:

  1. They refuse with a clear message unless the environment variable TRENDYOL_ALLOW_WRITES=true is set for the server process. Without it, the server is strictly read-only — an AI assistant cannot change your store.
  2. Client-side validation runs before any request leaves your machine (answer length 10–2000 characters, max 1000 items per stock/price batch, barcode required per item).

Recommended: run read-only first, and only set TRENDYOL_ALLOW_WRITES=true once you trust the workflow. Answers to customer questions are public and can only be posted once per question.

Configuration

Env varRequiredMeaning
TRENDYOL_SELLER_IDyesYour seller (cari) ID.
TRENDYOL_API_KEYyesAPI key from Entegrasyon Bilgileri.
TRENDYOL_API_SECRETyesAPI secret from Entegrasyon Bilgileri.
TRENDYOL_BASE_URLnoDefaults to https://apigw.trendyol.com/integration. Set to https://stageapigw.trendyol.com/integration for Trendyol's stage environment.
TRENDYOL_ALLOW_WRITESnoSet to true to enable the two write tools. Anything else keeps them disabled.

Requests use HTTP Basic auth (key/secret) and the User-Agent Trendyol requires for self-integrations: "<sellerId> - SelfIntegration".

Quickstart

Requires Python 3.11+ and uv.

bash
git clone https://github.com/koraynar/trendyol-seller-mcpcd trendyol-seller-mcpuv venv && uv pip install -e '.[dev]'uv run --extra dev pytest   # all tests are offline (httpx.MockTransport), no live calls

Claude Code

bash
claude mcp add trendyol-seller \  --env TRENDYOL_SELLER_ID=123456 \  --env TRENDYOL_API_KEY=your-key \  --env TRENDYOL_API_SECRET=your-secret \  -- uv run --directory /absolute/path/to/trendyol-seller-mcp trendyol-seller-mcp

Claude Desktop

Add to claude_desktop_config.json:

json
{  "mcpServers": {    "trendyol-seller": {      "command": "uv",      "args": [        "run",        "--directory",        "/absolute/path/to/trendyol-seller-mcp",        "trendyol-seller-mcp"      ],      "env": {        "TRENDYOL_SELLER_ID": "123456",        "TRENDYOL_API_KEY": "your-key",        "TRENDYOL_API_SECRET": "your-secret"      }    }  }}

Add "TRENDYOL_ALLOW_WRITES": "true" to env only when you want the write tools active.

Privacy notes

  • get_orders redacts customer name and full shipping address by default and returns only the city; pass include_pii=true per call when you actually need it.
  • get_customer_questions and get_claims never return customer names.
  • Credentials come from environment variables only; nothing is written to disk.

Limitations (honest list)

  • Unofficial: Trendyol can change the API at any time; endpoints were verified against developers.trendyol.com (v2.0 docs, EN) on 2026-08-25.
  • Covers six common operations, not the full API surface (no product creation, shipping label, invoice, or webhook endpoints).
  • update_price_and_stock returns Trendyol's batchRequestId but does not poll the batch result endpoint; check the batch status yourself if needed.
  • Trendyol's docs cap question pages at 50 items and order pages at 200; this server clamps to those. No documented cap was found for the product filter (V1) page size, so it is passed through as-is.
  • Trendyol's international (non-TR) marketplace API is not targeted or tested.
  • No caching, no retry loop — a 429 is surfaced with the Retry-After value so the calling assistant can decide when to retry.
  • Built and tested against mocked responses; field names include tolerant fallbacks where Trendyol's docs show more than one name for the same field.

License

MIT © 2026 Koray Nar

來源:README.md,提交 68de810

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.0最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分