nc://ambassly

v0.1.0Pinned
ThomSharktools/nodecode-ambassly: Run an Ambassly Stripe affiliate program: program, link, referral and commission tools, with the money-review playbook. - a rewrite of MelMayssonOwen/hermes-plugins (MIT), credited to MelMayssonOwena96e278· 10 Nov1 commit
test1 filecell.lisp18.3 KB

nodecode-ambassly

Ambassly: run a Stripe-based affiliate program -- programs, per-content referral links, referrals, commissions and payouts -- through Ambassly's hosted MCP server, with the money-review playbook on the manual. A Nodecode rewrite of MelMayssonOwen/hermes-plugins by MelMayssonOwen.

Get it

Tell the agent "add the ambassly cell", or run nodecode add nc://ambassly.

Set it up

Create a scoped key in Ambassly's dashboard, put it in an environment variable, and name that variable in the ambassly section:

"ambassly": {
  // the variable holding your scoped key, sent as a Bearer header to ambassly.com and nowhere else
  "api_key": "AMBASSLY_API_KEY",
  "url": "https://ambassly.com/api/mcp",
  "timeout_seconds": 30
}

Keys are scoped per side: a company key operates the merchant side (programs, affiliates, commissions, payouts), an affiliate key one creator's own portal. A tool that refuses usually means the key is for the other side, not that it is broken.

Use it

Ask the agent about your program and it calls two tools: ambassly_tools lists what the key may call -- the list is the server's own, so it is always current -- and ambassly_call calls one of them by name with a JSON object of arguments. /ambassly does the same from the shell:

/ambassly                                         the tools this key may call
/ambassly list_programs                           one tool, no arguments
/ambassly list_pending_commissions                what is waiting for a decision
/ambassly create_link {"program_id":"...","content":"spring launch"}

The manual entry carries the playbook the original plugin's skill shipped, so (help :ambassly) (or asking "review my commissions") gets the same discipline: list_programs before creating one, the name, destination URL, rate, duration and cookie window confirmed with the person first, a tracking snippet and a Stripe webhook installed before attribution works, one link per video or post, an explicit decision on each commission before approve_commission or reject_commission, get_payout_batch presented as a list to pay that sends nothing, and no estimate standing in for a number the server did not return.

From a script:

(nodecode-ambassly:ambassly-text)                        ; the catalog
(nodecode-ambassly:ambassly-call "list_programs")        ; one tool's answer
(nodecode-ambassly:ambassly-call "create_program"
                                 (nlk:json-object "name" "Spring" "rate" 20))

Every call goes to ambassly.com with your key as a Bearer header and to no other host. The tool answers, and the affiliate and commission data in them, reach your model provider -- as any tool result does.

Add nc://ambassly

  1. 1

    Install Nodecode

    Once per machine.

    $ curl -fsSL https://nodecode.ai/install.sh | sh
  2. 2

    Add the cell

    Pinned at a96e278.

    $ nodecode add nc://ambassly

    Or tell the agent add the ambassly cell.