taobao-mcp
by Sinpensar
README.md
# my-browser-mcp
An MCP server exposing browser automation tools, including Taobao product search/detail lookup via Playwright.
## Setup
```bash
npm install
npx playwright install chromium
```
Taobao currently requires a logged-in session for both search and product-detail pages — a fresh, unauthenticated browser gets redirected to `login.taobao.com`. Log in once, manually, and the session is reused:
```bash
npm run login:taobao
```
This opens a visible Chromium window at Taobao's login page. Log in yourself (QR scan or credentials — the script never touches your credentials, it just waits for you). Press Enter in the terminal once you're logged in, and the session is saved to `auth/taobao-state.json` (override the path with the `TAOBAO_STORAGE_STATE` env var). Re-run this whenever the session expires.
## Run
```bash
npm run dev
```
Runs the MCP server over stdio. Point your MCP client (e.g. Claude Code) at `npx tsx src/index.ts` in this directory.
By default the browser runs headed (`headless: false`) so you can see what it's doing; set `HEADLESS=true` to run headless once you trust it's working.
## Tools
- `open-page`, `click`, `get-page-content`, `screenshot` — generic browser control.
- `taobao-search-products` — search by keyword, returns a best-effort list of `{itemId, title, price, link, imageUrl}`.
- `taobao-get-product-detail` — fetch `{title, price, imageUrl}` for one item, given an item id or `item.taobao.com` URL.
## Limitations
- **Best-effort scraping, not an official API.** Taobao has no public product-search API for general use; this drives a real browser and parses rendered HTML/DOM. Selectors and page structure change without notice and may break these tools at any time.
- **Login required.** Taobao gates search and item pages behind an authenticated session (enforced both via full-page redirects and via background API calls silently redirecting to `login.taobao.com`). Run `npm run login:taobao` first.
- **No CAPTCHA bypass.** If Taobao serves a verification challenge (slider CAPTCHA, risk-control block), the tools detect it and return an explanatory `error` field instead of attempting to solve it — you'll need to complete it yourself via `npm run login:taobao`.
- **ToS.** Automated access to Taobao may violate its Terms of Service. Use at your own risk, keep request volume low, and don't use this for anything resembling scraping at scale.
This server cannot be deployed
Maintenance
ActivitySlowing
ResponsivenessNo issues