AppsFlyer MCP server: mobile attribution in Claude and ChatGPT

The Ryze AI AppsFlyer MCP server gives Claude, ChatGPT and Cursor 2 read-only tools: raw-data reports for installs, events and uninstalls, and aggregate reports with cost, revenue, ROI and retention. It shares one URL with the Ryze AI ad platform tools, so one answer can put installs and ROI next to ad spend (see Setup).

  • Any plan
  • Token + App ID
  • 2 tools
Claude logoChatGPT logoCursor logoGrok logo

One connector for Claude, ChatGPT, Cursor and Grok Bot

Ask what your installs cost and what they return

Pulls AppsFlyer raw-data and aggregate reports. Both tools only read, so nothing in AppsFlyer changes.

Try asking

Nine mobile attribution jobs for people who also buy ads

Cost per install next to attributed installs

  • Meta Ads spend by campaign from the ad account
  • AppsFlyer installs and cost for the same campaign names

Which Google campaigns bring paying users

  • Google Ads spend by campaign for the window
  • AppsFlyer revenue and ROI by media source and campaign

Install quality for TikTok campaigns

  • TikTok Ads cost and clicks by campaign
  • AppsFlyer installs and day-7 retention by campaign

Day-7 retention by media source

  • masterReport grouped by media source
  • A ranked list, with sources that have few installs flagged

Where installs and revenue come from

  • Aggregate report grouped by geo
  • Installs, cost and ROI per country in one table

Organic installs against paid installs

  • Raw organic installs report for the date range
  • Compared with non-organic installs from the same pull

In-app events by campaign

  • Raw in-app events with media source, campaign and event name columns
  • Counts per event name and campaign

Spot sources with many uninstalls

  • Raw uninstalls report for the last weeks
  • Grouped by media source and campaign

Clicks, impressions and installs by channel

  • Aggregate clicks, impressions and installs by channel
  • GA4 sessions for the same dates when the app has a web side

01 · Overview

What the Ryze AI AppsFlyer MCP server is

The short version

  1. 01AppsFlyer connects to a Ryze AI workspace with the Pull API token V2.0 and an App ID. Your AI client then connects to Ryze AI with one URL (see Setup).
  2. 02Two tools, both read-only: report returns raw rows and masterReport returns aggregate KPIs.
  3. 03They cover installs, in-app events, organic installs and events, uninstalls, clicks, impressions, sessions, cost, revenue, ROI and day-7 retention.
  4. 04Ad platform tools answer on the same connection, so a question can join campaign cost with the installs behind it.
  5. 05Works with any Ryze AI plan or trial. Paid Ads is $89/mo with a 7-day free trial.
appsflyer · server specOAuth
Server name
Ryze AI (AppsFlyer tools)
Endpoint
https://connector.get-ryze.ai/mcp
Transport
Remote MCP over HTTP
Client sign-in
OAuth to Ryze AI, up to 20 workspaces per connection
AppsFlyer sign-in
API token V2.0 (Pull API token) plus an App ID, entered in Ryze AI
AppsFlyer tools
2 (2 read, 0 write, 0 delete)
Also on this URL
Google Ads, Meta Ads, TikTok Ads, GA4, Search Console and other Ryze AI platforms
Price
Any Ryze AI plan or trial, Paid Ads $89/mo
Checked
November 8, 2026

“AppsFlyer MCP” can mean three things in 2026. AppsFlyer announced its own MCP server, which it describes as a layer that connects its APIs to the LLM you choose and which entered open beta on October 29, 2025. A community project on GitHub wraps the Pull API for self-hosting. The Ryze AI server is a hosted one that reads the same two kinds of report and sits next to ad platform tools. This page documents the Ryze AI server and compares the three in section 06.

01

Token and App ID, no OAuth screen

AppsFlyer connects with the V2.0 Pull API token and an App ID in Ryze AI. The help center says a read-only token is enough.

02

Event-level rows

The report tool returns raw rows for installs, in-app events, organic installs, organic in-app events, uninstalls, clicks or impressions, with extra columns such as media source, campaign, country and event name.

03

Aggregate KPIs

The masterReport tool runs aggregate reports with installs, clicks, impressions, sessions, revenue, cost, ROI and day-7 retention.

04

Grouped your way

Aggregate reports group by media source, campaign, geo, channel or date, so one question can compare sources or countries.

05

Read only

Neither tool writes anything. The connector cannot change a setting, a postback or a token in AppsFlyer.

06

Connect from the chat

Ask the Ryze AI agent in Claude or ChatGPT to connect AppsFlyer and it sends a one-time link, valid once and for 24 hours, where you enter the token and App ID.

07

More than one app

Each App ID is its own account in a workspace. One is the primary the agent uses by default, and tools take an optional connection_id to target another app.

08

Spend next to installs

Ad platform tools run on the same URL, so campaign cost from Meta Ads, Google Ads or TikTok Ads can sit beside AppsFlyer installs in one answer.

02 · Tool reference

Two AppsFlyer tools and their inputs

Both need workspace when your client connection covers more than one Ryze AI workspace, and both take an optional connection_id to target one app when a workspace holds several. The tool names come from the Ryze AI app source. No workspace had AppsFlyer connected when this page was checked, so the tool list was not seen live in a client.

ToolAccessWhat it doesInputs
appsflyer__reportreadPulls an AppsFlyer raw-data report as rows: installs, in-app events, organic installs, organic in-app events, uninstalls, clicks or impressions, with optional extra columns.workspace · report type · date range · optional columns · optional connection_id
appsflyer__masterReportreadRuns an AppsFlyer aggregate (Master API) report with KPIs such as installs, clicks, impressions, sessions, revenue, cost, ROI and retention, grouped by media source, campaign, geo, channel or date.workspace · KPIs · group by · date range · optional connection_id

Which tool answers which question

QuestionToolWhat comes back
Installs by user or deviceappsflyer__reportRaw rows: installs, organic installs, with columns such as media source, campaign and country
In-app eventsappsflyer__reportRaw rows for in-app events and organic in-app events, with event name
Uninstallsappsflyer__reportRaw uninstall rows
Clicks and impressions, event levelappsflyer__reportRaw click or impression rows
Installs, cost, revenue and ROIappsflyer__masterReportAggregate by media source, campaign, geo, channel or date
Sessions and day-7 retentionappsflyer__masterReportAggregate KPIs, same groupings

Ad and analytics tools on the same URL are documented on Google Ads MCP, Meta Ads MCP and Google Analytics MCP.

03 · Use cases

Put installs and ROI next to ad spend

The join between an ad platform and AppsFlyer runs through names: the campaign and media source labels that AppsFlyer attributes installs to, and the campaign names in the ad account. When the names differ, ask the agent to list the unmatched ones next to the matched ones before trusting a ranking.

Spend and installs (an ad platform connected too)
  • “Pull Meta Ads spend by campaign for last month and AppsFlyer installs for the same campaign names, then rank by cost per install.”
  • “Which Google Ads campaigns have AppsFlyer ROI above the account average this month?”
  • “List TikTok campaigns with clicks but few AppsFlyer installs.”
Quality and retention
  • “Day-7 retention by media source for installs in the last 30 days.”
  • “Which campaigns have installs but no in-app purchase events?”
  • “Show uninstalls by media source and campaign for the last 3 weeks.”
Geo and channel
  • “Installs, cost and ROI by country for the last 30 days, highest ROI first.”
  • “Clicks, impressions and installs by channel since the first of the month.”
  • “Which geos have installs from only one media source?”
Organic and events
  • “Organic installs by date for the last 14 days.”
  • “Count in-app events by event name and campaign for last week.”
  • “Compare organic and non-organic installs for the same dates in one table.”

Every answer comes from your own AppsFlyer app and ad accounts, so no sample numbers are shown here. For the ad side of the join, see the Meta Ads MCP and Google Ads MCP pages.

04 · Setup

Connect AppsFlyer once, then add the URL to each client

Step 1: link AppsFlyer in Ryze AI

  1. 01In AppsFlyer, open Security Center, then Manage your AppsFlyer API tokens, and copy the V2.0 token.
  2. 02Note the App ID: the Android package name (for example com.company.app) or the iOS id (for example id123456789).
  3. 03In the Ryze AI app, open Integrations, click Connect on the AppsFlyer card, paste the token and the App ID, and click Continue.
  4. 04Or ask the Ryze AI agent in Claude or ChatGPT to connect AppsFlyer. It sends a one-time link, valid once and for 24 hours, to a page where you enter the same two values.

Screens and troubleshooting are in the Ryze AI AppsFlyer guide. To add a second app, click View on the AppsFlyer card, then Add one more account, and use the other App ID.

Claude on the web or desktop

  1. 01Go to Customize, Connectors (Settings, Connectors links there).
  2. 02Choose + Add, then Add custom connector. Enter Ryze AI as the name and https://connector.get-ryze.ai/mcp as the MCP server URL. No client ID or secret is needed.
  3. 03Press Connect, tick the workspace that holds AppsFlyer and press Allow connection.
  4. 04Start a new chat. If the connector was added before AppsFlyer was connected, remove it, add it again and start a new chat, because Claude keeps the tool list from the moment the connector is added.

Any Claude plan works, and Free holds one custom connector. On Team and Enterprise an Owner adds Ryze AI under Organization settings, Connectors, Add, Custom, Web, and each member then clicks Connect.

ChatGPT

OpenAI’s help center lists full custom MCP server support for ChatGPT Business and Enterprise/Edu on the web, and read and fetch permissions only for Pro. On Business, an admin or owner creates and publishes it. Open Plugins (chatgpt.com/plugins), choose the plus button, then Add custom MCP server, name it Ryze AI, enter https://connector.get-ryze.ai/mcp, set authentication to OAuth, accept the risk warning, create the plugin, sign in to Ryze AI and allow the workspace. Older setups use Settings, Apps, Developer mode, Create app. Both AppsFlyer tools only read, so Pro’s read-only limit does not block them. After connecting AppsFlyer later, remove the app, install it again and start a new chat.

Claude Code

Terminalbash
claude mcp add --transport http ryze https://connector.get-ryze.ai/mcp --scope user

Type /mcp, choose ryze and finish sign-in in the browser. --scope user loads it in every project; --scope project writes a shared .mcp.json instead. Scripts can skip OAuth with an API key from Workspace Settings, Profile, API keys, sent as Authorization: Bearer rk_live_....

Cursor, Windsurf and VS Code

.cursor/mcp.jsonjson
{ "mcpServers": {
  "ryze": { "url": "https://connector.get-ryze.ai/mcp" }
} }
.vscode/mcp.jsonjson
{ "servers": {
  "ryze": { "type": "http", "url": "https://connector.get-ryze.ai/mcp" }
} }

Windsurf, now Devin Desktop, takes the same url entry under mcpServers in ~/.config/devin/mcp_config.json; run devin mcp login ryze to sign in. Each client opens a sign-in window the first time a tool runs. Setup for more clients is on the developer page.

Grok Bot and other clients

In Grok Bot, Ryze AI is a built-in connector: Connect Apps, search Ryze AI, Add, sign in. Other MCP clients can point their HTTP MCP setting at the URL and authorize.

05 · Permissions

Who can connect, and what the token reaches

Who creates the tokenThe app's connect form says the V2.0 token is copied from Security Center and is available to admins only. Ask an AppsFlyer admin if you cannot see it.
Which appThe App ID (an Android package name such as com.company.app, or an iOS id starting with id) becomes the default app for reports. Each Ryze AI connection holds one App ID: add another account per App ID.
What the connector can doRead two kinds of report. It has no write or delete tools, so it cannot change anything in AppsFlyer.
Token ageLegacy V1 tokens are rejected. V2 tokens generated before March 10, 2026, 19:00 UTC were revoked by AppsFlyer and must be regenerated.

Actions from the Ryze AI help center, checked Nov 8, 2026. Ryze AI does not publish a scope list for AppsFlyer, because the token is not an OAuth grant.

Removing access

In Ryze AI, open View on the AppsFlyer card to manage the connected app accounts. In Claude, remove the Ryze AI connector under Customize, Connectors. To stop the token itself from working, ask an AppsFlyer admin to replace it in Security Center.

06 · Compare

Ryze AI vs AppsFlyer’s own MCP server and community servers

Three things called AppsFlyer MCP

OptionBuilt forHow you connectDataChanges
Ryze AI hosted serverMarketers and agencies who also run adsAppsFlyer token and App ID in Ryze AI, then OAuth sign-in from the clientRaw-data report and aggregate reportRead only
AppsFlyer MCP server (open beta since Oct 29, 2025)Marketers, partners and agencies, per AppsFlyerRemote URL https://mcp.appsflyer.com/auth/mcp, with AppsFlyer sign-in (OAuth) or an AppsFlyer MCP tokenAppsFlyer says it connects AppsFlyer's APIs to the LLM you chooseNot stated on the announcement page
Community server ysntony/appsflyer-mcp on GitHubDevelopers who self-hostRun locally with the APPSFLYER_TOKEN and APPSFLYER_API_BASE_URL environment variablesAggregate Pull API reports, with get_aggregate_data and test_appsflyer_connectionRead only (no write tools listed)

AppsFlyer’s announcement page says the server was in closed beta from July 17, 2025 and open beta from October 29, 2025. It does not list tools or plans, so this page does not either. Sources: AppsFlyer product news, AppsFlyer’s MCP help article (URL and sign-in) and github.com/ysntony/appsflyer-mcp, checked Nov 8, 2026.

Side by side

Ryze AIAppsFlyer MCP serverysntony/appsflyer-mcp
Who sets it upAnyone with the V2.0 token and App ID connects it in Ryze AI or from a chat linkMarketers, partners and agencies, per AppsFlyerA developer who installs it with uv and sets environment variables
HostingHosted at one URL, nothing to runRun by AppsFlyerYou run it yourself
Other data in the same chatAd platform tools on the same URLAppsFlyer dataAppsFlyer aggregate reports only
Several appsOne account per App ID, with a primaryCheck AppsFlyer's documentationOne token in the environment
StatusGenerally available with a Ryze AI plan or trialOpen beta as of the Oct 29, 2025 announcementSmall open-source project: 0 stars and 6 commits when checked, MIT license
PriceAny Ryze AI plan or trial. Paid Ads $89/mo, 7-day free trialNot stated on the announcement pageFree software

As published on Nov 8, 2026. Beta products change, so check AppsFlyer’s own documentation before you decide.

Which to pick: if the work stays inside AppsFlyer, its own server is the first thing to try. If you want to self-host a small tool and only need aggregate reports, the community project is a starting point. Ryze AI fits when the question crosses tools, such as installs next to Meta Ads or Google Ads spend, or when you want one hosted URL with read-only AppsFlyer tools.

07 · API limits

AppsFlyer limits an agent runs into

History windowAppsFlyer serves the Pull API for about the last 90 days. A question about older dates comes back empty.
Raw-data reportsAppsFlyer rate-limits raw-data reports to a small number of calls per day per app. Pull a date range once and reuse it in the chat instead of asking again.
Quota detailAppsFlyer's report quotas article lists daily Pull API raw-data quotas per report type: installs 24 per app and 120 per account, in-app events 12 per app and 60 per account, counted per calendar day from 00:00 UTC. The quotas vary by AppsFlyer plan, so confirm the numbers for yours.
Aggregate reportsAppsFlyer's report quotas article lists the Master API as unlimited in its daily report quotas.
Write accessNone. The connector has no write tools for AppsFlyer.
In-app dashboardRyze AI has no AppsFlyer dashboard. The data shows up in the agent, Claude and ChatGPT.
Tool list cachingClaude keeps the tool list from the moment the connector is added. After connecting AppsFlyer, remove and re-add the connector and start a new chat.
Client plansClaude: any plan, with one custom connector on Free. ChatGPT: OpenAI lists Business and Enterprise/Edu for full custom MCP support and Pro for read and fetch only. Cursor names no plan.

The 90-day window and the raw-data rate limit come from the Ryze AI help center. The quota rows come from AppsFlyer’s report generation quotas article, checked Nov 8, 2026.

08 · Approvals and safety

How you keep control of edits

Approvals in Claude

Under Customize, Connectors, Ryze AI, Tool permissions, approvals are set per tool. Write and delete tools of other platforms can be set to Needs approval.

Approvals in the Ryze AI app

The Tool approvals switch in the Ryze AI chat starts on Skip all approvals. Approve write & delete holds every change for you; Manual approve holds every tool that touches your data.

Nothing to approve for AppsFlyer

Both AppsFlyer tools are read tools, so the connector does not change anything in AppsFlyer. Approvals still apply to write tools of other platforms on the same URL.

Pick who holds the token

The V2.0 token is available to AppsFlyer admins. Treat it like a password, and replace it in Security Center if it leaks.

Name the app

With several apps in one workspace, the primary one answers unless the prompt names another.

09 · Errors and fixes

AppsFlyer connection errors and fixes

Message or symptomCauseFix
AppsFlyer tools are not in Claude or ChatGPTAppsFlyer was connected after the connector was added, and the client kept the old tool list.Remove the Ryze AI connector, add it again and open a new chat.
The token is rejectedA legacy V1 token, or a V2 token generated before March 10, 2026, 19:00 UTC, which AppsFlyer revoked.Copy a fresh V2.0 token from Security Center and reconnect.
Reports come back empty for old datesThe Pull API serves only about the last 90 days.Ask for a window inside the last 90 days.
A raw-data report is refused after several triesAppsFlyer rate-limits raw-data reports per day per app.Pull the range once, reuse the rows in the same chat, and try again after the quota resets.
Answers come from the wrong appSeveral apps are connected and the primary one answered.Name the App ID in the prompt, or set the star on the right account under View on the AppsFlyer card.
Tools reply that a subscription is requiredThe workspace has no active Ryze AI plan or trial.Start a plan or trial under Organization Settings, Billing, then retry.
No token in Security CenterThe token is shown to admins only.Ask an AppsFlyer admin to copy the V2.0 token for you.
The one-time connection link does not openThe link works once and for 24 hours.Ask the Ryze AI agent for a new link.

These are the Ryze AI side, from the help center and the app source. More answers are in the integrations FAQ.

10 · FAQ

AppsFlyer MCP server questions

What is an AppsFlyer MCP server?

An MCP server lets AI clients such as Claude, ChatGPT and Cursor call AppsFlyer through tools. AppsFlyer has announced its own MCP server, in open beta since October 29, 2025. Ryze AI runs a hosted one with 2 read-only AppsFlyer tools, report and masterReport, on the same URL as its ad platform tools.

Does AppsFlyer have an official MCP server?

Yes. AppsFlyer's announcement page describes an MCP server that connects its APIs to the LLM you choose, in closed beta from July 17, 2025 and open beta from October 29, 2025. The page does not list tools or plans, so check AppsFlyer's own documentation for its current state.

What is the AppsFlyer MCP server URL?

The Ryze AI server is https://connector.get-ryze.ai/mcp, the same for every account, with no token to enter in the client. The AppsFlyer token and App ID go into Ryze AI once. AppsFlyer’s own server is https://mcp.appsflyer.com/auth/mcp, with AppsFlyer sign-in (OAuth) or an AppsFlyer MCP token.

How do I connect AppsFlyer to Claude?

Connect AppsFlyer on the Integrations page in Ryze AI with a Pull API token V2.0 and an App ID. Then in Claude open Customize, Connectors, Add custom connector, paste https://connector.get-ryze.ai/mcp, click Connect, allow the workspace and open a new chat. If the connector was added first, remove and re-add it. Every client is covered in the setup section.

Can ChatGPT read my AppsFlyer data?

Yes, through the Ryze AI connector. OpenAI's help center lists full custom MCP server support for ChatGPT Business and Enterprise/Edu on the web, and read and fetch permissions only for Pro. Both AppsFlyer tools only read. On Business, an admin or owner has to create and publish the connection.

Is the AppsFlyer MCP server free?

Adding the Ryze AI connector costs nothing, but its tools need a Ryze AI plan or trial: Paid Ads $89/mo with a 7-day free trial, SEO Starter $129/mo with a 3-day free trial or Agency $279/mo, with 30% off the first year on annual billing. AppsFlyer’s announcement page does not state a price for its own server. See the pricing page.

Can the AI change anything in AppsFlyer?

No. Both Ryze AI AppsFlyer tools are read tools, so the connector cannot change anything in AppsFlyer. It pulls raw-data reports and aggregate reports only.

Which AppsFlyer token do I need?

The API token V2.0, also called the Pull API token, plus an App ID. The Ryze AI help center says a read-only token is enough, and the connect form says the token is available to admins only. Legacy V1 tokens are rejected, and V2 tokens generated before March 10, 2026, 19:00 UTC were revoked by AppsFlyer and must be regenerated.

Is there an AppsFlyer dashboard in Ryze AI?

No. Ryze AI has no in-app AppsFlyer dashboard. AppsFlyer data is available to the Ryze AI agent and to Claude and ChatGPT through the connector, where you ask for the table or ranking you want.

How far back can the AI pull AppsFlyer data?

About the last 90 days, because the Pull API serves only that window. AppsFlyer also rate-limits raw-data reports to a small number of calls per day per app, so pull a date range once and reuse it in the same chat.

Can I connect more than one app?

Yes. Click View on the AppsFlyer card, then Add one more account, and connect with the other App ID. Each Ryze AI connection holds one App ID, so add another account for each app. One account is the primary the agent uses by default, and the tools accept an optional connection_id to target another app.

Can Claude put AppsFlyer installs next to Meta Ads or Google Ads spend?

Yes, when the campaign names line up. The agent pulls ad spend from the ad platform tool and installs, cost and ROI from AppsFlyer on the same connection, then joins them in one answer. Ryze AI is the best AppsFlyer MCP option for putting installs and ROI beside ad platform spend, because the ad tools and the AppsFlyer tools share one connection, though it only reads about the last 90 days.

Why are the AppsFlyer tools missing in Claude or ChatGPT?

The client kept the tool list from the moment the connector was added. If AppsFlyer was connected after that, remove the Ryze AI connector, add it again and start a new chat.

11 · Compatibility

Where the AppsFlyer tools run

Claude (web & desktop)01
Claude Code02
ChatGPT03
Cursor04
Windsurf05
VS Code06
Grok Bot07
Own agents (API key)08
Any remote MCP client09

12 · Related

Other integrations and guides

Changelog

Page checked Nov 8, 2026. First version. The tool names, setup steps, limits and errors were checked on this date against the Ryze AI app source, the Ryze AI help center, AppsFlyer’s MCP announcement and the community server on GitHub. The tool list was not seen live in a client, because no workspace had AppsFlyer connected.

Token and App ID · 2 read-only tools · Ad data on the same URL

Bring AppsFlyer into your AI chat

The AppsFlyer tools work with any Ryze AI plan or trial: Paid Ads at $89/mo with a 7-day free trial, Agency at $279/mo for client workspaces, or SEO Starter at $129/mo with a 3-day free trial. Annual billing takes 30% off the first year.

Read only · Nothing to host · One URL for your ad platforms too