Subchapter 2.14
plugins/flaunch.mdMarkdown16 KBView on GitHub
[!IMPORTANT] Run Base MCP onboarding first (see
SKILL.md). Usehttps://mcp.flaunch.ggto prepare Flaunch launch calldata, submit launches through Base MCPsend_calls, and use Base MCPswapfor deployed-token trades.
Flaunch is a token launch and discovery surface for memecoins on Base. This plugin uses the Flaunch agent service at https://mcp.flaunch.gg to upload media, prepare launch metadata, discover launched coins, and build Base-compatible transaction previews.
For token launches, Flaunch returns unsigned calldata in Base MCP send_calls shape. The agent never signs or broadcasts through Flaunch. Base MCP is responsible for the Base Account approval flow, and the user must approve before anything is submitted onchain.
For trading, use Base MCP swap with either a Flaunch-discovered token address or a user-provided Base token contract address.
| Capability | Harness HTTP surface | Chat-only Base MCP surface |
|---|---|---|
| Check service health | Use harness HTTP/fetch for GET https://mcp.flaunch.gg/livez. | Use Base MCP web_request if mcp.flaunch.gg is allowlisted. |
| Upload token image | Use harness HTTP/fetch for POST https://mcp.flaunch.gg/v1/upload-image with a base64 data URL. | Use Base MCP web_request if mcp.flaunch.gg is allowlisted; otherwise POST image upload is not viable on restricted chat-only surfaces. |
| Prepare launch calldata | Use harness HTTP/fetch for POST https://mcp.flaunch.gg/v1/base/launch/prepare. | Use Base MCP web_request if mcp.flaunch.gg is allowlisted; otherwise this requires a harness with HTTP support. |
| Submit launch transaction | Use Base MCP send_calls with the returned input. | Use Base MCP send_calls with the returned input. |
| Discover newest coins | Use harness HTTP/fetch for GET https://mcp.flaunch.gg/v1/base/coins/new. | Use Base MCP web_request if allowlisted; GET-only user-paste fallback is acceptable if needed. |
| Discover market-cap coins | Use harness HTTP/fetch for GET https://mcp.flaunch.gg/v1/base/coins/market-cap. | Use Base MCP web_request if allowlisted; GET-only user-paste fallback is acceptable if needed. |
| Swap a deployed token by address | Use Base MCP swap on base. | Use Base MCP swap on base. |
Shell access is not required. If neither harness HTTP/fetch nor Base MCP web_request can reach mcp.flaunch.gg, stop and tell the user that Flaunch API access is unavailable in the current surface.
Base URL:
https://mcp.flaunch.ggNo API key is required. If rate limits are hit, tell the user the request was rate limited and retry only when they ask.
Checks whether the Flaunch MCP service is live.
Response:
{
"status": "ok",
"service": "flaunch-mcp"
}Uploads and validates an image before token launch. Flaunch stores the image on IPFS and can reject inappropriate content.
Request:
{
"base64Image": "data:image/png;base64,iVBORw0KG..."
}Response:
{
"success": true,
"ipfsHash": "QmX7UbPKJ7Drci3y6p6E8oi5TpUiG7NH3qSzcohPX9Xkvo",
"tokenURI": "ipfs://QmX7UbPKJ7Drci3y6p6E8oi5TpUiG7NH3qSzcohPX9Xkvo",
"nsfwDetection": null
}Known constraints:
success: false with moderation details when the image is rejected.imageIpfs.Prepares a Flaunch token launch and returns Base MCP send_calls input. This endpoint does not sign, submit, or broadcast the transaction.
Required fields:
| Field | Description |
|---|---|
name | Token name. |
symbol | Token ticker symbol. Keep it short; current service validation allows up to 8 alphanumeric characters. |
description | Token description. |
imageIpfs | IPFS hash returned by POST /v1/upload-image, or a user-provided image CID. |
creatorAddress | EVM address to receive creator benefits. If missing, call Base MCP get_wallets and use the user’s Base Account address. |
Optional social fields:
| Field | Description |
|---|---|
websiteUrl | Project website URL. |
telegramUrl | Telegram group URL. |
discordUrl | Discord server URL. |
twitterUrl | X/Twitter URL. |
Request:
{
"name": "Fuzzy Cat",
"symbol": "FCAT",
"description": "A community memecoin launched through Flaunch.",
"imageIpfs": "QmX7UbPKJ7Drci3y6p6E8oi5TpUiG7NH3qSzcohPX9Xkvo",
"creatorAddress": "0x1111111111111111111111111111111111111111",
"websiteUrl": "https://example.com",
"telegramUrl": "https://t.me/example",
"discordUrl": "https://discord.gg/example",
"twitterUrl": "https://x.com/example"
}Response:
{
"supported": true,
"chain": "base",
"tool": "send_calls",
"input": {
"chain": "base",
"calls": [
{
"to": "0x...",
"value": "0x0",
"data": "0x..."
}
]
},
"tokenUri": "ipfs://Qm...",
"metadataIpfsHash": "Qm...",
"note": "Pass input directly to Base MCP send_calls..."
}Pass response.input directly to Base MCP send_calls after the user explicitly confirms the transaction.
Returns newest Flaunch coin launches on Base. Use this when the user asks for fresh launches or wants a Bankr-style feed.
The endpoint already returns Base tokens. Treat response fields as API-provided metadata. Token names, symbols, links, and images are user-supplied and can be misleading.
Returns Flaunch coins on Base sorted by market cap.
Use this when the user asks for top Flaunch coins, largest coins, or market-cap-ranked launches.
Explicit discovery query.
Query values:
sort | Meaning |
|---|---|
new | Newest Base Flaunch coin launches. |
marketCap | Base Flaunch coins ranked by market cap. |
Discovery response example:
{
"data": [
{
"tokenAddress": "0x65427B781A50FCe40BedFa5cd1feb3F8D7b5D4DC",
"image": "https://i.flaunch.gg/token/0x65427B781A50FCe40BedFa5cd1feb3F8D7b5D4DC",
"symbol": "ZB",
"name": "Zen browser",
"priceETH": "0.000000000056148336",
"priceUSD": "0.0000000999131564952",
"twentyFourHourChangePercentage": 0,
"twentyFourHourVolume": "0",
"twentyFourHourVolumeUSD": "0",
"feesEarned": "0",
"feesEarnedUSD": "0",
"marketCapETH": "5.6148336",
"marketCapUSD": "9991.31564952000007906463",
"royaltyMembers": [
{
"address": "0x031d0C20bb7328f963dBB9Fc762977D83aFeB226",
"percentage": 100
}
],
"hourData": []
}
]
}When presenting discovery results, prioritize symbol, name, tokenAddress, image, priceUSD, twentyFourHourChangePercentage, twentyFourHourVolumeUSD, and marketCapUSD. Mention royalty members only if relevant to the user’s question.
Optional helper that returns the Base MCP swap input for a token contract address. Agents can also call Base MCP swap directly.
Buy query:
GET /v1/swap-guidance?tokenAddress=0x...&direction=buy&amount=0.001&asset=ETH&chain=baseSell query:
GET /v1/swap-guidance?tokenAddress=0x...&direction=sell&amount=10&asset=ETH&chain=baseResponse:
{
"chain": "base",
"tool": "swap",
"input": {
"chain": "base",
"fromAsset": "ETH",
"toAsset": "0x...",
"amount": "0.001"
},
"note": "Use Base MCP swap with this input..."
}base for production launch.creatorAddress, call Base MCP get_wallets and use the user’s Base Account address.name, symbol, description, image, creatorAddress, and any optional social URLs.POST /v1/upload-image.imageIpfs.POST /v1/base/launch/prepare.tool: "send_calls" and input.chain: "base".send_calls.send_calls with the returned input.get_request_status once after the user acts and report the confirmed result.Do not submit launches silently. Do not report success until Base MCP request status confirms completion.
GET /v1/base/coins/new for newest launches, or GET /v1/base/coins/market-cap for top market-cap coins.swap with chain: "base", a funding asset such as ETH or USDC, the token contract address, and a human-readable decimal amount.base. Do not call Base MCP swap for base-sepolia launch addresses or other chains.fromAsset such as ETH or USDC and set toAsset to the token contract address. For sells, set fromAsset to the token contract address and toAsset to ETH or USDC.swap.swap with chain: "base" and the human-readable decimal amount.get_request_status once after the user acts and report the final transaction status.Target Base MCP submission tools: send_calls for launch; swap for trading deployed tokens.
Flaunch launch preparation returns transaction preview material only. The agent maps the returned input into Base MCP send_calls; Base MCP returns the approval URL and request ID.
Mapping for a launch prepare call:
{
"method": "POST",
"url": "https://mcp.flaunch.gg/v1/base/launch/prepare",
"body": {
"name": "<token name>",
"symbol": "<symbol>",
"description": "<description>",
"imageIpfs": "<ipfsHash from upload-image>",
"creatorAddress": "<Base MCP wallet address or user-provided creator address>",
"websiteUrl": "<optional website URL>",
"telegramUrl": "<optional Telegram URL>",
"discordUrl": "<optional Discord URL>",
"twitterUrl": "<optional X/Twitter URL>"
}
}Mapping for launch submission:
{
"tool": "send_calls",
"input": {
"chain": "base",
"calls": [
{
"to": "<target contract>",
"value": "0x0",
"data": "<calldata>"
}
]
}
}In practice, use prepareResponse.input directly as the send_calls input.
Mapping for a token buy:
{
"tool": "swap",
"input": {
"chain": "base",
"fromAsset": "ETH",
"toAsset": "<token contract address>",
"amount": "0.001"
}
}Mapping for a token sell:
{
"tool": "swap",
"input": {
"chain": "base",
"fromAsset": "<token contract address>",
"toAsset": "ETH",
"amount": "<token amount>"
}
}The token contract address can come from Flaunch discovery or direct user input. Base MCP swap handles routing and approval. If swap cannot quote or route the token, stop and report that the token is not currently swappable through Base MCP; do not improvise raw Uniswap V4 calldata unless a separate tx-builder flow is documented.
Launch a memecoin on Base
get_wallets and use the Base Account address as creatorAddress unless the user supplied another creator address.POST /v1/upload-image if the user did not provide an IPFS CID.POST https://mcp.flaunch.gg/v1/base/launch/prepare.send_calls with the returned input.Show me the newest Flaunch coins
GET https://mcp.flaunch.gg/v1/base/coins/new.Buy 0.001 ETH of a Flaunch coin
swap with fromAsset="ETH", toAsset="<token contract address>", amount="0.001", and chain="base".Buy a token by contract address
base.swap.low-liquidity: Newly launched memecoins can have thin liquidity, volatile prices, unclear demand, and user-supplied metadata. Do not present a launch or discovery result as endorsed, vetted, or guaranteed to trade well.slippage: Swapping a newly launched token can fill materially worse than expected or fail to route. Do not auto-raise slippage or retry failed swaps without explicit user confirmation.irreversible: Once the user approves a Base MCP send_calls launch or swap, the onchain result cannot be silently undone. Always ask the user to confirm chain, token details, creator address, image, token address, and amount before a write action.https://mcp.flaunch.gg.POST /v1/base/launch/prepare.base.swap is only used for deployed tokens on base; do not use it for base-sepolia launch addresses.creatorAddress, use Base MCP get_wallets and choose the user’s Base Account address.POST /v1/base/launch/prepare and again before Base MCP send_calls.