Meta Ads MCP vs Storelift

A side-by-side look at the Meta Ads MCP and Storelift MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

Meta Ads MCP logoMeta Ads MCPMarketing · Local subprocess (stdio)MCP server for Meta Marketing API v25.0 — 123 tools for Facebook & Instagram ad campaigns, audiences, creatives, insights, catalogs, and automated rules.68GreatAuth: api key requiredStorelift logoStoreliftMarketing · Local subprocess (stdio)App Store & Google Play keyword ranks, rivals and AI visibility as an MCP server63GoodAuth: not declared

Verdict: choose Meta Ads MCP for marketing work as a local process; choose Storelift for marketing as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

Meta Ads MCP logoChoose Meta Ads MCP when

  • You need dedicated capabilities in the Marketing domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: API key required.
  • You have the keys it needs: META_ADS_ACCESS_TOKEN, META_AD_ACCOUNT_ID.
  • You want tools like list_campaigns, get_campaign, create_campaign.
Explore Meta Ads MCP

Storelift logoChoose Storelift when

  • You need dedicated capabilities in the Marketing domain.
  • You prefer a local stdio subprocess transport.
  • You have the keys it needs: STORELIFT_API_KEY, STORELIFT_API.
  • You want tools like list_apps, get_keywords, get_rivals.
Explore Storelift

Feature & specification comparison

Rows where the two servers differ are marked.

SpecMeta Ads MCP logoMeta Ads MCPStorelift logoStorelift
CategoryMarketingMarketing
Quality signal68/100 · Great63/100 · Good
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthAPI key requiredNot declared
PricingBYOK (pay the provider)Not declared
Required env varsMETA_ADS_ACCESS_TOKENMETA_AD_ACCOUNT_IDSTORELIFT_API_KEYSTORELIFT_API
Verified ownerCommunity listingCommunity listing
GitHub stars911
Directory activity 2 views 0 installs 0 upvotes 4 views 0 installs 0 upvotes
Tools1348

Tools & capabilities

Meta Ads MCP tools 134

  • list_campaignsList campaigns in the ad account. Supports filtering by status and objective. Returns paginated results.
  • get_campaignGet details of a specific campaign by ID.
  • create_campaignCreate a new ad campaign. Defaults to PAUSED status. Requires name and objective. Budget can be set at campaign or ad set level.
  • update_campaignUpdate an existing campaign. Only provided fields will be modified.
  • delete_campaignDelete a campaign. This action is irreversible.
  • copy_campaignCopy an existing campaign. Creates a duplicate with optional name override. Copies structure including ad sets and ads.
  • get_campaign_adsetsGet all ad sets belonging to a specific campaign.
  • get_campaign_adsGet all ads belonging to a specific campaign.
  • get_campaign_leadsGet leads generated by a specific campaign. Requires leads_retrieval permission.
  • list_adsetsList ad sets in the ad account. Optionally filter by campaign or status.
  • get_adsetGet details of a specific ad set by ID.
  • create_adsetCreate a new ad set. Requires name, campaign_id, budget, optimization_goal, billing_event, and targeting. Defaults to PAUSED status.
  • +122 more on the listing page

Storelift tools 8

  • list_appsList the apps tracked in this Storelift account (id, name, countries, keywords). Call this first — every other tool needs an appId from here.
  • get_keywordsKeyword ranks for one app in one App Store / Google Play country. THREE STATES ARE DISTINCT: measured=false means the query could not be measured, rank=null means it was measured but the app is absent from the top results, rank=<number> is the rank. Never collapse them into one — counting an unmeasured day as zero produces a false answer.
  • get_rivalsApps that rank ABOVE this app in search. For each rival you get the keywords it beats you on, its rank there (theirRank) and yours (ourRank) — ourRank null means the app does not appear for that keyword at all.
  • get_ai_visibilityWhether AI assistants name this app when asked natural questions about its category — reported per engine (Claude / ChatGPT / Gemini), never averaged. This is an OBSERVATION, not a ranking: a model's knowledge is frozen at a date and the answer is not identical every time, so read the trend rather than a single measurement.
  • get_historyKeyword rank history for one country. Series points are [day, rank]; a null rank means the app was absent from the top results that day, which is not the same as a bad rank.
  • get_store_pageThe app's own store listing signals for one country: name, subtitle, version, in-app events, editorial placements, similar-apps shelves and the screenshot set (iOS), plus the Google Play page (exact install count, rating histogram, ad/IAP flags, chart badge). `timeline` lists the dated changes we detected on the listing — the cheapest explanation for a rank move. measured=false means the page was never read; it is not the same as an empty page.
  • get_reviewsRecent reviews for one country: `list` is the App Store feed, `android` the Google Play page (a narrower window, and Play publishes no review title or version). `newCount` is how many arrived since the previous measurement — null means an older record where the field was never written, which is not zero. android=null means Play was never measured; an empty list means there genuinely are no reviews.
  • get_chartsApp Store chart position for one country: current ranks per list (free / paid / grossing, overall and in category) plus their history. Google Play is absent on purpose — Google publishes no chart list, so there is nothing to read, and a number here would be invented.

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

Meta Ads MCP

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "mikusnuz-meta-ads-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@mikusnuz/meta-ads-mcp"
      ],
      "env": {
        "META_ADS_ACCESS_TOKEN": "YOUR_META_ADS_ACCESS_TOKEN_HERE",
        "META_AD_ACCOUNT_ID": "YOUR_META_AD_ACCOUNT_ID_HERE"
      }
    }
  }
}

Storelift

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "storelift": {
      "command": "npx",
      "args": [
        "-y",
        "storelift-mcp"
      ],
      "env": {
        "STORELIFT_API_KEY": "YOUR_STORELIFT_API_KEY_HERE",
        "STORELIFT_API": "YOUR_STORELIFT_API_HERE"
      }
    }
  }
}

Frequently asked questions

Meta Ads MCP is categorized under Marketing and uses a local stdio subprocess. Storelift belongs to Marketing and uses a local stdio subprocess. Pick Meta Ads MCP for marketing work and Storelift for marketing.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

Meta Ads MCP is bring-your-own-key: usage is billed by the API provider you supply a key for. Auth: api key required. Storelift has no declared pricing — check the project's own site. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add mikusnuz-meta-ads-mcp and storelift as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, Meta Ads MCP has a quality signal of 68/100 (Great) with 2 views, 0 installs and 91 GitHub stars. Storelift has 63/100 (Good) with 4 views, 0 installs and 1 GitHub stars.