commercebridge

Remote MCP connector for eBay, Shopify, Best Buy & Etsy marketplace data via the Commerce API

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
100%
Integridad del esquema
94%
Calidad de los nombres
100%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~3,025Tokens (definiciones de herramientas)
~1.3 KBTamaño de respuesta típico
Impacto significativo en la atención (2.36% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "commercebridge": {
      "url": "https://commercebridge-isaiahduprees-projects.vercel.app/api/mcp"
    }
  }
}

Puntos de conexión remotos

https://commercebridge-isaiahduprees-projects.vercel.app/api/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (14)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢search_ebay(q, category, limit, offset, sort, ...)

Search live eBay listings by keyword and/or category across 8 sites (US, GB, DE, AU, CA, FR, IT, ES), built on eBay's official Browse API. Returns id, title, price, condition, seller feedback, shipping, image, categories, and URL per listing. Returns an honest `credentials_required` error until the upstream deployment has EBAY_CLIENT_ID/EBAY_CLIENT_SECRET provisioned.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "q": {
      "description": "Keyword query. Required unless `category` is given.",
      "type": "string"
    },
    "category": {
      "description": "eBay category id(s) to constrain the search.",
      "type": "string"
    },
    "limit": {
      "description": "Default 20.",
      "type": "integer",
      "minimum": 1,
      "maximum": 200
    },
    "offset": {
      "description": "Default 0.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "sort": {
      "description": "`price` = ascending, `-price` = descending.",
      "type": "string",
      "enum": [
        "price",
        "-price",
        "newlyListed",
        "endingSoonest",
        "distance"
      ]
    },
    "country": {
      "description": "Default us.",
      "type": "string",
      "enum": [
        "us",
        "gb",
        "de",
        "au",
        "ca",
        "fr",
        "it",
        "es"
      ]
    },
    "condition": {
      "description": "Condition enum(s), comma-separated (e.g. NEW,USED).",
      "type": "string"
    },
    "buyingOptions": {
      "description": "FIXED_PRICE and/or AUCTION, comma-separated.",
      "type": "string"
    },
    "priceMin": {
      "type": "number"
    },
    "priceMax": {
      "type": "number"
    },
    "currency": {
      "description": "Default USD.",
      "type": "string"
    },
    "freeShipping": {
      "type": "boolean"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_ebay_item(id, legacy_id, country)

Get one eBay item's full detail — description, brand/MPN/GTIN, color, item specifics, images, return terms, availability, item end date — by REST item id or legacy numeric id. Returns an honest `credentials_required` error until the upstream deployment has eBay app credentials provisioned.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "description": "eBay REST item id, e.g. v1|256801234567|0.",
      "type": "string"
    },
    "legacy_id": {
      "description": "Legacy numeric item id (used when `id` is omitted).",
      "type": "string"
    },
    "country": {
      "description": "Default us.",
      "type": "string",
      "enum": [
        "us",
        "gb",
        "de",
        "au",
        "ca",
        "fr",
        "it",
        "es"
      ]
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_ebay_items(item_ids, country)

Bulk-fetch full item detail for up to 20 eBay items in a single call, given comma-separated item ids. Returns an honest `credentials_required` error until the upstream deployment has eBay app credentials provisioned.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "item_ids": {
      "type": "string",
      "description": "Comma-separated eBay item ids (max 20). Required."
    },
    "country": {
      "description": "Default us.",
      "type": "string",
      "enum": [
        "us",
        "gb",
        "de",
        "au",
        "ca",
        "fr",
        "it",
        "es"
      ]
    }
  },
  "required": [
    "item_ids"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search_ebay_sold(q)

Sold/completed-item price comps. This needs eBay's Marketplace Insights API, which is a limited-release approval separate from the base Browse API. Until that is enabled on the upstream deployment, this always returns a 501 `not_enabled` gate rather than a fabricated result — that is expected, honest behavior, not a bug.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "q": {
      "description": "Keyword query.",
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search_shopify_products(store, limit, page)

List any public Shopify store's product catalog straight from that store's own /products.json — no keys, no auth, works today. Returns title, vendor, product type, tags, price range, variants, images, and URL per product. Pass a bare storefront domain, e.g. `allbirds.com`.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "store": {
      "type": "string",
      "description": "Shopify store domain, e.g. allbirds.com. Required."
    },
    "limit": {
      "description": "Default 50.",
      "type": "integer",
      "minimum": 1,
      "maximum": 250
    },
    "page": {
      "description": "Default 1.",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "store"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_shopify_product(store, handle)

Get one product from a public Shopify store by its handle (slug), from that store's own /products.json — keyless, live now.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "store": {
      "type": "string",
      "description": "Shopify store domain, e.g. allbirds.com. Required."
    },
    "handle": {
      "type": "string",
      "description": "Product handle (slug). Required."
    }
  },
  "required": [
    "store",
    "handle"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_shopify_collections(store, limit, page)

List a public Shopify store's collections (id, handle, title, product count, image) — keyless, live now.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "store": {
      "type": "string",
      "description": "Shopify store domain, e.g. allbirds.com. Required."
    },
    "limit": {
      "description": "Default 50.",
      "type": "integer",
      "minimum": 1,
      "maximum": 250
    },
    "page": {
      "description": "Default 1.",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "store"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search_shopify(store, q, limit)

Filter a public Shopify store's catalog by keyword across title, vendor, product type, and tags — keyless, live now.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "store": {
      "type": "string",
      "description": "Shopify store domain, e.g. allbirds.com. Required."
    },
    "q": {
      "type": "string",
      "description": "Keyword filter, e.g. \"wool runner\". Required."
    },
    "limit": {
      "description": "Default 50.",
      "type": "integer",
      "minimum": 1,
      "maximum": 250
    }
  },
  "required": [
    "store",
    "q"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search_bestbuy(q, category, limit, page)

Search Best Buy's US product catalog by keyword and/or category, built on Best Buy's official Products API. Returns sku, title, sale/regular price, rating, manufacturer/model, image, online/in-store availability, and UPC per product. Errors honestly until this engine is fully live upstream: currently returns `not_found` (route not yet redeployed on the production commerce-api), then `credentials_required` once deployed without BESTBUY_API_KEY provisioned.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "q": {
      "description": "Keyword query. Required unless `category` is given. Matches across name, manufacturer, and description.",
      "type": "string"
    },
    "category": {
      "description": "Best Buy categoryPath.id to constrain the search.",
      "type": "string"
    },
    "limit": {
      "description": "Default 20. Best Buy caps page size at 100.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "page": {
      "description": "Default 1.",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_bestbuy_product(sku)

Get one Best Buy product by SKU, full detail. Errors honestly until this engine is fully live upstream: currently returns `not_found` (route not yet redeployed on the production commerce-api), then `credentials_required` once deployed without BESTBUY_API_KEY provisioned.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "sku": {
      "type": "string",
      "description": "Best Buy SKU, e.g. 6418599. Required."
    }
  },
  "required": [
    "sku"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search_etsy(q, limit, offset, sort_on, sort_order, ...)

Search Etsy's site-wide active listings by keyword, built on Etsy's official Open API v3 (app-only, no OAuth). Returns title, description, price, quantity, tags/materials, favorites, images, and shop per listing. Errors honestly until this engine is fully live upstream: currently returns `not_found` (route not yet redeployed on the production commerce-api), then `credentials_required` once deployed without ETSY_KEYSTRING/ETSY_SHARED_SECRET provisioned.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Keyword query, e.g. \"macrame wall hanging\". Required."
    },
    "limit": {
      "description": "Default 20. Etsy caps limit at 100.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "description": "Default 0.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "sort_on": {
      "type": "string",
      "enum": [
        "created",
        "price",
        "updated",
        "score"
      ]
    },
    "sort_order": {
      "type": "string",
      "enum": [
        "asc",
        "ascending",
        "desc",
        "descending",
        "up",
        "down"
      ]
    },
    "min_price": {
      "type": "number"
    },
    "max_price": {
      "type": "number"
    },
    "taxonomy_id": {
      "description": "Etsy seller-taxonomy category id.",
      "type": "string"
    },
    "shop_location": {
      "type": "string"
    },
    "is_safe": {
      "description": "When true, filters out mature/adult content.",
      "type": "boolean"
    },
    "currency": {
      "description": "ISO 4217 code to convert listing prices into.",
      "type": "string"
    },
    "buyer_country": {
      "description": "ISO 3166-1 alpha-2 — filters to listings that ship there.",
      "type": "string"
    }
  },
  "required": [
    "q"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_etsy_listing(listing_id, language)

Get one Etsy listing by id, full detail — the only endpoint where Etsy's API populates `views` (search and shop-listings results always have `views: null`, since Etsy doesn't carry that field there). Errors honestly until this engine is fully live upstream: currently returns `not_found` (route not yet redeployed on the production commerce-api), then `credentials_required` once deployed without ETSY_KEYSTRING/ETSY_SHARED_SECRET provisioned.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "listing_id": {
      "type": "string",
      "description": "Etsy listing id, e.g. 1234567890. Required."
    },
    "language": {
      "description": "IETF language tag, e.g. de, en, es, fr.",
      "type": "string"
    }
  },
  "required": [
    "listing_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_etsy_shop(shop_id, shop_name)

Get one Etsy shop by shop_id or shop_name — name, listing counts, favorites, total sold, aggregate review count/average. Errors honestly until this engine is fully live upstream: currently returns `not_found` (route not yet redeployed on the production commerce-api), then `credentials_required` once deployed without ETSY_KEYSTRING/ETSY_SHARED_SECRET provisioned.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "shop_id": {
      "description": "Etsy shop id, e.g. 12345678.",
      "type": "string"
    },
    "shop_name": {
      "description": "Used when shop_id is omitted, e.g. PaperGoodsCo.",
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_etsy_shop_listings(shop_id, shop_name, limit, offset, sort_on, ...)

List one Etsy shop's active listings, optionally keyword-filtered within the shop. Errors honestly until this engine is fully live upstream: currently returns `not_found` (route not yet redeployed on the production commerce-api), then `credentials_required` once deployed without ETSY_KEYSTRING/ETSY_SHARED_SECRET provisioned.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "shop_id": {
      "description": "Etsy shop id.",
      "type": "string"
    },
    "shop_name": {
      "description": "Used when shop_id is omitted.",
      "type": "string"
    },
    "limit": {
      "description": "Default 20.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "description": "Default 0.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "sort_on": {
      "type": "string",
      "enum": [
        "created",
        "price",
        "updated",
        "score"
      ]
    },
    "sort_order": {
      "type": "string",
      "enum": [
        "asc",
        "ascending",
        "desc",
        "descending",
        "up",
        "down"
      ]
    },
    "q": {
      "description": "Keyword filter within the shop.",
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada14 herramientas
verificadoversión no registrada14 herramientas
verificadoversión no registrada14 herramientas