GoAffPro MCP by usefulapi

Read affiliates, orders, payouts and traffic; set affiliate status and add coupons in GoAffPro.

Should I use this

Quality & Safety

A
Description quality
96%
Schema completeness
87%
Naming quality
79%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (1)

  • LOWTool 'goaffpro_list_special_commissions' name length outside 3-30 rangein goaffpro_list_special_commissions

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~3,362Tokens (tool definitions)
~2.0 KBTypical response size
Significant attention impact (2.63% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "goaffpro": {
      "url": "https://goaffpro.usefulapi.io/mcp"
    }
  }
}

Remote endpoints

https://goaffpro.usefulapi.io/mcpstreamable-http

What it can do

Tool inventory

Tools (15)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢goaffpro_list_affiliates(id, ref_code, email, coupon, status, ...)

List the affiliates of the program with status, ref code, coupon, group and contact fields. GET /admin/affiliates. Answer: { affiliates: [] }.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "description": "Comma-separated affiliate ids.",
      "type": "string"
    },
    "ref_code": {
      "description": "Only the affiliate with this ref code.",
      "type": "string"
    },
    "email": {
      "description": "Only the affiliate with this email.",
      "type": "string"
    },
    "coupon": {
      "description": "Only the affiliate that owns this coupon code.",
      "type": "string"
    },
    "status": {
      "description": "Comma-separated statuses: pending, approved, invited, rejected.",
      "type": "string"
    },
    "since_id": {
      "description": "Only items with an id greater than this id (paging by id).",
      "type": "string"
    },
    "created_at_min": {
      "description": "Only items created at or after this date. Use a date such as 2026-10-01 or 'Sun Jul 26 2019 12:10:07 GMT+0530'.",
      "type": "string"
    },
    "created_at_max": {
      "description": "Only items created at or before this date. Use a date such as 2026-10-01 or 'Sun Jul 26 2019 12:10:07 GMT+0530'.",
      "type": "string"
    },
    "updated_at_min": {
      "description": "Only affiliates updated at or after this date.",
      "type": "string"
    },
    "updated_at_max": {
      "description": "Only affiliates updated at or before this date.",
      "type": "string"
    },
    "fields": {
      "description": "Comma-separated list of fields to return.",
      "type": "string"
    },
    "limit": {
      "description": "Maximum number of results.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    },
    "offset": {
      "description": "Number of results to skip (for paging).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢goaffpro_search_affiliates(keyword, in, operator, sort_column, sort_direction, ...)

Search affiliates by a keyword in name, ref_code, email or coupon. GET /admin/affiliates/search. Answer: a list of affiliates.

Input Schema

{
  "type": "object",
  "properties": {
    "keyword": {
      "type": "string",
      "description": "The text to look for."
    },
    "in": {
      "type": "string",
      "description": "Comma-separated columns to search: name, ref_code, email, coupon."
    },
    "operator": {
      "description": "How to match (default starts_with).",
      "type": "string",
      "enum": [
        "starts_with",
        "ends_with",
        "contains"
      ]
    },
    "sort_column": {
      "type": "string",
      "enum": [
        "name",
        "ref_code",
        "id"
      ]
    },
    "sort_direction": {
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    },
    "fields": {
      "description": "Comma-separated list of fields to return.",
      "type": "string"
    },
    "limit": {
      "description": "Maximum number of results.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    }
  },
  "required": [
    "keyword",
    "in"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢goaffpro_list_orders(id, number, customer_email, affiliate_id, status, ...)

List orders that are tied to affiliates, with total, commission, status (approved or rejected) and the date. GET /admin/orders. Answer: { orders: [] }.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "description": "Comma-separated order ids.",
      "type": "string"
    },
    "number": {
      "description": "Comma-separated order numbers.",
      "type": "string"
    },
    "customer_email": {
      "description": "Only orders of this customer email.",
      "type": "string"
    },
    "affiliate_id": {
      "description": "Only items for this affiliate id.",
      "type": "string"
    },
    "status": {
      "description": "Comma-separated statuses: approved, rejected.",
      "type": "string"
    },
    "since_id": {
      "description": "Only items with an id greater than this id (paging by id).",
      "type": "string"
    },
    "created_at_min": {
      "description": "Only items created at or after this date. Use a date such as 2026-10-01 or 'Sun Jul 26 2019 12:10:07 GMT+0530'.",
      "type": "string"
    },
    "created_at_max": {
      "description": "Only items created at or before this date. Use a date such as 2026-10-01 or 'Sun Jul 26 2019 12:10:07 GMT+0530'.",
      "type": "string"
    },
    "is_new_customer": {
      "type": "boolean"
    },
    "is_subscription": {
      "type": "boolean"
    },
    "is_subscription_renewal": {
      "type": "boolean"
    },
    "fields": {
      "description": "Comma-separated list of fields to return.",
      "type": "string"
    },
    "limit": {
      "description": "Maximum number of results.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢goaffpro_list_rewards(id, affiliate_id, type, status, order_id, ...)

List rewards (bonuses) given to affiliates. GET /admin/rewards. Answer: { rewards: [] }.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "description": "Comma-separated reward ids.",
      "type": "string"
    },
    "affiliate_id": {
      "description": "Only items for this affiliate id.",
      "type": "string"
    },
    "type": {
      "description": "Comma-separated reward types.",
      "type": "string"
    },
    "status": {
      "description": "Comma-separated statuses.",
      "type": "string"
    },
    "order_id": {
      "description": "Only rewards for this order id.",
      "type": "string"
    },
    "since_id": {
      "description": "Only items with an id greater than this id (paging by id).",
      "type": "string"
    },
    "created_at_min": {
      "description": "Only items created at or after this date. Use a date such as 2026-10-01 or 'Sun Jul 26 2019 12:10:07 GMT+0530'.",
      "type": "string"
    },
    "created_at_max": {
      "description": "Only items created at or before this date. Use a date such as 2026-10-01 or 'Sun Jul 26 2019 12:10:07 GMT+0530'.",
      "type": "string"
    },
    "fields": {
      "description": "Comma-separated list of fields to return.",
      "type": "string"
    },
    "limit": {
      "description": "Maximum number of results.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢goaffpro_list_payments(id, affiliate_id, since_id, created_at_min, created_at_max, ...)

List the payment history to affiliates (amount, method, date). GET /admin/payments. Answer: { payments: [] }.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "description": "Comma-separated payment ids.",
      "type": "string"
    },
    "affiliate_id": {
      "description": "Only items for this affiliate id.",
      "type": "string"
    },
    "since_id": {
      "description": "Only items with an id greater than this id (paging by id).",
      "type": "string"
    },
    "created_at_min": {
      "description": "Only items created at or after this date. Use a date such as 2026-10-01 or 'Sun Jul 26 2019 12:10:07 GMT+0530'.",
      "type": "string"
    },
    "created_at_max": {
      "description": "Only items created at or before this date. Use a date such as 2026-10-01 or 'Sun Jul 26 2019 12:10:07 GMT+0530'.",
      "type": "string"
    },
    "fields": {
      "description": "Comma-separated list of fields to return.",
      "type": "string"
    },
    "limit": {
      "description": "Maximum number of results.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    },
    "offset": {
      "description": "Number of results to skip (for paging).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢goaffpro_list_payment_requests(affiliate_id, since_id, status, limit)

List payment requests that affiliates made from their dashboard. GET /admin/payments/requests. Answer: { PaymentRequests: [] }.

Input Schema

{
  "type": "object",
  "properties": {
    "affiliate_id": {
      "description": "Only items for this affiliate id.",
      "type": "string"
    },
    "since_id": {
      "description": "Only items with an id greater than this id (paging by id).",
      "type": "string"
    },
    "status": {
      "description": "Filter by status, for example in_progress, paid or rejected.",
      "type": "string"
    },
    "limit": {
      "description": "Maximum number of results.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢goaffpro_get_pending_payouts(affiliate_id, upto)

Show the amount due to each affiliate up to a date. GET /admin/payments/pending. Answer: { pending: [{ affiliate_id, amount }], upto }.

Input Schema

{
  "type": "object",
  "properties": {
    "affiliate_id": {
      "description": "Only items for this affiliate id.",
      "type": "string"
    },
    "upto": {
      "description": "Amounts due up to this date. Use a date such as 2026-10-01 or 'Sun Jul 26 2019 12:10:07 GMT+0530'.",
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢goaffpro_list_transactions(id, affiliate_id, type, is_paid, payout_id, ...)

List the transaction log (commission credits, payouts, balances) per affiliate. GET /admin/transactions. Answer: { transactions, count, limit, offset }.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "description": "Comma-separated transaction ids.",
      "type": "string"
    },
    "affiliate_id": {
      "description": "Only items for this affiliate id.",
      "type": "string"
    },
    "type": {
      "description": "Entity type filter, comma-separated.",
      "type": "string"
    },
    "is_paid": {
      "description": "true = only paid, false = only unpaid.",
      "type": "boolean"
    },
    "payout_id": {
      "type": "string"
    },
    "limit": {
      "description": "Maximum number of results.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    },
    "offset": {
      "description": "Number of results to skip (for paging).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢goaffpro_list_traffic(affiliate_id, since_id, created_at_min, created_at_max, fields, ...)

List visits that affiliate links sent to the store (landing page, referrer, time). GET /admin/traffic. Answer: { traffic: [] }. Max limit 1000.

Input Schema

{
  "type": "object",
  "properties": {
    "affiliate_id": {
      "description": "Only items for this affiliate id.",
      "type": "string"
    },
    "since_id": {
      "description": "Only items with an id greater than this id (paging by id).",
      "type": "string"
    },
    "created_at_min": {
      "description": "Only items created at or after this date. Use a date such as 2026-10-01 or 'Sun Jul 26 2019 12:10:07 GMT+0530'.",
      "type": "string"
    },
    "created_at_max": {
      "description": "Only items created at or before this date. Use a date such as 2026-10-01 or 'Sun Jul 26 2019 12:10:07 GMT+0530'.",
      "type": "string"
    },
    "fields": {
      "description": "Comma-separated list of fields to return.",
      "type": "string"
    },
    "limit": {
      "description": "Maximum number of results.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢goaffpro_list_coupons(affiliate_id, code, type, limit, offset)

List the coupon codes that are assigned to affiliates. GET /admin/coupons. Answer: { coupons: [] }.

Input Schema

{
  "type": "object",
  "properties": {
    "affiliate_id": {
      "description": "Only items for this affiliate id.",
      "type": "string"
    },
    "code": {
      "description": "Only this coupon code.",
      "type": "string"
    },
    "type": {
      "description": "Only this coupon type.",
      "type": "string"
    },
    "limit": {
      "description": "Maximum number of results.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    },
    "offset": {
      "description": "Number of results to skip (for paging).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢goaffpro_list_groups(id, fields)

List affiliate groups and their commission settings. GET /admin/groups. Answer: { groups: [] }.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "description": "Comma-separated group ids.",
      "type": "string"
    },
    "fields": {
      "description": "Comma-separated list of fields to return.",
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢goaffpro_list_special_commissions

List the special commission rates set for products and collections. GET /admin/commissions. Answer: { commissions: [] }.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢goaffpro_list_connections(affiliate_id, customer_email, since_id, updated_at_min, updated_at_max, ...)

List the links between affiliates and customers. GET /admin/connections.

Input Schema

{
  "type": "object",
  "properties": {
    "affiliate_id": {
      "description": "Only items for this affiliate id.",
      "type": "string"
    },
    "customer_email": {
      "type": "string"
    },
    "since_id": {
      "description": "Only items with an id greater than this id (paging by id).",
      "type": "string"
    },
    "updated_at_min": {
      "description": "Only connections updated at or after this date.",
      "type": "string"
    },
    "updated_at_max": {
      "description": "Only connections updated at or before this date.",
      "type": "string"
    },
    "limit": {
      "description": "Maximum number of results.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡goaffpro_set_affiliate_status(affiliate_id, status)

WRITE: approve, reject or set to pending one affiliate. The affiliate may get an email from GoAffPro. PATCH /admin/affiliates/{id}.

Input Schema

{
  "type": "object",
  "properties": {
    "affiliate_id": {
      "type": "string",
      "description": "The affiliate id (from goaffpro_list_affiliates)."
    },
    "status": {
      "type": "string",
      "enum": [
        "pending",
        "approved",
        "rejected"
      ],
      "description": "The new status."
    }
  },
  "required": [
    "affiliate_id",
    "status"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴goaffpro_add_affiliate_coupon(affiliate_id, code, discount_type, discount_value)

WRITE: add a discount coupon code to one affiliate. This changes the store discounts. A repeat call can create a second coupon. POST /admin/affiliates/{id}/coupons.

Input Schema

{
  "type": "object",
  "properties": {
    "affiliate_id": {
      "type": "string",
      "description": "The affiliate id (from goaffpro_list_affiliates)."
    },
    "code": {
      "type": "string",
      "minLength": 1,
      "description": "The coupon code, for example JOHN10OFF."
    },
    "discount_type": {
      "type": "string",
      "enum": [
        "percentage",
        "fixed_amount",
        "free_shipping"
      ],
      "description": "The kind of discount."
    },
    "discount_value": {
      "description": "The discount amount or percent (not needed for free_shipping).",
      "type": "number",
      "minimum": 0
    }
  },
  "required": [
    "affiliate_id",
    "code",
    "discount_type"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded15 tools