mcp-wb
HARBEZ WB Feedbacks — MCP 连接器
Wildberries 的评论和问题直接进入 Claude 聊天——给你和员工,从组织的任何设备。Seller API 令牌只存在于服务器环境中:它们不在通信中,不在笔记本电脑上,也不在项目文件中。
Claude (проект «Коммерческий отдел»)
│ HTTPS, streamable HTTP, персональный Bearer-ключ
▼
Caddy (TLS, Let's Encrypt)
│
MCP-сервер (Docker, слушает только внутри сети compose)
│ токены WB из .env
▼
feedbacks-api.wildberries.ru功能
工具 | 用途 |
| 卖家账户列表(键和名称,不含令牌) |
| 未回复的评论数量,其中今天有多少,平均评分 |
| 带过滤器的评论:账户、SKU、评分、时间段、回复状态 |
| SKU 汇总:平均分、1–5 分布、负面占比、未回复 |
| 特定 SKU 的评分 |
| 买家问题 |
| 发布回复。默认关闭,需要 |
对 WB 的请求会被限流,评论文本截断到 600 个字符,wb_feedbacks_stats 只返回聚合数据——以免烧掉上下文。
Related MCP server: marketplace-mcp
在 VPS 上部署
需要:带 Ubuntu/Debian 的 VPS,指向它的子域名 A 记录,开始时需要 root 权限。
# 1. На ВПС под root — пользователи, фаервол, Docker, клон репозитория
git clone git@github.com:Albertharbez/mcp-wb.git /srv/wb-mcp
bash /srv/wb-mcp/deploy/setup-vps.sh albert <логин-сотрудника>
# 2. Заполнить /srv/wb-mcp/.env (шаблон — .env.example)
# MCP_DOMAIN, WB_TOKEN_*, MCP_CLIENT_KEYS
# 3. Поднять
cd /srv/wb-mcp && docker compose up -d --build
curl https://<MCP_DOMAIN>/healthz # -> {"ok":true}之后更新代码——deploy/update.sh:执行 git pull,重新构建,启动并检查 /healthz,失败时显示日志。
WB 令牌在每个卖家账户中创建:设置 → API 访问 → “问题和评论” 类别。一个账户一个令牌。
两人在同一 VPS 上工作
每个人有独立的 SSH 用户,仅允许密钥登录,密码和 root 登录已禁用。没有共享账户——否则无法知道谁做了什么。
两人都在
wb组(项目目录/srv/wb-mcp,setgid——新文件继承组)和docker组(启动和查看服务)。.env—640 root:wb:两人都可读,服务器上没有外人。代码通过 git 修改,而不是直接在服务器上:
deploy/update.sh中的git pull。每人有个人
MCP_CLIENT_KEYS,不是共享的。日志中可以看到谁访问过;离职时——删除该行并重启,无需轮换 WB 令牌。
连接到 Claude
Claude → 设置 → 连接器 → 添加自定义连接器:
URL https://<MCP_DOMAIN>/mcp,标头 Authorization: Bearer <个人密钥>。
由组织所有者连接——然后连接器可供部门从任何设备使用。在企业版中,可能需要在组织设置中先允许自定义连接器。
安全
令牌只在服务器环境中。不会进入 git(
.gitignore),不会出现在工具响应中,在账户的toString中被替换为占位符。认证 fail-closed:空的
MCP_CLIENT_KEYS——服务器不会启动。开放模式仅通过显式MCP_ALLOW_NO_AUTH=true且仅限 localhost。对外只开放三个路径:
POST /mcp,GET /healthz(无详细信息),GET /status(详细信息,需要密钥)。其他一切在 Caddy 层面返回 404。服务器本身不对外发布端口:唯一入口是通过 Caddy。
发布回复是唯一不可逆操作:
destructiveHint,confirm=true以及服务器上的WB_ALLOW_WRITES开关。已经发送到通信中的令牌被视为已泄露。撤销。
部署时修复的问题
问题 | 原因 |
认证从 fail-open 改为 fail-closed | 空的 |
| 公共端点暴露了内部结构;详细信息移到了需要密钥的 |
评分过滤器移入分页内部 | 请求“投诉,limit=100”返回的不是 100 条投诉,而是前 100 条评论中碰巧出现的几条 |
限流器改为链式 | 并行调用读取同一个 |
| 无状态服务器返回 404 和含糊的错误 |
| 依赖中 express 是 4,类型却是 5 的 |
已验证和未验证
修改的语法和逻辑已审阅;
tsc --noEmit和运行 未执行——工作机器上没有 Node。首次构建在 VPS 上进行(docker compose up -d --build),tsc 将在镜像内运行。未使用真实令牌测试对 WB 的调用。填写
.env后,用wb_feedbacks_unanswered_count检查——这是最便宜的调用。字段组成和限制在发布前核对:https://dev.wildberries.ru(“评论和问题”部分)。
This server cannot be deployed
Maintenance
Related MCP Connectors
Read requests and votes; with write access, manage feedback and draft changelogs. OAuth required.
Read and manage feedback posts, votes and comments on Cawcus boards.
Read AI-gateway analytics, configs, virtual keys, workspaces and users; log request feedback.
Send WhatsApp messages and templates, manage chats, contacts, broadcasts and AI agents.
Related MCP Servers
- AlicenseBqualityBmaintenanceWildberries Seller API MCP server providing 15 tools for managing products, prices, stocks, orders, sales, warehouses, supplies, statistics, feedbacks, and ABC analysis with built-in rate limiting and 409 penalty protection.3051 npm16MIT
- AlicenseAqualityCmaintenanceEnables AI agents to read and work with Wildberries, Ozon, and Yandex Market seller accounts through typed tools, multi-account support, unified data schemas, rate limiting, audit, and encrypted credential storage.1783 npmMIT
- FlicenseAqualityBmaintenanceEnables AI assistants to retrieve a Wildberries seller's product cards and customer reviews through the official Content and Feedbacks APIs.211 npm-
- AlicenseAqualityBmaintenanceEnables read-only analytics and product search for a Wildberries seller account, covering items, advertising, sales, stock, reviews, finances, and tariffs through MCP clients like ChatGPT or Cursor.12MIT