protogrid

Search / com.getecommerceleads/ecommerce-leads

Ecommerce Leads

R0· no sign-in

Ecommerce store metrics by domain: revenue, ad spend, traffic. Log in to search 600k+ stores.

v1.1.1 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality77new
Trust96of 100
Uptime, 30 days100%
Latency p50386 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "ecommerce-leads": {
      "type": "http",
      "url": "https://getecommerceleads.com/api/mcp"
    }
  }
}
claude mcp add --transport http ecommerce-leads https://getecommerceleads.com/api/mcp
[mcp_servers.ecommerce-leads]
url = "https://getecommerceleads.com/api/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ecommerce-leads": {
      "type": "remote",
      "url": "https://getecommerceleads.com/api/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "ecommerce-leads": {
      "type": "http",
      "url": "https://getecommerceleads.com/api/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=ecommerce-leads&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vZ2V0ZWNvbW1lcmNlbGVhZHMuY29tL2FwaS9tY3AifQ%3D%3D"
}
{
  "servers": {
    "ecommerce-leads": {
      "type": "http",
      "url": "https://getecommerceleads.com/api/mcp"
    }
  }
}
{
  "mcpServers": {
    "ecommerce-leads": {
      "httpUrl": "https://getecommerceleads.com/api/mcp"
    }
  }
}
extensions:
  "ecommerce-leads":
    enabled: true
    name: "ecommerce-leads"
    type: streamable_http
    uri: "https://getecommerceleads.com/api/mcp"
    timeout: 300

Quality 77 / 100new

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene79 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • warn
    tools.description_length1 tools have descriptions over 1,024 characters, which crowds the context
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations21 of 21 tools declare readOnlyHint or destructiveHint
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: sendFeedback (idempotentHint); listSignalSets (idempotentHint); createWatchlist (idempotentHint); …
  • pass
    tools.token_costabout 4,752 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stabilityn/a · weight 15
  • n/a
    stability.changes, stability.rug_pulltool history recorded for 3 of the 7 days needed
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

21 tools, about 4,752 tokens to load them all · tool set 08f1c172b10d · tools last changed 2026-11-06 · checked 2026-11-07 17:28 UTC

Tool changes

  • removeFromWatchlistchangedannotations
  • exportStoreschangedtitle, annotations
  • sendFeedbackchangedtitle, annotations
  • updateOutreachStatuschangedtitle, annotations
  • addToWatchlistchangedtitle, annotations
  • removeFromWatchlistchangedtitle, annotations
  • deleteWatchlistchangedtitle, annotations
  • renameWatchlistchangedtitle, annotations
  • createWatchlistchangedtitle, annotations
  • deleteSignalSetchangedtitle, annotations

Showing the latest 10. Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 96 / 100

provenance85
liveness100
freshness100
hygiene100

+repository +dns-namespace +website +reachable +uptime-100% +updated-3d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://getecommerceleads.com/api/mcp streamable-httpnoneyes100%386 ms2025-11-252026-11-07

Tools (21)

addToWatchlistdestructiveAdd domains to a watchlist (merge, nothing is removed). THIS SPENDS CREDITS: 1 credit per domain that is new to the list. Before you call it, tell the user the cost of 1 credit per store and how many domains you will add, then ask the user to confirm. Never call it without the confirmation. If you have too few credits, the result shows the cost and your balance, and nothing is added. Paid plans only.
createWatchlistCreate an empty watchlist. You can have at most 10 lists, including the blacklist. Paid plans only.
deleteSignalSetdestructiveDelete one of your signal sets. The set stops matching stores and disappears from listSignalSets and from the dashboard tabs. You cannot undo this. Ask the user to confirm before you call it. Say the name of the set in your question. Paid plans only.
deleteWatchlistdestructiveDelete one of your watchlists with all its domains. The blacklist cannot be deleted. Ask the user to confirm before you call it. Paid plans only.
exportStoresread-onlyExport revealed stores as CSV text. Stores you have not revealed are skipped. The result holds the header row and at most 200 data rows; it says when it cut the rows. For a larger export, narrow the selection or download the file in the dashboard. Paid plans only.
getRevealCostread-onlyPreview the credit cost of a reveal. Nothing is charged and nothing is revealed. Returns the cost of each action (details, ceo, marketing, ecommerce) for the selected stores.
getRevealStatusread-onlyCheck the status of contact searches you started in the dashboard, and your credit balance. Read only.
getSignalSetread-onlyGet one of your signal sets, with its criteria. Paid plans only.
getStoreChartread-onlyGet the latest 24 points of one metric for a store, for a chart. Values use your currency.
getWatchlistread-onlyGet the domains of one watchlist or the blacklist, 100 per page. To see store data for a watchlist, call searchStores with tab "watchlist:{id}". Paid plans only.
listSignalSetsread-onlyList your signal sets, with the signal catalog and the ICP columns you can use in criteria. Paid plans only.
listWatchlistsread-onlyList your watchlists and your blacklist, with the domain count of each. Paid plans only.
lookupStoreread-onlyLook up one ecommerce store by domain. The reply has company data, estimated revenue, marketing budget, traffic, Google and Meta ad spend, ad counts, a Conversion Rate Score, buying signals, the store phone number, and social and ad-library links. Decision-maker contact fields are not in the fields list. With OAuth access, the decisionMakers object shows the contacts that you revealed. When other active stores use the same base domain, the reply has sharedMetrics. Those stores show the same traffic and ad numbers, because the data belongs to the base domain. Limits: anonymous access, 20 lookups per hour per IP. OAuth access, 20 lookups per minute, and the call writes a lookup history row.
previewSignalSetread-onlyCheck whether candidate signal criteria match enough stores (80 or more). Returns {"enough": true|false}. It does not save anything. Paid plans only.
removeFromWatchlistdestructiveRemove one domain from a watchlist or from the blacklist. Paid plans only.
renameWatchlistRename one of your watchlists. The blacklist cannot be renamed. Paid plans only.
revealStoresdestructiveReveal data for stores. THIS SPENDS CREDITS. Before you call it, call getRevealCost for the same selection and tell the user the cost, or state the cost of 1 credit per store, then ask the user to confirm. Never call it without the confirmation. details unlocks the profile links, buying signals and phone. ceo, marketing and ecommerce start a decision-maker contact search (1 credit per store, +1 for a store whose details are not revealed yet). A store you already revealed costs 0. If you have too few credits, the result shows the cost and your balance, and nothing is charged. Use getRevealStatus to follow a contact search.
saveSignalSetdestructiveCreate a signal set, or replace the criteria of an existing one. Without setId it creates a new set (the plan limit applies). With setId it updates that set and replaces all its signals, legacy categories and ICP filters with the new criteria. Conditions that you did not set (saved custom SQL conditions) stay on the set, joined with AND. Then the reply has preservedConditions, the number of these conditions. Use previewSignalSet first to check that the criteria match enough stores. Paid plans only.
searchStoresread-onlySearch the store catalog like the Ecommerce Leads dashboard. Returns 30 rows per page. Stores you have not revealed show masked values for the hidden fields; revealed stores show the real values. By default, each row has storeId, 9 key columns (Industry, Country, revenue, Total Traffic, Google and Meta ad spend, Buying Signals, Buying Signals List, Status) and a short "reveal" object (revealed, contactTypes, pendingTypes). Use the columns argument to choose other columns, or ["*"] for all columns and the full reveal object. The result has the column list only when includeColumns is true. The result has the exact total. If the count fails, the result has totalAtLeast (a lower bound that grows on each page) and a note. Use hasMore to decide whether to fetch the next page, and do not report totalAtLeast as the number of matches. When other active stores use the same base domain, the row has sharedMetrics {basedomain, relatedStoreCount}. Those stores show the same traffic and ad numbers, because the data belongs to the base domain.
sendFeedbackSend a feedback message to the Ecommerce Leads team. Limit: 5 messages per hour.
updateOutreachStatusSet the outreach status of one store that you revealed. Use the storeId from a searchStores row. If you did not reveal the store, the tool returns an error. Use revealStores first. A store in a revealed group is accepted at no credit cost.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "com.getecommerceleads/ecommerce-leads",
  "icons": [
    {
      "src": "https://getecommerceleads.com/assets/el_logo_big.png",
      "sizes": [
        "512x512"
      ],
      "mimeType": "image/png"
    }
  ],
  "title": "Ecommerce Leads",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://getecommerceleads.com/api/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "1.1.1",
  "repository": {
    "url": "https://github.com/matosdfm/ecommerce-leads-mcp",
    "source": "github"
  },
  "websiteUrl": "https://getecommerceleads.com/docs",
  "description": "Ecommerce store metrics by domain: revenue, ad spend, traffic. Log in to search 600k+ stores."
}