> For the complete documentation index, see [llms.txt](https://docs.uppromote.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.uppromote.com/settings/integrations/mcp/supported-tools.md).

# Supported Tools

Learn what you can do with UpPromote's MCP Server via the tools we extend to AI agents.

Below are the tools an MCP client (Claude Code, Antigravity, VsCode, ...) can use to look up, analyze, and act on the affiliate marketing data in your UpPromote workspace.

With a single prompt you can ask "who are my top affiliates this month?", "how much commission is still pending?", or "approve all pending affiliates in the Summer program" — the AI picks the right tool (or chain of tools) to answer or act.

The tools split into 2 groups:

* Read Data: look up affiliates, programs, and referrals, get data about aggregated performance, rankings, and commission figures, or count a single total for a filter, without pulling the records.
* Write Action: approve or deny affiliates in bulk, always with your confirmation.

{% hint style="warning" %}
Note:&#x20;

* These tools are subject to usage limits - 100 requests per minute per store and 15 concurrent requests globally. Read tools never change your data. Write tools change live data and always ask you to confirm before running.
* For security, the server allows up to **5 simultaneous connections per IP address**. This only affects cases where multiple merchants on the **same IP** open more than 5 connections at once — rare in normal use.
  {% endhint %}

**Availability:** This feature is available on the **Professional plan and above**.

### Tools read (for Entity)

Look up affiliates, programs, and referrals. These tools never change your data.

<table data-header-hidden><thead><tr><th width="135"></th><th width="141"></th><th width="463"></th></tr></thead><tbody><tr><td>Title</td><td>Tool Name</td><td>Description</td></tr><tr><td>List Affiliates</td><td>list_affiliates</td><td>List and filter the store's affiliates by status, program, sign-up date, or name/email — returns records with pagination.</td></tr><tr><td>Get Affiliate</td><td>get_affiliate</td><td>Get the full profile of one affiliate by id (contact info, program, total referrals and commission).</td></tr><tr><td>List Programs</td><td>list_program</td><td>List and filter the store's affiliate programs by attribute — e.g. active vs inactive, commission type.</td></tr><tr><td>Get Program</td><td>get_program</td><td>Get the full setup of one program by id (commission type and rate, cookie duration, rules, status).</td></tr><tr><td>List Referrals</td><td>list_referral</td><td>List and filter referrals (referred orders) by status, affiliate, program, tracking type, or date.</td></tr><tr><td>Get Referral</td><td>get_referral</td><td>Get the full detail of one referral order by id (products, sales, commission, conversion and tracking info).</td></tr></tbody></table>

### Tools Read (for Analytics)

Aggregated numbers for the affiliate channel over a period. Scope to the whole channel, one program, or one affiliate.

<table data-header-hidden><thead><tr><th width="148"></th><th width="161"></th><th width="425"></th></tr></thead><tbody><tr><td>Title</td><td>Tool Name</td><td>Description</td></tr><tr><td>Performance Data</td><td>get_performance_data</td><td>Get channel performance for a period: totals (affiliates, clicks, referral orders, sales, commission) and ratios (conversion rate, AOV, ROI, CAC).</td></tr><tr><td>Top Affiliates</td><td>get_top_affiliates</td><td>Rank affiliates by performance — best or worst performers by sales and commission.</td></tr><tr><td>Commission Breakdown</td><td>get_commission_breakdown</td><td>Get commission totals split by status for a period: pending, approved (unpaid), and paid, plus the total.</td></tr><tr><td>Referrals by Tracking Type</td><td>get_list_referrals_by_tracking_type</td><td>Get referral counts grouped by tracking type for a period: affiliate link, coupon, connected customers, connected products, and others.</td></tr></tbody></table>

### Tools Read (for Count Total)

Return a single total for a filter — a number, not the records. Lighter than the matching list tool when you only need a count.

<table data-header-hidden><thead><tr><th width="141"></th><th width="150"></th><th width="447"></th></tr></thead><tbody><tr><td>Title</td><td>Tool Name</td><td>Description</td></tr><tr><td>Total Affiliates</td><td>count_affiliates</td><td>Get the total number of affiliates matching a filter (same filters as List Affiliates).</td></tr><tr><td>Total Referrals</td><td>count_referrals</td><td>Get the total number of referrals matching a filter (same filters as List Referrals).</td></tr><tr><td>Total Programs</td><td>count_programs</td><td>Get the total number of programs matching a filter (same filters as List Programs).</td></tr></tbody></table>

### Write Action

Approve or deny affiliate in bulk. This tool changes live data, sends emails to affiliates, and always shows you the list and asks for confirmation before running. Maximum 100 ids per call.

<table data-header-hidden><thead><tr><th width="90"></th><th width="132"></th><th width="518"></th></tr></thead><tbody><tr><td>Title</td><td>Tool Name</td><td>Description</td></tr><tr><td>Review Affiliates</td><td>reviewAffiliate</td><td>Approve or deny one or more pending affiliate applications in bulk. Approve activates them (unverified affiliates still can't log in until they verify); deny rejects the application without deleting their data. Each affiliate is emailed.</td></tr></tbody></table>

## How tools work together

The AI often chains tools to answer one question. A few common patterns:

* Name → id first. If you refer to an affiliate or program by name, the AI calls a list tool to resolve the id before fetching details or acting, it never guesses ids.
* Confirm before write. For reviewAffiliate, the AI first lists the matching pending records, shows you the count (and any unverified-email warnings), and only acts after you confirm.
* Count vs list. When you only want a number, the AI uses a Count tool instead of pulling the full list.

## Data privacy - How PII is protected

To prevent AI models from reading or collecting personal information, the read tools mask or hide PII before returning data:

* **Affiliate info**
  * **Hidden:** address, postal code, tax documents (W-9, VAT/tax number), payment account/card numbers
  * **Masked:** phone number — first 3 digits hidden (e.g. `***9876543`)
* **Referral  info**
  * **Masked:** customer email — first 3 letters before the @ hidden (e.g. `customer-name@gmail.com` → `***tomer-name@gmail.com`)
* **Analytics and program info**
  * No personal data, nothing hidden.

## Tool limits

<table data-header-hidden><thead><tr><th width="199"></th><th></th></tr></thead><tbody><tr><td>Action</td><td>Limit</td></tr><tr><td><strong>List / read</strong> (affiliates, referrals, programs)</td><td>Up to <strong>100 records per page</strong>. For more, the AI pages through results automatically.</td></tr><tr><td><strong>Count</strong> (total affiliates / referrals / programs)</td><td>No limit — returns a single total.</td></tr><tr><td><strong>Review affiliates</strong> (approve / deny)</td><td>Up to <strong>100 affiliates per request</strong>, and up to <strong>200 affiliates per 15 minutes</strong>.</td></tr><tr><td><strong>All tools</strong></td><td><p>Up to <strong>100 requests per minute</strong> per store  </p><p><strong>15 concurrent requests</strong> across the system </p><p>Each tool may take up to <strong>60 seconds</strong> to respond<br>5 simultaneous connections per IP address</p></td></tr></tbody></table>
