Japan Used Market (cameras, watches, guitars, trains)

io.github.Enu27由 GitHub 账号 Enu27 发布v0.5.1更新于 Nov 6, 2026

Search, price stats, history and alerts for Japan's used camera, watch, guitar and model-train shops

概览

AI 生成的概览

搜索、比价并监控日本二手相机、手表、乐器与模型火车商店,通过你自己的 Apify 账户计费运行。

可以做什么
  • 列出支持的市场、各商店 id、成色等级与价格历史覆盖范围
  • 按关键词、品牌、成色和日元价格区间搜索当前二手在售商品,返回商店、成色、日元/美元价格与链接
  • 按型号汇总当前在售价格:数量、最低/中位/最高价(按商店与成色),以及最便宜的一条
  • 读取已存快照的每日价格历史,可按商店与成色查看最近若干天
  • 在你的 Apify 账户中创建定时任务,推送新品、降价、涨价、售罄提醒,可发送到 webhook
适用场景
适合挑选或比较日本二手相机、手表、吉他/乐器、模型火车时使用,判断价格是否合理、查看某型号中位价走势,或为新品上架设置定期提醒。
运行要求
通过 npx 本地运行,需要 Node.js 20+。需要 Apify API 令牌,放在 APIFY_TOKEN 环境变量中(HTTP 模式下也可用 Authorization Bearer 头);运行费用计入该 Apify 账户。需要访问 Apify 与各商店页面的网络。
安装前请注意
APIFY_TOKEN 是付费账户凭据,每次运行都按结果数量计入你的 Apify 账户费用。start_monitor 会在你的 Apify 账户中创建 Task 和默认每小时的 Schedule,并可向指定的 webhook 地址推送提醒,用完后需在 Apify 控制台删除。价格是商店含税标价而非成交价,且该服务与各商店无关联。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Japan Used Market (cameras, watches, guitars, trains),将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Japan Used Market — MCP server (cameras, watches, guitars, model trains)

[CI] [npm]

An MCP server that lets Claude and other MCP clients search, price and watch Japan's used camera, watch, musical-instrument and model-train shops. Every tool takes a market: "camera" (default), "watch", "instrument" or "model-train".

MarketShop (sources id)CoverageGrades, best → worst
cameraFujiya Camera, Nakano (fujiya)full used stock, ~3,500NEW > A > AB+ > AB > AB- > B > ASIS > PARTS
Sanpou Camera, Jiyugaoka (sanpou)full used stock, ~1,300
Naniwa / Lemon-sha / Takachiho (naniwa)new arrivals only, ~200–300
Hard Off Off Mall (hardoff)cameras and lenses on sale, ~16,000
watchWATCHNIAN (watchnian)full used stock, ~3,900; box / warranty cardNEW > UNUSED > SA > A > AB > B > C > JUNK, plus ANTIQUE
GINZA RASIN (rasin)used luxury watches of 21 brands, ~4,000; not graded
Jackroad (jackroad)new arrivals only, ~800
Hard Off Off Mall (offmall)wristwatches on sale, ~24,000
instrumentShimokura Gakki (shimokura)full used stock, ~1,400 guitars, basses, wind instruments, effects; not gradedReverb scale: BRAND_NEW > MINT > EXCELLENT > VERY_GOOD > GOOD > FAIR > POOR > NON_FUNCTIONING
J-Guitar (jguitar)marketplace listing shops across Japan, ~11,000 used; one 9-step scale; listing shop in store
Ishibashi Music (ishibashi)full used stock, ~8,500
Shimamura Music (shimamura)full used stock, ~5,500; not graded
Ikebe Music (ikebe)used and vintage, ~1,400; not graded
Hard Off Off Mall (offmall)guitars, basses, woodwinds, brass on sale, ~13,000
model-trainHobbyland Pochi (pochi)full used stock, ~12,000 N / HO trains; maker code + JANNEW > MINT > EXCELLENT > VERY_GOOD > GOOD > FAIR > JUNK, plus CUSTOM
Hard Off Off Mall (offmall)model trains on sale, ~9,600; motor + case

Grades are normalized across shops, and every shop's own label is kept as well. Prices come in JPY and USD. Watches also carry the reference number (e.g. SBGA211, 16233). Instruments carry the model code (ST57-70TX, JB62-58), country of manufacture (madeIn; Fender is split into Fender Japan / USA / Mexico), production year / era, case and the Reverb condition name. Model trains carry the maker's product code (KATO 10-1332, TOMIX 98313, MicroAce A-6590), scale (N / HO / Z), set type (set / add-on / single), whether a powered car is included, case / manual / sleeve and the lot year.

It runs the Japan Used Camera Market and Japan Used Watch Market, Japan Used Guitar & Instrument Market and Japan Used Model Train Market Actors on Apify with your own Apify token, so runs are billed to your Apify account. That is pay per result, and the free plan's monthly credit covers light use.

Renamed from @keiya-dev/japan-used-camera-mcp. The old package still works (it now just starts this one), and calls without market behave exactly as in 0.2.0. Switch the package name in your config when convenient.

Install

You need Node.js 20+ and an Apify API token: Apify Console → Settings → API & Integrations.

Claude Desktop

Edit claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
json
{  "mcpServers": {    "japan-used-market": {      "command": "npx",      "args": ["-y", "@keiya-dev/japan-used-market-mcp"],      "env": { "APIFY_TOKEN": "apify_api_..." }    }  }}

Restart Claude Desktop. The five tools appear under the 🔨 icon.

Claude Code

bash
claude mcp add japan-used-market -e APIFY_TOKEN=apify_api_... -- npx -y @keiya-dev/japan-used-market-mcp

Cursor / other stdio clients

Command npx, args ["-y", "@keiya-dev/japan-used-market-mcp"], env APIFY_TOKEN.

Streamable HTTP

bash
APIFY_TOKEN=apify_api_... npx -y @keiya-dev/japan-used-market-mcp --http --port 3000
  • Endpoint http://localhost:3000/mcp; health check /health.
  • Each request may send its own token as Authorization: Bearer <APIFY_TOKEN>; otherwise the server's APIFY_TOKEN is used.
  • The server is stateless (POST only, JSON responses).

Tools

ToolWhat it doesTypical time
list_marketsThe markets, their shop ids, grades, price-history coverage and example keywords. No Apify run.instant
search_listingsCurrent listings matching keywords / brands / grades / minPriceJpy / maxPriceJpy from the selected sources. Returns shop, title, brand, model key, normalized + raw grade, JPY, USD, stock flag and URL; watches add ref, gender and accessories (e.g. box + warranty card; WATCHNIAN, GINZA RASIN and Jackroad); instruments add ref, type, madeIn, year, era, case, reverbCondition and store; model trains add productCode, scale, setType, motorized, accessories, lotYear and store. maxItems 1–200 (default 20).15–60 s
price_statsPer-model summary of in-stock listings right now: count, min / median / max (JPY and USD) by shop and by grade, cheapest listing. maxItems = listings read first (default 300; 0 = everything, ~25 min with all shops).1–4 min
price_historyDaily min / median / max / count per model, by shop, grade and shop × grade, for the last days (default 90). Reads stored snapshots (since 2026-11-05: daily for Fujiya, Sanpou, Naniwa, WATCHNIAN, GINZA RASIN, Jackroad, Shimokura, Ishibashi, Shimamura, Ikebe and Hobbyland Pochi; weekly on Sundays for J-Guitar and Hard Off), so there is no crawling. Needs keywords, brands or models (model keys from price_stats).seconds
start_monitorCreates, in your Apify account, a saved Task in monitor mode plus a Schedule (default hourly, cron, timezone) and starts the first run (baseline). Later runs emit only NEW / PRICE_DROP / PRICE_UP / SOLD_OUT, optionally POSTed to alertWebhookUrl (Slack, Discord, n8n…). Your client should confirm with you first; delete the Task/Schedule in Apify Console when done.~1 min to set up

sources and grades must belong to the chosen market (default: all of its shops). A mismatch, e.g. market: "watch" with sources: ["fujiya"], returns an error naming the valid values without starting a run. Monitors are named jucm-monitor-<name> (camera), juwm-monitor-<name> (watch), juim-monitor-<name> (instrument) or jutm-monitor-<name> (model-train) in your Apify account.

Example prompts

  • "What's the cheapest AB-or-better Leica M6 in Japanese shops right now?"
  • "Compare Nikon Zf prices by shop and grade."
  • "How has the median Fujifilm X100VI price moved over the last 30 days?"
  • "Watch for new Voigtländer lenses under ¥80,000 and post them to my Slack webhook https://hooks.slack.com/services/…"
  • "Find a Grand Seiko SBGA211 in SA or better with box and papers, and give me the USD price."
  • "What's the median price of a Rolex 16233 in Japan, by shop?"
  • "Alert me on Discord when a new King Seiko appears."
  • "Find a Made in Japan Fender Jazz Bass from the 80s or 90s with a hard case, with the USD price."
  • "What do Fender Japan ST57s sell for in Japan, by shop and condition?"
  • "Alert me when a new Tokai or Greco Les Paul appears in Japan."
  • "Find a KATO 0-series Shinkansen set that includes the motor car, under $150."
  • "What does TOMIX 98313 sell for in Japan, by shop and condition?"
  • "Alert me when a MicroAce Odakyu set appears in Japan."

Develop

bash
npm installnpm test            # tsc build + end-to-end tests (stdio, HTTP, missing token; camera + watch + instrument + model-train, market validation) against a fake Apify APInpm run start       # stdionpm run start:http  # HTTP on :3000

APIFY_API_BASE_URL overrides the Apify API base URL (used by the tests).

Notes

License

MIT

来源:README.md,提交 4e97936

工具

5

list_markets

List markets, shops and grades

Lists the markets this server covers (used cameras, used watches, used musical instruments, used model trains) with each market's shop ids, condition grades (best to worst), price-history coverage and example keywords. Free and instant — call it first when unsure which sources / grades are valid.

无需输入参数。

search_listings

Search used listings in Japan

Search current used listings at Japanese shops — cameras / lenses (Fujiya Camera, Sanpou Camera, Naniwa new arrivals, Hard Off Off Mall) or wristwatches (WATCHNIAN, Hard Off Off Mall) or guitars / basses / wind instruments (Shimokura Gakki, Hard Off Off Mall) or N / HO model trains (Hobbyland Pochi, Hard Off Off Mall). Returns title, brand, normalized condition grade, price in JPY and USD, stock status and URL; watches add reference number, gender and box / warranty card (WATCHNIAN); instruments add model code, instrument type, country of manufacture (madeIn), production year / era, case, Reverb condition name and store; model trains add maker product code, scale (N / HO / Z), set type (set / add-on / single), motorized flag, case / manual / sleeve and lot year. Takes ~15–60 s.

输入参数brandsgradesmarketsourceskeywordsmaxItemsmaxPriceJpyminPriceJpyincludeSoldOut

price_stats

Current price stats per model

Per-model price summary of in-stock listings right now: count and min / median / max (JPY and USD), broken down by shop and by normalized condition grade, plus the cheapest listing. Watches are grouped by brand + reference number, instruments by brand + model code, model trains by maker + product code. Use keywords to stay fast (~1–4 min).

输入参数brandsgradesmarketsourceskeywordsmaxItemsmaxPriceJpyminPriceJpy

price_history

Daily price history per model

Daily min / median / max / count per model, by shop and condition grade, from stored snapshots of the shops (camera: Daily since 2026-11-05 for fujiya, sanpou, naniwa; hardoff weekly (Sundays). watch: Daily since 2026-11-05 for watchnian, rasin, jackroad; offmall weekly (Sundays). instrument: Daily since 2026-11-05 for shimokura, ishibashi, shimamura, ikebe; jguitar and offmall weekly (Sundays). model-train: Daily since 2026-11-05 for pochi; offmall weekly (Sundays). The first month is short). No crawling — returns in seconds. Needs keywords, brands or models.

输入参数daysbrandsgradesmarketmodelssourceskeywordsmaxPriceJpyminPriceJpy

start_monitor

Start a change monitor (scheduled)

Creates, in the user's own Apify account, a saved Task running the market's Actor in monitor mode and a Schedule for it (hourly by default), then starts the first run to record the baseline. Later runs emit only changes (NEW / PRICE_DROP / PRICE_UP / SOLD_OUT) and can POST them to a Slack / Discord / n8n webhook. This creates resources and recurring runs that use the user's Apify credit — confirm with the user first.

输入参数cronname必填brandsgradesmarketsourceskeywordstimezonealertEventsmaxPriceJpyminPriceJpyalertWebhookUrl

版本历史

3
  1. v0.5.1最新Nov 5, 2026
  2. v0.5.0Nov 5, 2026
  3. v0.4.0Nov 4, 2026

评分

已满足适用检查项的 90%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分
  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分