Affiliateo
Affiliate marketing platform for businesses and creators. Track every sale, view, and click across web and mobile, and pay your affiliates automatically.
https://affiliateo.comConnect straight to this server’s public endpoint.
https://affiliateo.com/api/mcpWe add this server to your workspace, walk through sign-in once, then open Studio with tools ready to run.
Last probed Sep 14, 2026 · affiliateo.com
42tools discovered
Showing 25 of 42 from the live probe.
List businesses
List every business this API key can act on, with each ad network’s connection status and every app’s id/slug/type/status (all five types). Call this first: it is the source of the business_slug and app values every other tool needs.
Get app commission info
Commission info for one affiliate app: rate and type (with per-product rates, prices, and approximate commission per sale for the app’s visible products), affiliate count, total paid out, status, and whether joining requires an application. A `rails` object says which sales the app actually bills — web (the merchant’s website), mobile (in-app purchases), or both — with the provider connected to each and the percent ceiling that applies per rail (70 when Apple/Google take their cut, 90 otherwise)
Get app affiliate summary
The app’s whole affiliate program at a glance: affiliate counts, lifetime totals (clicks, conversions, renewals, revenue and commission in cents), and payout buckets (pending/payable/paid/refunded) summed across every affiliate (web_traffic apps report per-click earnings here). from/to (YYYY-MM-DD) adds the same numbers scoped to that date window; include_daily adds a per-day series ready for charting (window up to 366 days). Owner tracking links and organic (non-affiliate) sales are excluded, s
Enroll an affiliate (embedded signup)
Embedded affiliate signup: enroll a user as an affiliate by email. Finds or creates their Affiliateo account, joins them to the business, and returns their referral links (short + username + merchant-domain direct for apps with a website, withheld on an app that ALSO has a store listing until its owner confirms that page forwards mobile visitors to the store (web_auto_bounce), since on the merchant’s own domain only the merchant can send an iPhone to the App Store, plus the affiliate’s COUPON co
Get one affiliate
One affiliate’s referral links, lifetime stats (clicks, conversions, renewals, revenue and commission in cents), payout buckets (pending/payable/paid/refunded cents; per-click for web_traffic, with a click_payout object of CPC + approved/payable clicks), and a payout readiness object ({ identity_verified, payouts_enabled }, also on list rows) for gating Verify / Cash out buttons. Identify by email OR ref_code (exactly one). include_breakdown adds click sources + countries for the last 90 days; f
List affiliates
List an app’s affiliates, newest first, cursor-paginated: the response carries has_more; pass the last row’s id as starting_after for the next page. Emails are never included; correlate via ref_code. Every row carries the payout readiness object ({ identity_verified, payouts_enabled }) and personal_commission (the affiliate’s owner-negotiated deal, or null on program rates; new customers only); include_payouts adds payout buckets per row (per-click for web_traffic apps, plus a click_payout objec
List conversions
Conversion history: date, type (subscription, one_time, renewal, trial, converted, refund, chargeback), gross amount The seventh, converted, is a FILTER rather than a stored type: a trial that turns into a paying customer writes a second row for the first real payment, typed subscription or renewal and otherwise identical to a customer who never trialled. That row carries trial_conversion_id pointing back at its trial, and type=converted selects exactly those. conversion_type on the wire never
Get my affiliate summary
The caller’s OWN affiliate program across every business they’ve joined: affiliation counts, lifetime totals (clicks, conversions, renewals, revenue and commission in cents), payout buckets (pending/payable/paid/refunded, including per-click web_traffic earnings), and their account wallet balance. from/to (YYYY-MM-DD) adds the same numbers for that window; include_daily adds a per-day series (window up to 366 days). This is the affiliate’s own view — no business ownership needed, and list_busine
List my affiliations
Every app the caller is an affiliate of, across all businesses, newest first: referral links (short + username + merchant-domain direct for apps with a website, withheld on an app that ALSO has a store listing until its owner confirms that page forwards mobile visitors to the store (web_auto_bounce), since on the merchant’s own domain only the merchant can send an iPhone to the App Store, plus the COUPON code when the app has Stripe discount codes on — a code typed at checkout, not a URL), lifet
List my conversions
The caller’s own conversion history across every business they’re an affiliate of: date, type (subscription, one_time, renewal, trial, converted, refund, chargeback), gross amount and commission in cents, The seventh, converted, is a FILTER rather than a stored type: a trial that turns into a paying customer writes a second row for the first real payment, typed subscription or renewal and otherwise identical to a customer who never trialled. That row carries trial_conversion_id pointing back at
Get my wallet balance
The caller’s account wallet balance and the buckets behind it, all in cents: total balance, withdrawable (balance minus funds still on the 7-day hold), held, pending bank deposits, locked ad budget, disputed commission, and in_transit (withdrawals already on their way to the bank), plus whether a payout destination is connected and a payout readiness object ({ identity_verified, payouts_enabled }). One wallet per account, so this is the caller’s own money whether they’re a business owner or an a
List my wallet transactions
The caller’s account wallet ledger, newest first: every money movement with its type (sale, deposit, payout/withdrawal, refund, chargeback, transfer_in/out, affiliate_commission, campaign_fund/refund/payout), a signed amount in cents, gross + fee where one applies, and the other party (buyer, business, app, platform, or transfer counterpart). type filters to a comma-separated set (e.g. "sale,refund"). Cursor-paginated (pass the last row’s id as starting_after while has_more is true). Pending ban
Get one wallet transaction
One of the caller’s wallet transactions in detail, by id or short id (pay_/with_/fund_…): the same normalized row as list_my_transactions, plus, for the caller’s own deposits, the Stripe receipt URL and the card/bank used, and for affiliate-commission rows, the product and paying business. Only the caller’s own wallet. Read-only. SCOPE: resolves to the API KEY HOLDER, never an end user — there is no user argument, which is the tell. Called with a business's key it returns that OWNER's own data,
Get business-affiliate program summary
The business owner’s STOREFRONT-affiliate program at a glance (people promoting the business’s products, distinct from app affiliates): affiliate counts, lifetime totals (visitors, sales, revenue, commission in cents — money net of refunds), and payout buckets. from/to (YYYY-MM-DD) adds net sales + link clicks for that window (click history from 2026-07 onward). No per-day series. A `recurring` object gives what the referrals pay every MONTH: mrr_cents (the COMMISSION per month, never the subscr
List business (storefront) affiliates
The business’s storefront affiliates, newest first: referral links (short + storefront), lifetime stats (visitors, sales, revenue, commission in cents — money net of refunds), and commission. `commission` is the affiliate’s personal deal when `custom` is true, else the business default, which is a FLOOR because a rate can live on each plan: `program_rates` carries the percent range across the business’s active plans, so quote the range for a non-custom row. ref_code returns one affiliate. from/t
List business-affiliate conversions
The business’s storefront-affiliate sales: date, type, product, gross amount and commission (cents), payout status, and the earning affiliate’s ref_code. ref_code scopes to one affiliate; from/to (YYYY-MM-DD) to a window; type to particular conversion types, filtered upstream of the cursor. Refunds/chargebacks are separate negative rows. Cursor-paginated. No customer PII.
Get my business-affiliate summary
The caller’s OWN storefront-affiliate program across every business they promote: affiliation counts, lifetime totals (visitors, sales, revenue, commission in cents — money net of refunds), and payout buckets. from/to (YYYY-MM-DD) adds net sales + link clicks for that window (click history from 2026-07 onward). The storefront counterpart to get_my_summary. No per-day series. Wallet balance is on get_my_summary (one account wallet). A `recurring` object gives what the referrals pay every MONTH: m
List my business affiliations
Every business the caller is a STOREFRONT affiliate of (promoting its products), newest first: referral links (short + storefront), commission, lifetime stats (visitors, sales, revenue, commission in cents — money net of refunds). `commission` is the caller’s personal deal when `custom` is true, else the business default, a FLOOR: rates live on each plan, so every row carries `program_rates` (the percent range across that business’s active plans). Every affiliation is listed, ended ones included
List my business-affiliate conversions
The caller’s own storefront-affiliate sales across every business they promote: date, type, product, gross amount and commission (cents), payout status, and the business each row belongs to. business (UUID or slug) narrows to one; from/to (YYYY-MM-DD) to a window; type to particular conversion types, filtered upstream of the cursor. Cursor-paginated. No customer PII. SCOPE: resolves to the API KEY HOLDER, never an end user — there is no user argument, which is the tell. Called with a business's
Get ad performance stats
Aggregated ad performance (spend, clicks, installs, revenue, ROAS) by campaign/adgroup/ad for one network over a date range (default: the last 30 days). Spend and revenue are micros (1/1,000,000 currency unit); roas is revenue/spend and null while attributed revenue isn’t ready. Each row also carries the network’s OWN claimed numbers (reportedConversions / reportedRevenueMicros / reported_roas, from its pixel or conversion tracking, self-reported and unverified) next to the verified ones. ON NET
Break spend down by age, geo, device, placement…
Split one network’s spend and delivery by ONE dimension over a date range — the tool that answers "which placement / device / age group / hour is wasting the budget", which get_ad_stats cannot, because ad stats are flat daily totals with the day as their only segment. Every bucket is { key, label, spendMicros, impressions, clicks, conversions }: `key` is the NETWORK’s own value (that is what joins back to targeting, and what you would exclude), `label` is the human string and is lossy, spendMicr
List ad campaigns (live tree)
The live campaign tree with statuses, budgets, and bids, fetched from the ad network right now: Meta campaign→ad set→ad, Apple campaign→ad group→keyword, Google campaign→ad group→ads + keywords, TikTok campaign→ad group→ad (manual and Smart+ in one list; reading needs no write approval, so this works today and the response says whether writes do), Snapchat campaign→ad squad→ad. Row ids are what update_ad_entity takes, except Google ads and keywords: the tree gives each ad group’s id and the plai
Render a preview of an existing ad
Render an ad that ALREADY EXISTS and hand back something a human can look at. PER NETWORK, and they differ in what they can even be asked — meta: yes — embeddable HTML, subject existing_ad. google: yes — a signed link, subject existing_asset_group. tiktok: no (unverified). apple_search_ads: no (network). x: yes — embeddable HTML, subject existing_post. snapchat: yes — a signed link, subject existing_media. Meta returns embeddable iframe HTML across feed, story and reels placements (pick one with
Launch a campaign stack (always paused)
Create a WHOLE campaign stack in one call — campaign plus the ad set / ad group, creative and ad underneath it. Every campaign is created PAUSED on every network, so this never starts spend; activating is a separate update_ad_entity call. A stack that half-builds is rolled back to nothing rather than left orphaned. Upload creative FIRST with call_api on POST …/ads/media ({"kind":"image","url":"https://…"}) and pass the GOOGLE TAKES A VIDEO FILE, which this tool used to say it could not: YouTubeV
Pause/resume/re-budget an ad entity
Pause or resume an ad entity, change its daily budget, bid or spend cap, or archive it (Meta, ONE-WAY). This is the tool that starts real spend (PAUSED → ACTIVE), so it requires a read_write key. Per network: meta kind = campaign|adset|ad, status ACTIVE|PAUSED|ARCHIVED, daily_budget_cents, plus spend_cap_cents / remove_spend_cap on campaigns (lifetime ceiling, minimum 10000 = 100.00); apple_search_ads kind = campaign|adgroup|keyword (campaign_id always, ad_group_id for keywords), status ACTIVE|P
Get your MCP into directories
A working endpoint is step one. Directory coverage is the coordinated launch across ChatGPT, Claude, Cursor, the MCP Registry, and community indexes.
Directory coverage for brandsAffiliate marketing platform for businesses and creators. Track every sale, view, and click across web and mobile, and pay your affiliates automatically.
Use the MCP endpoint listed on this page in your MCP client configuration. One-click install pills support Claude, Cursor, VS Code, and other hosts. Copy the remote MCP URL if your client needs a manual entry.
Operate Affiliateo? Verify ownership to take over this directory entry.
This server appears in the MCPBundles directory. Verify you operate it to take over the listing — name, description, logo, contact email, and skill content. We email a 6-digit code to a maintainer address your server publishes in /.well-known/security.txt or /.well-known/mcpbundles.json. Free, takes about a minute.
MCPBundles probed 42 tools on the live server. The tool list on this page reflects what was discovered at the last refresh — connect your client to see the full set available to your session.
Affiliateo may require signing in to the provider before tools can run. Connect through MCPBundles or your MCP client and complete any provider login when prompted.
MCPBundles is an independent platform built on the open Model Context Protocol standard. Not affiliated with Anthropic PBC or Claude.