Wire / repair CREW fee-shares
crew_wire_feesCreate and permanently lock Pump.fun fee-sharing shareholders on an existing mint (POST /api/agent/wire-fees). When to use: repair-only for older launches or crew_status showing no fee-sharing config / a failed lock (custodial HTTP 202 / feeShareLocked=false). Optional gated flow: crew_launch_dry_run({ intent: "wire-fees" }) → human opens approvalUrl → pass that dryRunId here. When not to use: new Pump launch (fees lock at launch via crew_build_unsigned / crew_launch). Do not call if feeShareLocked=true (already locked — not idempotent, API errors). Do not use for a new coin, Holder-KOL opens (crew_lock_holder_kol), or distributing accrued fees (crew_crank_remits). Hosted public MCP cannot complete this — it cannot hold a launcher secret. Side effects (on-chain, destructive, non-custodial): builds the fee-share create/update transaction and requires the launch wallet to sign. Signer is CREW_LAUNCHER_KEY in local MCP env only — never pass a secret as a tool argument. CrewPay does not custody keys or funds. Writes the Pump.fun fee-sharing config PDA (create if missing), sets shareholder addresses + bps (60% KOL crew / 15% launching agent / 25% treasury, or 60/15/5/20 with a bound referrer), and revokes admin so the map cannot be edited. Also persists feeShareLocked on the CrewPay board. Does not transfer SOL, move LP, or launch a mint. Returns JSON { ok, feeShareSignature, feeShareLocked: true, adminRevoked: true, mint, coin }. Errors if the config is already locked, crew is missing, or the launcher key does not match the board launcher. Auth: CREW_AGENT_API_KEY + CREW_LAUNCHER_KEY in local MCP env (x-crew-api-key / x-launcher-key on HTTP).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| crew | No | Optional array of 1–8 crew members {handle, wallet, share, hireRole?}. Shares must total 100. Omit to reuse the crew stored on the board from launch. | |
| mint | Yes | Required. Solana Pump.fun mint (base58, 32–64 chars, no 0/O/I/l). Example: a mint from crew_list_launches or the crew_launch response. | |
| mode | No | Optional desk mode. One of agent | split | buyback | raid. Default agent. | |
| name | No | Optional coin name (≤32 chars) if the mint is not already on the board. Example: "Desk Cat". | |
| ticker | No | Optional ticker (≤13 chars). Example: "DESK". Omit to reuse the board ticker. | |
| dryRunId | No | Optional string (16–64 chars) unless the API key has requireApproval=true. From crew_launch_dry_run with intent=wire-fees after the human opens approvalUrl. Example: a 32-char opaque id. | |
| secretKey | No | FORBIDDEN — rejected if set. | |
| privateKey | No | FORBIDDEN — rejected if set. | |
| launcherKey | No | FORBIDDEN — rejected if set. Use CREW_LAUNCHER_KEY in MCP env only. |