15 skills and three mutually exclusive optional MCP rows (ru-marketplace-compare, ru-marketplace-decision, ru-marketplace-full) for twelve marketplaces: price comparison across Wildberries, Detsky Mir and Yandex Market, plus per-source search, product cards and reviews, including Ozon, Avito, AliExpress, Taobao, Megamarket, Lamoda, DNS, Citilink and Cian. The 15 skills load on install; the MCP rows stay disabled until RU_MARKETPLACE_MCP_DIR points at a local clone, which needs Python 3.12+ and uv.
Install
# from npm (prebuilt)
dsh plugin --profile web add ru-marketplace-mcp-dsh
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:Vladimir-Human/ru-marketplace-mcp#path:/dsh
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).
README
Read-only MCP servers for Russian marketplaces: prices, stock, ratings, reviews and cross-marketplace price comparison. This bundle ships 15 Agent Skills plus three mutually exclusive MCP server rows that are off by default.
Why off by default
An MCP row that is always mounted is paid on every request, because the
harness registers the schema of every tool in the session context. Estimated
from each server's tools/list by scripts/gen_tools_doc.py (the estimate
scripts/mcp_wire.py uses; CI fails when this table is stale, details in
docs/TOOLS.md):
| Mode | Cost while mounted | Model-facing tools |
|---|---|---|
| Skills only (default) | 15 skill catalog entries; no MCP schemas | 0 |
compare-mcp (recommended) |
~1.7k tokens per request | 4 |
decision-mcp (shortlist inspection) |
~2.0k tokens per request | 5 |
marketplace-mcp (full) |
~13.4k tokens per request | 39 |
The 11 *_selfcheck tools that previously inflated the full server to 45 tools
are now CLI-only (marketplace-mcp doctor); only model-facing tools are
published over MCP.
Requirements
- DeepSeek Harness (
dsh) - Python ≥ 3.12
uv- A local clone of this repository (the MCP rows launch it with
uv run --directory <clone>)
Install (three steps)
Add the bundle to a profile (
webis the profile dsh ships with a UI; use whichever profile you actually run — a bare profile that dsh auto-creates on first use carries no app and cannot be launched):dsh plugin --profile web add ru-marketplace-mcp-dsh # or from GitHub: dsh plugin --profile web add github:Vladimir-Human/ru-marketplace-mcp#path:/dshThe 15 skills appear immediately. No MCP server starts yet.
Clone the server and install its locked environment once:
git clone https://github.com/Vladimir-Human/ru-marketplace-mcp.git cd ru-marketplace-mcp uv sync --frozenSet the gate/path variable so the profile can find the clone and restart the profile. On Windows PowerShell:
$env:RU_MARKETPLACE_MCP_DIR = "C:\path\to\ru-marketplace-mcp"On POSIX shells:
export RU_MARKETPLACE_MCP_DIR=/path/to/ru-marketplace-mcpWith only
RU_MARKETPLACE_MCP_DIRset, the recommended compare mode activates:compare_prices,compare_sources,compare_verify_offer, andcompare_browser_snapshot(under the client'srumarketnamespace).
Middle profile and native vision
Set RU_MARKETPLACE_MCP_DECISION=1 to add decision_inspect without mounting
every source tool. If both decision and full flags are set, full wins. Only one
MCP row is active: full, otherwise decision, otherwise compare.
With CHROME_CHALLENGE_HANDOFF_S=120, supported DOM challenges can retain their
owned browser tab. A client/model that accepts MCP images can call
compare_browser_snapshot(handoff_id) using the handle in the error or comparison
outcome. It receives a bounded JPEG viewport and capture metadata directly;
no separate OCR model or service is invoked. The handle only works in the same
MCP session and does not extend expiry. Text-only clients should skip this tool.
Enabling the full server
Set one more variable before starting dsh:
$env:RU_MARKETPLACE_MCP_FULL = "1" # PowerShell
export RU_MARKETPLACE_MCP_FULL=1 # POSIX shell
The enabled row then changes from compare-mcp (4 tools) to marketplace-mcp
(39 tools). All three rows share serverName: rumarket, and their disabled
conditions are mutually exclusive, so exactly one server instance runs at a
time.
Uninstall
Remove the bundle from the profile and restart it:
dsh plugin --profile web remove ru-marketplace-mcp-dsh
No MCP process survives profile restart without RU_MARKETPLACE_MCP_DIR.
Docker alternative (published and CI-verified)
Since v1.8.0 every release tag builds a stdio image and proves it with a real
MCP session over docker run --rm -i before publishing to the MCP Registry:
initialize, tools/list and a marketplace_sources call. Use the
published GHCR image instead of a local clone:
- id: ru-marketplace-docker
name: '@deepseek-ai/dsh-mcp-client'
disabled: false
config:
serverName: rumarket
transport: stdio
command: docker
args:
- run
- --rm
- -i
- ghcr.io/vladimir-human/ru-marketplace-mcp:2.9.2
failOnStartupError: false
The image defaults to the unified server. Its tool set matches that release tag; unreleased tools in this source checkout are not present in older images.
Source
Main repository: https://github.com/Vladimir-Human/ru-marketplace-mcp
Links
More in this category
tw93/Mole#mole★ 74940
Official agent skill for the open-source Mole CLI (mo), a disk cleanup tool for macOS and Windows: read disk usage, preview and run cleanup, inspect installed apps, and read system health and cleanup history from Mole's JSON output. It previews with --dry-run and asks before removing anything, and leaves app uninstalls and privileged steps to the user's own terminal. The plugin ships only the skill; the CLI is installed separately.
zhu1090093659/dsh-web#packages/dsh-skill-explorer★ 10406
Skill center for the dsh web GUI: browse all loaded skills grouped by source, enable or disable model invocation, create new skills, and delete into a recoverable trash.
QingYunA/answer-me-with-html★ 6309
Answers a question with a one-page visual HTML explainer: the model writes a short Markdown draft and the bundled `am` CLI builds the page, with flow, sequence, tree, timeline and ER diagrams, tables and callouts.
iflytek/skillhub#dsh★ 5418
Browse and search a SkillHub registry and manage local skill installation, updates, and removal inside DeepSeek Harness. Targets DSH 0.2.0-rc.2 and 0.2.1-rc.2; not yet compatible with 0.2.1-rc.3.
hyhmrright/brooks-lint★ 1573
Provides six code quality skills for code review, architecture audits, technical debt, test quality, health dashboards, and remediation.
GanyuanRan/Aegis★ 1441
Software-engineering method pack for coding agents, with skills for baseline-first planning, systematic debugging, prompt hygiene, verification before completion, and repair/retirement tracking.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.