vinted-mcp
Allows searching and analyzing Vinted listings, fetching item details, inspecting seller profiles, comparing prices across countries, and surfacing trending items.
Click on "Install 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., "@vinted-mcpsearch for vintage denim jackets in France under €50"
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.
Vinted MCP Server
An MCP server for Vinted search and analysis that provides tools to search listings, fetch item details, inspect seller profiles, compare prices across countries, and surface trending items.
It also exposes resources for supported countries and category data.
Disclaimer: This project is not affiliated, associated, authorized, endorsed by, or in any way officially connected with Vinted, or any of its subsidiaries or its affiliates. The official Vinted website can be found at vinted.com.
Client support
This server works with MCP clients that support local stdio servers.
Popular clients and setup docs:
Claude Desktop (local): https://support.claude.com/en/articles/10949351-getting-started-with-local-mcp-servers-on-claude-desktop
Claude Desktop (remote): https://support.claude.com/en/articles/11175166-getting-started-with-custom-connectors-using-remote-mcp
ChatGPT (MCP developer mode): https://platform.openai.com/docs/guides/developer-mode
ChatGPT (MCP and connectors): https://platform.openai.com/docs/guides/tools-remote-mcp
Cursor: https://docs.cursor.com/context/model-context-protocol
Full MCP client directory: https://modelcontextprotocol.io/clients
Related MCP server: Mercari MCP Server
Quick start
Option 1: npx
Add this to your MCP client config:
{
"mcpServers": {
"vinted": {
"command": "npx",
"args": ["-y", "@andrijdavid/vinted-mcp"]
}
}
}Option 1b: bunx (canary)
bunx @andrijdavid/vinted-mcp@nextThis starts the server in stdio mode and waits for an MCP client.
Option 2: global install
npm install -g @andrijdavid/vinted-mcpThen configure:
{
"mcpServers": {
"vinted": {
"command": "vinted-mcp"
}
}
}Run in network mode (Streamable HTTP over TCP)
If you need a network endpoint instead of stdio, run:
VINTED_MCP_TRANSPORT=http VINTED_MCP_HOST=127.0.0.1 VINTED_MCP_PORT=3001 bunx @andrijdavid/vinted-mcp@nextOptional:
VINTED_MCP_PATH(default/mcp)VINTED_MCP_ENABLE_LEGACY_SSE(defaulttrue)VINTED_MCP_LEGACY_SSE_PATH(default/sse)VINTED_MCP_LEGACY_MESSAGES_PATH(default/messages)
Default endpoints:
Streamable HTTP (recommended):
http://127.0.0.1:3001/mcpLegacy SSE (older clients):
http://127.0.0.1:3001/sse
CLI usage and env variables
Pass env vars 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@nextPass env vars 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@nextPass env vars inline (Windows Command Prompt)
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@nextUse a local .env file
The server auto-loads .env from the current working directory.
cp .env.example .env
bunx @andrijdavid/vinted-mcp@nextRun network mode from CLI with env
VINTED_MCP_TRANSPORT=http \
VINTED_MCP_HOST=127.0.0.1 \
VINTED_MCP_PORT=3001 \
bunx @andrijdavid/vinted-mcp@nextWindows Command Prompt:
set VINTED_MCP_TRANSPORT=http
set VINTED_MCP_HOST=127.0.0.1
set VINTED_MCP_PORT=3001
bunx @andrijdavid/vinted-mcp@nextAuthentication and environment
The server auto-loads .env from the working directory if present.
Start from the example file:
cp .env.example .envMain variables:
VINTED_AUTH_MODE:http,playwright, orenvVINTED_AUTH_COOKIES: cookie header string or JSON object stringVINTED_AUTH_CSRF_TOKEN: CSRF tokenVINTED_AUTH_ACCESS_TOKEN: optional bearer tokenVINTED_AUTH_REFRESH_TOKEN: optional refresh token, used to mint a new access tokenVINTED_PROFILE_DIR: optional root for browser profiles created bylogin, default~/.vinted-mcpVINTED_PROXY_URL: optional proxy URLVINTED_MAX_CONCURRENCY: optional tuningVINTED_REQUEST_DELAY_MS: optional tuningVINTED_MAX_RETRIES: optional tuning
Example client config with env auth:
{
"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"
}
}
}
}Signing in
Search and price tools work anonymously. Anything tied to your account (like_item) needs a
logged-in session. Run this once per country:
npx @andrijdavid/vinted-mcp login --country frA browser window opens on Vinted. Sign in the way you normally do (password, captcha, 2FA, Google
login all work). The window closes by itself once you are signed in, and the browser profile is
saved to ~/.vinted-mcp/profile-<country>. The server reopens that profile headlessly when it needs
cookies, so the session refreshes itself and there is nothing to copy or paste.
Requirements: Playwright with Chromium (npm i playwright && npx playwright install chromium).
Set VINTED_PROFILE_DIR to move the profile root somewhere other than ~/.vinted-mcp.
Manual cookies (headless servers and CI)
Where no browser can be opened, use VINTED_AUTH_MODE=env and supply the credentials yourself:
Sign in to Vinted in your browser.
Open Developer Tools.
Open
Networkand refresh.Open any
https://www.vinted.<country>/api/...request.Copy from
Request Headers:cookie->VINTED_AUTH_COOKIESx-csrf-token->VINTED_AUTH_CSRF_TOKEN
Optional: copy
authorization: Bearer ...token intoVINTED_AUTH_ACCESS_TOKEN, and therefresh_token_webcookie value intoVINTED_AUTH_REFRESH_TOKEN.
Security notes:
treat these values as secrets
never commit
.envrotate tokens/cookies if exposed
the saved browser profile holds a live session; it is stored with owner-only permissions
Tools
search_items
Search listings with filters like country, price range, brand IDs, category, condition, sort, and limit.
get_item
Get item details by itemId or url.
get_seller
Get seller profile data and optional recent items by sellerId or url.
compare_prices
Compare average and median prices for a query across countries.
get_trending
Return trending items by engagement score.
like_item
Add an item to your favourites by itemId or url, or remove it with unlike: true. Needs a
logged-in session, see Signing in. Already-liked items are left alone rather than
toggled off.
Resources
vinted://countriesvinted://categories
Resource templates
vinted://item/{country}/{itemId}vinted://seller/{country}/{sellerId}vinted://search/{country}/{query}
These templates let clients create direct resource URIs quickly.
Prompt templates
find_best_dealscreen_sellersearch_item_with_filterstrending_reportbuy_or_skip_decisionresale_arbitrage_estimator
These predefined prompts help clients bootstrap common Vinted workflows.
Supported countries: fr, de, uk, it, es, nl, pl, pt, be, at, lt, cz, sk, hu, ro, hr, fi, dk, se.
Local development
npm install
npm run build
npm run bundle
npm startTesting
Run protocol-level tests:
npm testRun live integration tests:
RUN_LIVE_MCP_TESTS=1 npm testLicense
Licensed under AGPL-3.0-or-later.
See LICENSE.md.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceThis MCP scraps vinted for product info. Disclaimer: This script is designed for educational purposes only. It is intended to demonstrate web scraping techniques and should not be used for any commercial or personal gain. Please note that using this software may violate the terms of service of Vint138GPL 3.0
- FlicenseNot gradedqualityDmaintenanceAn MCP server that enables users to search for products on the Mercari marketplace using keywords, categories, and specific filters like price and condition. It provides comprehensive tools for retrieving item details and browsing search results via standard or SSE protocols.
- AlicenseAqualityCmaintenanceComplete Vinted MCP and CLI Server12473MIT
- FlicenseBqualityCmaintenanceMCP server for TikTok that enables searching videos, users, hashtags, and fetching trending content, user profiles, and video details via official API or public scraping.8
Related MCP Connectors
All HasData scraping tools in one MCP server: Google, TikTok, Instagram, maps, e-commerce and more.
Managed LinkedIn MCP server for AI agents: search, connect, message and enrich on accounts you own.
Hosted Amazon Seller and Vendor MCP server for Claude, ChatGPT, Cursor, Codex, Gemini, Copilot.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/andrijdavid/vinted-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server