Developers: API, MCP and CLI

All three interfaces are read-only, use the same data and include a link to the matching page on the site in every result. The public API, CLI and local MCP need no sign-in; the remote MCP requires signing in with Google or X (free). Please credit bestjapanbuy.com (see the terms). The API data is in Chinese; English and Japanese pages, Markdown and search indexes are listed below.

Public API

Static JSON generated at build time, base URL https://bestjapanbuy.com/api/v1/. Data version 2026.10.24, updated 2026-10-24.

EndpointContents
GET /api/v1/meta.json
Open
Data version, update date, exchange rates, tax rates, tax-free rule versions, "worth it" thresholds
GET /api/v1/categories.json
Open
Category list with attribute definitions, and the brand table
GET /api/v1/products/{category}.json
Example
All models in a category (prices, ratings, compatibility and verdicts)
GET /api/v1/product/{model id}.json
Example
Full details for one model
GET /api/v1/stores.json
Open
Stores, stations and chains
GET /api/v1/rules.json
Open
Compatibility rules (destinations, checks, rules) and tax-free rules
GET /search-index.json
Open
Site search index (Chinese; /en/search-index.json for English)

Every object includes a page link (url), sources (source) and dates; attribution in each response states the credit requirement. Markdown versions: /en/p/{model id}.md, /en/q/{slug}.md (or without a prefix for Chinese), plus /llms.txt and /en/llms-full.txt (prices and destination verdicts for every model).

curl https://bestjapanbuy.com/api/v1/products/rice-cooker.json

MCP server

Remote (Streamable HTTP): https://mcp.bestjapanbuy.com/mcp. Sign-in required: the first time you add it, your AI tool opens a browser where you sign in at bestjapanbuy.com with Google or X and click "Authorize"; the tool renews access automatically after that. Review and revoke tools on the My account page.

Claude Code

claude mcp add --transport http bestjapanbuy https://mcp.bestjapanbuy.com/mcp

After adding it, run /mcp in Claude Code, choose bestjapanbuy → Authenticate, and the sign-in and consent page opens in your browser.

Claude Desktop, claude.ai

Under Settings → Connectors, add a custom connector with https://mcp.bestjapanbuy.com/mcp, click Connect and follow the prompts to sign in and authorize.

Cursor

Add this to ~/.cursor/mcp.json (or the project's .cursor/mcp.json), save, then click Connect / Login in the MCP settings:

{
  "mcpServers": {
    "bestjapanbuy": {
      "url": "https://mcp.bestjapanbuy.com/mcp"
    }
  }
}

Local (no sign-in)

npx -y https://bestjapanbuy.com/cli/bestjapanbuy-latest.tgz mcp

The local server runs over stdio and reads the public API without sign-in. Set BESTJAPANBUY_API to use a different API URL. For Claude Desktop's claude_desktop_config.json:

{
  "mcpServers": {
    "bestjapanbuy": {
      "command": "npx",
      "args": [
        "-y",
        "https://bestjapanbuy.com/cli/bestjapanbuy-latest.tgz",
        "mcp"
      ]
    }
  }
}

Authorization details (for client developers)

  • Implements the MCP authorization spec: OAuth 2.1 authorization code + PKCE (S256); the resource parameter must be https://mcp.bestjapanbuy.com/mcp.
  • Requests without credentials get 401, and resource_metadata in WWW-Authenticate points to the Protected Resource Metadata: https://mcp.bestjapanbuy.com/.well-known/oauth-protected-resource/mcp.
  • Authorization server https://bestjapanbuy.com/auth, metadata https://bestjapanbuy.com/.well-known/oauth-authorization-server/auth. Client identity supports Client ID Metadata Documents; dynamic client registration (/auth/oauth2/register) remains for older clients.
  • Access tokens are JWTs valid for 10 minutes, renewed with a refresh token; revoking access invalidates the refresh token immediately.
  • Rate limits: 120 requests per minute per signed-in user; 60 per minute per IP for requests without valid credentials.

Tools

ToolInputOutput
search_productsCategory, version, price range, brand, attributes, keywordsModel list (price, verdict, page link)
get_productModel id or model string (fuzzy match)Full details
compare_products2–3 model idsSide-by-side specs and differences
check_compatibilityModel id or category, destination country/regionItem-by-item verdicts for voltage, plug, flights and more
worth_itModel id, optional exchange rateJapan cost, mainland China price, verdict and working
find_storesCoordinates or station name, optional categoryNearest stores with directions links
calc_tax_refundPrice, tax included or not, exchange rate, purchase dateTax-free price, refund, CNY and the rule that applies
get_tax_free_rulesPurchase dateTax-free rules and steps that apply on that date

CLI

Command bestjapanbuy, short alias bjb. Requires Node.js 18+; prints Chinese tables by default, add --json for JSON. The CLI is not on npm yet; the package is hosted on this site at https://bestjapanbuy.com/cli/bestjapanbuy-latest.tgz and updated with every deploy.

Run without installing:

npx -y https://bestjapanbuy.com/cli/bestjapanbuy-latest.tgz search rice-cooker --version overseas --budget 60000
npx -y https://bestjapanbuy.com/cli/bestjapanbuy-latest.tgz show NW-YQH10
npx -y https://bestjapanbuy.com/cli/bestjapanbuy-latest.tgz compat hair-dryer --to CN
npx -y https://bestjapanbuy.com/cli/bestjapanbuy-latest.tgz refund 63600 --fx 0.0425
npx -y https://bestjapanbuy.com/cli/bestjapanbuy-latest.tgz mcp   # start the local MCP server (stdio)

Or install globally and use bjb:

npm install -g https://bestjapanbuy.com/cli/bestjapanbuy-latest.tgz
bjb search rice-cooker --version overseas --budget 60000
bjb show NW-YQH10
bjb compare NW-YQH10 JPK-W10W
bjb worth NW-YQH10
bjb stores --near shinjuku

Terms in brief

  • Free to use; credit "BestJapanBuy (bestjapanbuy.com)" and link to the relevant page where possible.
  • The server rate-limits; cache results and keep requests reasonable. The remote MCP is limited per account; do not share or resell your authorization.
  • Prices are for reference only; third-party ratings must not be presented as yours or ours.

Full terms of use