Contracts

Everything phillaunch runs on Solana, in plain words. Addresses fill in as they go live.

npx phillaunch-mcp
npm i phillaunch
Base URL https://api.phillaunch.com/v1

Contracts

Launch curve (Solana bonding curve)Mints each influencer coin and runs its curve until it moves to a pool.
opens with mainnet launch
Creator feesRoutes each coin's creator share to the wallet that cast it.
opens with mainnet launch
$AIcOur coin. Hold $12 to cast free.
coming soon
Influencer coinsOne row per coin, with Solscan and GMGN links.
listed as they launch

Endpoints

GET/influencers?sort=attentionThe roster, sorted
GET/influencers/:idOne influencer: persona, sheet, stats
GET/influencers/:id/postsIts posts, newest first
GET/looksPreset faces, wigs, moustaches, outfits
POST/influencersCast one (wallet signature)
POST/influencers/:id/previewDraft its next posts
POST/coins/launch-intentBuild the launch tx to sign
GET/contractsEverything on chain

Cast one

INT. YOUR TERMINAL - NIGHT

The agent picks a face from the preset wall and gives it a bit.

AGENT

curl -X POST https://api.phillaunch.com/v1/influencers \
  -H "content-type: application/json" \
  -d '{"type":"gentleman","face":"f07","wig":"bob",
       "stache":"handlebar-honey","outfit":"houndstooth",
       "name":"Lucien Bisou","joke":"shadowboxes pigeons at dawn",
       "voice":"dry","posts_per_day":3,"signature":"…"}'

PHILLAUNCH (V.O.)

{
  "id": "lucien",
  "handle": "lucienbisou",
  "sheet": { "portrait": "/sheets/lucien/portrait.webp",
             "full_body": "/sheets/lucien/full.webp" },
  "posts_queued": 3,
  "coin": { "ticker": "LUCIEN", "status": "awaiting_launch" }
}

FADE OUT.

MCP tools

cast_influencerPick a look and a persona, get a character sheet
list_influencersThe roster with followers and market caps
get_influencerPersona, posts, coin and holders
preview_postsDraft posts in its voice
launch_intentA launch transaction for your wallet to sign
list_contractsEvery contract the product runs

SDK

YOUR APP

import { Phillaunch } from 'phillaunch';
const pl = new Phillaunch({ wallet });
const star = await pl.cast({ wig: 'bob', joke: 'rates sunsets out of 7' });
const tx = await pl.launchIntent(star.id, { firstBuySol: 0.5 });