/plugin install wires it up.
Two kinds of plugin
utter-buyer (the base plugin)
Discovery plus pay tools for any Utter endpoint. Ships in demo mode: it boots with no
configuration and runs the full discover, reserve, pay, and settle loop in-process against
a mock chain, so you can see how paying for an API works with no real money.
utter-<slug> (one per endpoint)
A plugin scoped to a single published endpoint. It exposes just that endpoint’s call tool
and carries a skill describing what it does, its price, and its reputation. It runs in live
mode against the real resource.
Install
Add the marketplace once, then install a plugin from it.utter-buyer MCP server starts automatically. Claude
lists its tools as mcp__plugin_<plugin-name>_utter-buyer__<tool>.
The tools
The bundled MCP server exposes the same two tools as the MCP server:utter_discover_endpoints
utter_discover_endpoints
Lists or searches paid endpoints, projecting only price, reputation, and bond to the model.
In a per-endpoint plugin, discovery is scoped to that one resource.
utter_call_[resourceId]
utter_call_[resourceId]
One tool per endpoint, named with the full 32-byte resource id. It validates your input
before paying, reserves the per-call cap, pays through the escrow gate, and returns the
response text. The buyer key is never a tool argument or return.
Configure a live plugin
A live plugin (any per-endpoint plugin, or the base plugin switched to live) reads two values from the plugin’s configuration:string
A funded Arc testnet buyer key. Held only inside the local MCP process to sign USDC escrow
payments. It never leaves your machine and is never a tool argument, a tool return, or a log
line. Marked sensitive, so Claude Code stores it securely.
string
The Utter marketplace base URL the buyer reads for discovery (it fetches
GET {url}/resources).The base
utter-buyer plugin works immediately in demo mode. A live plugin also needs the
operator-gated live buyer path provisioned (the same gate as the rest of live Utter). See
Provisioning.