Vinted
Um servidor MCP para busca e análise no Vinted que fornece ferramentas para pesquisar anúncios, obter detalhes de itens, inspecionar perfis de vendedores, comparar preços entre países e destacar itens em tendência.
Documentação
Servidor MCP Vinted
Um servidor MCP para busca e análise no Vinted que fornece ferramentas para pesquisar anúncios, obter detalhes de itens, inspecionar perfis de vendedores, comparar preços entre países e exibir itens em alta.
Ele também expõe recursos para países suportados e dados de categorias.
Aviso: Este projeto não é afiliado, associado, autorizado, endossado pelo Vinted, nem oficialmente conectado a ele ou a qualquer uma de suas subsidiárias ou afiliadas. O site oficial do Vinted pode ser encontrado em vinted.com.
Suporte a clientes
Este servidor funciona com clientes MCP que suportam servidores locais stdio.
Clientes populares e documentação de configuração:
- Claude Desktop (local): https://support.claude.com/en/articles/10949351-getting-started-with-local-mcp-servers-on-claude-desktop
- Claude Desktop (remoto): https://support.claude.com/en/articles/11175166-getting-started-with-custom-connectors-using-remote-mcp
- ChatGPT (modo desenvolvedor MCP): https://platform.openai.com/docs/guides/developer-mode
- ChatGPT (MCP e conectores): https://platform.openai.com/docs/guides/tools-remote-mcp
- Cursor: https://docs.cursor.com/context/model-context-protocol
- Windsurf: https://docs.windsurf.com/windsurf/cascade/mcp
- Cline: https://docs.cline.bot/mcp/configuring-mcp-servers
- Diretório completo de clientes MCP: https://modelcontextprotocol.io/clients
Início rápido
Opção 1: npx
Adicione isto à configuração do seu cliente MCP:
{
"mcpServers": {
"vinted": {
"command": "npx",
"args": ["-y", "@andrijdavid/vinted-mcp"]
}
}
}
Opção 1b: bunx (canary)
bunx @andrijdavid/vinted-mcp@next
Isso inicia o servidor no modo stdio e aguarda um cliente MCP.
Opção 2: instalação global
npm install -g @andrijdavid/vinted-mcp
Em seguida, configure:
{
"mcpServers": {
"vinted": {
"command": "vinted-mcp"
}
}
}
Executar no modo de rede (Streamable HTTP sobre TCP)
Se você precisar de um endpoint de rede em vez de stdio, execute:
VINTED_MCP_TRANSPORT=http VINTED_MCP_HOST=127.0.0.1 VINTED_MCP_PORT=3001 bunx @andrijdavid/vinted-mcp@next
Opcional:
VINTED_MCP_PATH(padrão/mcp)VINTED_MCP_ENABLE_LEGACY_SSE(padrãotrue)VINTED_MCP_LEGACY_SSE_PATH(padrão/sse)VINTED_MCP_LEGACY_MESSAGES_PATH(padrão/messages)
Endpoints padrão:
- Streamable HTTP (recomendado):
http://127.0.0.1:3001/mcp - SSE legado (clientes mais antigos):
http://127.0.0.1:3001/sse
Uso via CLI e variáveis de ambiente
Passar variáveis de ambiente inline (macOS/Linux)
VINTED_AUTH_MODE=env \
VINTED_AUTH_COOKIES='session_cookie=your_value; other_cookie=your_value' \
VINTED_AUTH_CSRF_TOKEN='your_csrf_token' \
bunx @andrijdavid/vinted-mcp@next
Passar variáveis de ambiente inline (PowerShell)
$env:VINTED_AUTH_MODE = "env"
$env:VINTED_AUTH_COOKIES = "session_cookie=your_value; other_cookie=your_value"
$env:VINTED_AUTH_CSRF_TOKEN = "your_csrf_token"
bunx @andrijdavid/vinted-mcp@next
Passar variáveis de ambiente inline (Prompt de Comando do Windows)
set VINTED_AUTH_MODE=env
set VINTED_AUTH_COOKIES=session_cookie=your_value; other_cookie=your_value
set VINTED_AUTH_CSRF_TOKEN=your_csrf_token
bunx @andrijdavid/vinted-mcp@next
Usar um arquivo .env local
O servidor carrega automaticamente o .env do diretório de trabalho atual.
cp .env.example .env
bunx @andrijdavid/vinted-mcp@next
Executar o modo de rede a partir da CLI com env
VINTED_MCP_TRANSPORT=http \
VINTED_MCP_HOST=127.0.0.1 \
VINTED_MCP_PORT=3001 \
bunx @andrijdavid/vinted-mcp@next
Prompt de Comando do Windows:
set VINTED_MCP_TRANSPORT=http
set VINTED_MCP_HOST=127.0.0.1
set VINTED_MCP_PORT=3001
bunx @andrijdavid/vinted-mcp@next
Autenticação e ambiente
O servidor carrega automaticamente o .env do diretório de trabalho, se presente.
Comece pelo arquivo de exemplo:
cp .env.example .env
Variáveis principais:
VINTED_AUTH_MODE:http,playwrightouenvVINTED_AUTH_COOKIES: string de cabeçalho de cookie ou string de objeto JSONVINTED_AUTH_CSRF_TOKEN: token CSRFVINTED_AUTH_ACCESS_TOKEN: token bearer opcionalVINTED_AUTH_REFRESH_TOKEN: token de atualização opcional, usado para gerar um novo token de acessoVINTED_PROFILE_DIR: raiz opcional para perfis de navegador criados porlogin, padrão~/.vinted-mcpVINTED_PROXY_URL: URL de proxy opcionalVINTED_MAX_CONCURRENCY: ajuste opcionalVINTED_REQUEST_DELAY_MS: ajuste opcionalVINTED_MAX_RETRIES: ajuste opcional
Exemplo de configuração de cliente com autenticação via env:
{
"mcpServers": {
"vinted": {
"command": "npx",
"args": ["-y", "@andrijdavid/vinted-mcp"],
"env": {
"VINTED_AUTH_MODE": "env",
"VINTED_AUTH_COOKIES": "session_cookie=your_value; other_cookie=your_value",
"VINTED_AUTH_CSRF_TOKEN": "your_csrf_token"
}
}
}
}
Entrando
As ferramentas de busca e preço funcionam anonimamente. Qualquer coisa vinculada à sua conta (like_item) precisa de uma
sessão logada. Execute isto uma vez por país:
npx @andrijdavid/vinted-mcp login --country fr
Uma janela do navegador abre no Vinted. Entre da forma que você normalmente faz (senha, captcha, 2FA, login do Google
todos funcionam). A janela fecha sozinha depois que você entra, e o perfil do navegador é
salvo em ~/.vinted-mcp/profile-<country>. O servidor reabre esse perfil sem interface gráfica quando precisa de
cookies, então a sessão se renova sozinha e não há nada para copiar ou colar.
Requisitos: Playwright com Chromium (npm i playwright && npx playwright install chromium).
Defina VINTED_PROFILE_DIR para mover a raiz do perfil para outro lugar que não ~/.vinted-mcp.
Cookies manuais (servidores sem interface gráfica e CI)
Onde nenhum navegador pode ser aberto, use VINTED_AUTH_MODE=env e forneça as credenciais você mesmo:
- Entre no Vinted no seu navegador.
- Abra as Ferramentas do Desenvolvedor.
- Abra
Networke atualize. - Abra qualquer requisição
https://www.vinted.<country>/api/.... - Copie de
Request Headers:cookie->VINTED_AUTH_COOKIESx-csrf-token->VINTED_AUTH_CSRF_TOKEN
- Opcional: copie o token
authorization: Bearer ...paraVINTED_AUTH_ACCESS_TOKEN, e o valor do cookierefresh_token_webparaVINTED_AUTH_REFRESH_TOKEN.
Notas de segurança:
- trate esses valores como segredos
- nunca faça commit de
.env - rotacione tokens/cookies se forem expostos
- o perfil de navegador salvo contém uma sessão ativa; ele é armazenado com permissões somente do proprietário
Ferramentas
search_items
Pesquise anúncios com filtros como país, faixa de preço, IDs de marca, categoria, condição, ordenação e limite.
get_item
Obtenha detalhes do item por itemId ou url.
get_seller
Obtenha dados do perfil do vendedor e itens recentes opcionais por sellerId ou url.
compare_prices
Compare preços médios e medianos para uma consulta entre países.
get_trending
Retorne itens em alta por pontuação de engajamento.
like_item
Adicione um item aos seus favoritos por itemId ou url, ou remova-o com unlike: true. Precisa de uma
sessão logada, veja Entrando. Itens já curtidos são mantidos em vez de
serem desativados.
Recursos
vinted://countriesvinted://categories
Modelos de recursos
vinted://item/{country}/{itemId}vinted://seller/{country}/{sellerId}vinted://search/{country}/{query}
Esses modelos permitem que os clientes criem URIs de recursos diretos rapidamente.
Modelos de prompt
find_best_dealscreen_sellersearch_item_with_filterstrending_reportbuy_or_skip_decisionresale_arbitrage_estimator
Esses prompts predefinidos ajudam os clientes a iniciar fluxos de trabalho comuns do Vinted.
Países suportados: fr, de, uk, it, es, nl, pl, pt, be, at, lt, cz, sk, hu, ro, hr, fi, dk, se.
Desenvolvimento local
npm install
npm run build
npm run bundle
npm start
Testes
Execute testes de nível de protocolo:
npm test
Execute testes de integração ao vivo:
RUN_LIVE_MCP_TESTS=1 npm test
Licença
Licenciado sob AGPL-3.0-or-later.
Veja LICENSE.md.