Everything the admin screens do is a REST endpoint under squad-affiliate/v1, authenticated with the logged-in nonce or an application password.
The shape of it
Collections paginate and filter consistently, single resources are addressed by ID, and writes validate against the same rules the admin screens use. There is no endpoint that skips a capability check because it was convenient.
Recording a referral from elsewhere
The referral endpoint is the integration point for a checkout the plugin does not know about: post the affiliate, the amount and your own reference, and the referral joins the programme with the same guards — self-referral blocking, duplicate detection, one commission per order.
Abilities
The operations an agent could usefully call are registered through the WordPress Abilities API with input and output schemas, permission callbacks and honest annotations — not as bespoke routes. An agent that can read your programme is asking through the same permission checks a human would, and an ability that changes something is annotated as such.
MCP
An MCP server exposes those abilities to a compatible client, so you can ask questions about your programme in whatever tool you already use. It is a window onto the same abilities, not a second API with its own rules.
Application passwords
Use one per integration rather than one shared everywhere. Revoking a leaked credential should cost you one integration, not all of them.