get_seller
Fetch a seller's public profile on Vinted using their numeric user ID. Get username, active listings, feedback reputation score, total feedback count, country, and profile URL.
Instructions
Fetch a seller's public profile by their numeric user ID. Returns username, active listing count, feedback reputation score (0–1 float), total feedback count, country code, and profile URL. Use get_seller_feedback to read review texts and star ratings, and get_seller_items to browse their listings.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sellerId | Yes | Numeric Vinted user ID, visible in profile URLs: vinted.fr/member/12345-username | |
| country | No | Country site where the seller is registered | fr |
Implementation Reference
- src/ops/get-seller.ts:5-11 (handler)Handler function for the get_seller tool. Validates sellerId, then calls the lower-level getSeller endpoint function.
export async function opGetSeller( client: VintedClient, input: { sellerId: number; country?: Country }, ): Promise<Seller> { if (!input.sellerId) throw new Error('sellerId is required'); return getSeller(client, input.sellerId, input.country ?? 'fr'); } - src/client/types.ts:81-90 (schema)Seller type definition used as the return type for get_seller.
export interface Seller { id: number; username: string; itemCount?: number; feedbackReputation?: number; feedbackCount?: number; countryCode?: string; profileUrl: string; raw?: unknown; } - src/mcp.ts:59-69 (schema)MCP tool registration with name 'get_seller', description, and inputSchema defining sellerId (required integer) and country (optional enum with default 'fr').
{ name: 'get_seller', description: 'Fetch a seller\'s public profile by their numeric user ID. Returns username, active listing count, feedback reputation score (0–1 float), total feedback count, country code, and profile URL. Use get_seller_feedback to read review texts and star ratings, and get_seller_items to browse their listings.', inputSchema: { type: 'object', properties: { sellerId: { type: 'integer', description: 'Numeric Vinted user ID, visible in profile URLs: vinted.fr/member/12345-username' }, country: { type: 'string', enum: COUNTRIES, default: 'fr', description: 'Country site where the seller is registered' }, }, required: ['sellerId'], }, - src/mcp.ts:221-221 (registration)Routes the 'get_seller' tool call to the opGetSeller handler in the MCP CallToolRequestSchema handler.
case 'get_seller': result = await opGetSeller(c, a as any); break; - src/client/endpoints.ts:130-147 (helper)Low-level API endpoint function that fetches seller data from the Vinted API at /api/v2/users/{sellerId} and maps the response to the Seller type.
export async function getSeller( client: VintedClient, sellerId: number, country: Country = 'fr', ): Promise<Seller> { const data = await client.apiGet<{ user: any }>(country, `/api/v2/users/${sellerId}`); const u = data.user ?? data; return { id: Number(u.id), username: String(u.login ?? u.username ?? ''), itemCount: u.item_count, feedbackReputation: u.feedback_reputation, feedbackCount: u.feedback_count, countryCode: u.country_code, profileUrl: `https://${DOMAIN[country]}/member/${u.id}`, raw: u, }; }