Developers
Set up with an AI agent (MCP)
Kickrail is an MCP server. Point Claude Code, Cursor or another coding agent at it and the agent can install tracking in your codebase, check it works on your live site, set your commissions and import from Rewardful, while you only click Approve on Stripe.
Connect your agent#
Create a program in the dashboard first, then copy the server key from Settings → Server API key (it starts with sk_kr_). The MCP endpoint is https://kickrail.com/api/mcp over Streamable HTTP.
Claude Code
claude mcp add --transport http kickrail https://kickrail.com/api/mcp \ --header "Authorization: Bearer sk_kr_..."
Cursor (.cursor/mcp.json)
{
"mcpServers": {
"kickrail": {
"url": "https://kickrail.com/api/mcp",
"headers": { "Authorization": "Bearer ${env:KICKRAIL_SECRET_KEY}" }
}
}
}Then ask it something like:
Prompt
Set up Kickrail affiliate tracking in this app. Use the kickrail MCP: check setup_status, install the script, report signups from our signup handler, and verify it on the live site.
The key is your program's server key, so the agent can do what the REST API can. Keep it out of committed files. Rolling the key in Settings disconnects the agent until you update it.
What the agent can do#
setup_status: what's done (Stripe, script, test click, affiliates) and the next step.connect_stripe: a link for you to open. Stripe approval is always yours to click.get_install_instructions: the script tag and where it goes for Next.js, React, plain HTML, WordPress, Webflow, Framer or Shopify, plus the server signup call.verify_install: fetches your live site, checks for the script, reports whether browsers have loaded it, and gives a test link.list_campaigns,create_campaign,update_campaign,update_program: commission rate, duration, hold period, cookie length.add_affiliate,list_affiliates,list_referrals,list_commissions: Growth plan or trial, like the API.list_portal_domains,add_portal_domain,check_portal_domain: serve the join page from your own subdomain. The agent gives you the CNAME record (or adds it, if it can reach your DNS provider) and checks it until it's live.start_rewardful_import,import_status: the same Rewardful import as the dashboard. The Rewardful secret is used once and never stored.
Payouts aren't exposed to agents. Paying affiliates stays in the dashboard.