shein
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@sheinquanto gastei na Shein este ano?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
shein-mcp
CLI + servidor MCP para o histórico de compras da sua conta na Shein: pedidos, itens, o breakdown que soma o total (produtos, frete, imposto, taxa de parcelamento, seguros), rastreio, devoluções e resumos de gastos, com cache local, para você perguntar quanto gastou sem bater na Shein a cada pergunta.
A Shein não tem API de comprador. O portal de desenvolvedores dela é para
vendedores e não dá acesso ao histórico da sua própria conta. Este projeto
fala a mesma API interna que o site usa (/bff-api/order/* em br.shein.com),
autenticado pelos cookies da sua sessão de navegador. Somente leitura: nenhuma
operação de escrita na conta é implementada, e o escape hatch recusa paths de
escrita por construção.
Sumário
Related MCP server: mbank-parser-mcp
Instalação
Requer Bun ≥ 1.3 (o cache usa bun:sqlite) e o Google
Chrome (o login e o transporte de reserva abrem um Chrome de verdade).
Tudo de uma vez (Claude Code)
git clone https://github.com/maxwellmezadre/shein-mcp.git
cd shein-mcp
bun install
bun run setupsetup compila o binário para ~/.local/bin/shein, registra o servidor MCP
shein no seu ~/.claude.json (escopo de usuário) e instala a skill em
~/.claude/skills/shein-mcp/. Rode de novo para atualizar.
npm
npm i -g @maxwellmezadre/shein-mcp # instala `shein` e `shein-mcp` no PATH
shein --versionO pacote roda com o Bun (#!/usr/bin/env bun, por causa do bun:sqlite),
então o Bun precisa estar instalado.
Binário único
bun run build:binary # gera ./shein, sem precisar de runtime instalado
./shein --versionO binário roda tudo, inclusive o login: o playwright-core vai embutido e o
Chrome vem do sistema.
Login
A senha nunca passa por aqui. Dois caminhos:
shein login # abre o Google Chrome para você entrar
shein login --from-browser chrome # importa a sessão de um navegador já logado (macOS)O segundo é o mais rápido se você já usa a Shein no Chrome, no Arc, no Brave ou
no Edge: ele lê os cookies pelo Keychain (o macOS pede permissão uma vez) e não
abre janela nenhuma. A sessão é gravada cifrada com AES-256-GCM em
~/.config/shein-mcp/session.enc (0600). Detalhes em docs/LOGIN.md.
Uso — CLI
shein status --verify # a Shein ainda aceita a sessão?
shein sync # baixa o histórico para o cache local
shein orders --limit 10 # seus pedidos, do mais novo para o mais antigo
shein order GSH… # um pedido inteiro, com o breakdown de preço
shein track GSH… # rastreio ao vivo
shein search "conjunto" # entre os produtos que você já comprou
shein products --limit 20 # agregado por produto
shein product-history "camisola" # cada compra do produto e a evolução do preço
shein spending --by month # quanto você gastou por mês
shein spending --by breakdown # quanto foi produto, frete, imposto, parcelamento
shein export --format csv # para planilha
shein doctor # qual camada quebrou--json funciona em qualquer comando e imprime exatamente o que o cliente MCP
receberia. Referência completa em docs/CLI.md.
Uso — MCP
O setup já registra o servidor. À mão, no Claude Code:
claude mcp add -s user shein -- /Users/voce/.local/bin/shein mcpOu direto em ~/.claude.json:
{
"mcpServers": {
"shein": { "type": "stdio", "command": "/Users/voce/.local/bin/shein", "args": ["mcp"] }
}
}Use o caminho absoluto: clientes MCP não herdam o PATH do seu shell. Depois
é só perguntar: "quanto gastei na Shein este ano?", "onde está meu último
pedido?", "já comprei essa camisola antes?".
Variáveis de ambiente
Todas opcionais. A tabela completa está em
docs/CONFIGURATION.md.
Variável | Default | Para quê |
|
| Onde ficam sessão, chave e cache |
|
| A loja (outro país muda aqui) |
|
|
|
| — |
|
|
| Não registra as tools que escrevem em disco |
|
| O único diretório onde |
Tools
São 14, iguais no MCP e no CLI. Referência gerada:
docs/TOOLS.md.
Tool | Comando | Rede |
|
| 0 (1 com |
|
| — |
|
| ≤ 4 |
|
| em blocos |
|
| 0 |
|
| 0 (1 se não estiver no cache) |
|
| 1, sempre ao vivo |
|
| 0 |
|
| 0 |
|
| 0 |
|
| 0 (1 com |
|
| 0 |
|
| 0 |
|
| 1 |
Como funciona
O site serve o histórico por duas superfícies: páginas SSR que trazem um bloco
var gbRawData = {…} e uma API JSON interna (/bff-api/order/*) que responde
só com os cookies da sessão. O sync percorre a listagem em blocos, guarda o
payload cru de cada pedido e normaliza tudo para um modelo com dinheiro em
centavos inteiros; as perguntas depois disso são SQL local.
Três regras vieram da conta real e são a espinha do projeto:
totalé a soma das linhas desorted_pricecomshow: "1", verificado em 21 de 21 pedidos. Os campos com nome (subTotalPricee afins) são rótulos da Shein e não formam uma equação.O rastreio mora em
packageMap, não emtrackInfo: em 8 de 21 páginas o segundo simplesmente não existe.A situação do pedido é lida pelos sinais (pagou? expirou? o pacote foi assinado?), não pelo código da Shein. O rótulo dela é a última coisa que aconteceu, não o estado de agora.
O que a API não tem: o número de parcelas (só a taxa). Está documentado em
docs/DATA-MODEL.md para ninguém inventar esse número.
Troubleshooting
Sintoma | O que fazer |
|
|
A sessão expirou | Os cookies duram poucos dias: rode o login de novo |
| Pode ser sessão expirada ou parâmetro errado: |
Bloqueio anti-bot | Pare. Abra |
O cache está vazio |
|
Alguma coisa mudou no site |
|
Documentação
Arquivo | Conteúdo |
Camadas, fluxo e as regras que as separam | |
Todas as variáveis e os arquivos em disco | |
Do zero à primeira resposta | |
Todos os comandos | |
Referência das tools (gerada) | |
Como o login funciona, o que grava, como revogar | |
O modelo, as regras de dinheiro e o que não existe | |
A API interna: endpoints, envelope, armadilhas | |
O que fazer quando a Shein mudar | |
As decisões de projeto e por quê |
Licença
MIT. Uso pessoal, somente leitura, sobre a sua própria conta. Não redistribua os dados nem use isto como serviço multiusuário.
This server cannot be deployed
Maintenance
Related MCP Connectors
Ask data questions in natural language. Get SQL, insights, and charts from your databases.
Brazilian Open Finance MCP — 30+ banks (Itaú, Nubank, etc.) to Claude/Cursor. Read-only.
Query and audit AppSheet apps in natural language via Knotrik's pre-scanned definitions.
Connect your Caixa Tem account to AI via Brazil's Open Finance: balances, statements, cards, investm
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables e-commerce shop owners to query their business data using natural language through local AI models. Provides secure, privacy-focused access to sales reports, inventory management, customer analytics, and order data without sending sensitive information to external services.-
- AlicenseAqualityBmaintenanceEnables parsing and filtering of mBank CSV operation exports locally. Supports data aggregation and querying through natural language, running entirely offline with no network calls.31MIT
- AlicenseNot gradedqualityAmaintenanceEnables read-only access to your Mercado Livre buyer account, letting you query purchase history, products, payments, installments, sellers, and download NF-e invoices through natural language.87 npmMIT
- AlicenseNot gradedqualityAmaintenanceProvides read-only access to a user's AliExpress purchase history, including orders, products, price breakdowns, shipping, refunds, and spending summaries, with local caching.22 npmMIT