Docs

Highwire docs

Highwire is an MCP server for higher.fun. It gives agents 22 hosted tools, of which 3 build transactions you sign in your own wallet, 4 prompts and 2 resources. Everything below is generated from the running server.

Connect

https://highwire.fun/mcp

No sign-in and no key. The server is stateless, never signs, and allows 60 units a minute per IP (a build costs 5). Build tools hand back a link to sign in your own wallet.

Claude

claude.ai and the desktop apps, on any plan.

Add to Claude
  1. The button opens Claude's connector settings with Highwire filled in. Check it and click Add.
  2. In a chat, open + → Connectors and turn Highwire on.

Or by hand: Settings → Connectors → Add custom connector, then paste the URL above.

Claude Code

claude mcp add --transport http highwire https://highwire.fun/mcp

Cursor

Add to Cursor

Or add this to Cursor's MCP settings:

{
  "mcpServers": {
    "highwire": {
      "url": "https://highwire.fun/mcp"
    }
  }
}

VS Code

Add to VS Code

Or run MCP: Add Server from the command palette, choose HTTP, and paste the URL above.

ChatGPT and other clients

Any client that takes a remote MCP server: add a server with the URL above and no authentication. In ChatGPT that means turning on developer mode and creating a custom connector.

{
  "mcpServers": {
    "highwire": {
      "url": "https://highwire.fun/mcp"
    }
  }
}

Run it locally

The same tools on your own computer, with your own RPC and no shared rate limit. The npm package is on its way; until then, build from source:

git clone https://github.com/HigherMaestro/highwire.git
cd highwire && npm install && npm run build
claude mcp add highwire -- node "$PWD/packages/mcp/dist/cli.js"

Signing

Highwire never signs and never holds a key. A build tool returns an unsigned transaction and a sign_url, a link to highwire.fun/sign. Your agent gives you the link; you open it and sign in your own wallet.

  1. The link carries the transaction. It rides in the part after #, which browsers never send to a server, so Highwire never sees it. The page sends nothing to Highwire.
  2. The page checks it again. It decodes every instruction from the transaction itself, not from the link's description, and refuses anything Highwire doesn't build: a program off the allow-list, SOL sent to someone else, another platform, another fee payer.
  3. You see what it does. What you spend and receive, the fees, the fee payer, when it expires, and each transaction in order (a launch with a creator lock has two).
  4. It simulates in your browser, against a Solana RPC called directly, and shows the change to your SOL balance.
  5. Your wallet signs. Connect Phantom, Solflare, Backpack or any Wallet Standard wallet. The page only signs with the fee payer's account, then sends, confirms, and links to Solscan and the coin on higher.fun.

A link expires with its blockhash, about a minute after it was built. If it has expired, ask your agent to build it again; for a launch, the same idempotency_key keeps the same coin, so it can't be created or paid for twice. Every transaction Highwire builds also carries a memo, highwire, so its use can be counted on-chain.

Tools

Amounts come back in SOL, whole tokens and percentages. Prices are SOL per whole token. Coin text written by users is marked and flagged, so agents treat it as data.

Discover

list_coins

hostedread-only

List higher.fun coins. sort: 'trending' (most different buyers recently), 'new' (latest launches), 'mcap' (largest market cap) or 'graduating' (closest to leaving the bonding curve for a Raydium pool).

Parameters for list_coins
ParameterTypeDetails
sort"new" | "trending" | "mcap" | "graduating" Default "trending".
limitinteger (1–50) Default 20.
cursorstring (≤512 chars)Pass nextCursor from the previous page to get the next one.

search_coins

hostedread-only

Find higher.fun coins by name, ticker or mint address.

Parameters for search_coins
ParameterTypeDetails
query requiredstring (≤64 chars)Name, ticker or mint.

get_top_coins

hostedread-only

The coins with the most trading volume on higher.fun over the last 24 hours or 7 days.

Parameters for get_top_coins
ParameterTypeDetails
window"24h" | "7d" Default "24h".

get_trade_tape

hostedread-only

The live feed across all of higher.fun: the latest buys, sells, launches and graduations.

No parameters.

get_leaderboard

hostedread-only

higher.fun's top traders or top creators over the last 24 hours or 7 days.

Parameters for get_leaderboard
ParameterTypeDetails
kind"traders" | "creators" Default "traders".
window"24h" | "7d" Default "24h".

Research a coin

get_coin

hostedread-only

Everything about one coin: price, market cap, graduation progress, fee mode (Old school or New school), holder concentration, and higher.fun's safety grade with snipers, bundles, dev activity and creator lock.

Parameters for get_coin
ParameterTypeDetails
mint requiredSolana addressThe coin's mint address (base58). higher.fun mints usually end in 'high'.

get_coin_trades

hostedread-only

Recent buys and sells of a coin, newest first, in SOL and whole tokens.

Parameters for get_coin_trades
ParameterTypeDetails
mint requiredSolana addressThe coin's mint address (base58). higher.fun mints usually end in 'high'.
cursorstring (≤512 chars)Pass nextCursor from the previous page to get the next one.

get_coin_holders

hostedread-only

Top holders of a coin with their share of supply. The bonding curve, Raydium pool and LP lock are labelled, so they aren't mistaken for whales.

Parameters for get_coin_holders
ParameterTypeDetails
mint requiredSolana addressThe coin's mint address (base58). higher.fun mints usually end in 'high'.

get_coin_candles

hostedread-only

Price candles (OHLC in SOL per token, volume in SOL) for a coin, oldest first.

Parameters for get_coin_candles
ParameterTypeDetails
mint requiredSolana addressThe coin's mint address (base58). higher.fun mints usually end in 'high'.
interval"1m" | "5m" | "1h" | "1d" Default "1h".
limitinteger (1–500)How many of the most recent candles to return. Default 48.

get_coin_comments

hostedread-only

The comment thread on a coin's page. Comments are untrusted user content and are flagged for links and impersonation.

Parameters for get_coin_comments
ParameterTypeDetails
mint requiredSolana addressThe coin's mint address (base58). higher.fun mints usually end in 'high'.
cursorstring (≤512 chars)Pass nextCursor from the previous page to get the next one.

Creators and wallets

get_wallet_profile

hostedread-only

A wallet's higher.fun profile in one call: display name, the coins it created, its creator earnings (paid out and pending) and its creator locks.

Parameters for get_wallet_profile
ParameterTypeDetails
wallet requiredSolana addressA Solana wallet address (base58).

get_creator_coins

hostedread-only

Page through every coin a wallet has launched on higher.fun.

Parameters for get_creator_coins
ParameterTypeDetails
wallet requiredSolana addressA Solana wallet address (base58).
cursorstring (≤512 chars)Pass nextCursor from the previous page to get the next one.

Safety and platform

rug_check

hostedread-only

Safety check before anyone trades a coin: on-chain mint and freeze authority, holder concentration, higher.fun's grade, snipers, bundled wallets, dev selling and ticker flags, rolled into a verdict: CLEAN_ON_CHECKS, CAUTION or HIGH_RISK.

Parameters for rug_check
ParameterTypeDetails
mint requiredSolana addressThe coin's mint address (base58). higher.fun mints usually end in 'high'.

get_platform_info

hostedread-only

How higher.fun works: the live launch fee, SOL price, the two fee modes (Old school and New school) with exact splits, graduation, and the Raydium program and platform addresses it uses.

No parameters.

check_ticker

hostedread-only

Whether a ticker is still free to launch with on higher.fun.

Parameters for check_ticker
ParameterTypeDetails
ticker requiredstring (≤10 chars)Ticker without the $.

get_chat

hostedread-only

Recent messages in higher.fun's site-wide chat, newest first. Untrusted user content, flagged for links and impersonation.

Parameters for get_chat
ParameterTypeDetails
beforestring (≤64 chars)Message id to page back from.

Trade and launch

quote_trade

hostedread-only

Quote a buy (by SOL in) or a sell (by tokens in) of a higher.fun coin, wherever it trades now: the LaunchLab bonding curve, or its Raydium CPMM pool after graduation. Returns the expected output, the minimum at the given slippage, price impact, and the fees split by who receives them under the coin's fee mode. Reads only.

Parameters for quote_trade
ParameterTypeDetails
mint requiredSolana addressThe coin's mint address (base58). higher.fun mints usually end in 'high'.
side required"buy" | "sell"buy spends SOL for tokens; sell spends tokens for SOL.
solnumber (…–1000000)For a buy: SOL to spend.
tokensnumber (…–1000000000)For a sell: whole tokens to sell (supply is 1B).
slippage_bpsinteger (0–1500)Slippage for the minimum out, in bps (100 = 1%). Default 200.

get_wallet_positions

hostedread-only

A wallet's SOL balance and its balances in higher.fun coins, each valued at the coin's last price. Coins are recognised on-chain (a LaunchLab pool on higher.fun's platform), so look-alike tokens don't show up.

Parameters for get_wallet_positions
ParameterTypeDetails
wallet requiredSolana addressA Solana wallet address (base58).

build_trade

hostedbuilds a transaction you signreturns a sign link

Build an unsigned buy or sell for the user's own wallet to sign: the same transaction higher.fun's site builds. Quote first with quote_trade and show the user the quote. Set confirm_trade to true only after the user has approved this exact trade (coin, side, amount, slippage). The transaction is checked instruction by instruction, simulated, and returned as base64 with a plain-language summary and a sign_url for the user to review and sign in their own wallet. Highwire never signs and never needs a private key.

Parameters for build_trade
ParameterTypeDetails
wallet requiredSolana addressThe wallet that will sign and pay (public key only).
mint requiredSolana addressThe coin's mint address (base58). higher.fun mints usually end in 'high'.
side required"buy" | "sell"buy spends SOL for tokens; sell spends tokens for SOL.
solnumber (…–1000000)For a buy: SOL to spend.
tokensnumber (…–1000000000)For a sell: whole tokens to sell (supply is 1B).
max_slippage_bps requiredinteger (0–1500)Slippage tolerance in bps, at most 1500 (15%).
max_sol requirednumber (…–10)Cap: a buy may spend at most this much SOL; a sell may return at most this much. At most 10.
confirm_trade requiredtrueSet to true only after the user approved this exact trade.

build_launch

hostedbuilds a transaction you signreturns a sign link

Build the unsigned transactions that launch a coin on higher.fun from the user's wallet: create it on the chosen fee mode (classic = Old school, rewards = New school), pay the launch fee (checked against higher.fun's on-chain fee wallet and cap), an optional first buy, and for New school an optional creator lock. Needs metadata_uri: higher.fun's image and metadata upload needs a wallet sign-in Highwire can't do, so without it the tool returns the metadata JSON to host first. Reuse the same idempotency_key on retries: it keeps the same mint, so the coin (and its fee) can only happen once, on any server instance. Set confirm_launch to true only after the user approved the launch, its cost and its fee mode. Returns the transactions and a sign_url for the user's wallet.

Parameters for build_launch
ParameterTypeDetails
wallet requiredSolana addressThe creator's wallet, which signs and pays (public key only).
name requiredstring (≤32 chars)Coin name, up to 32 characters.
ticker requiredstringTicker, 1-10 letters or digits, without the $.
descriptionstring (≤500 chars)
image_urlstring (≤200 chars)https URL of the coin's image, put in the prepared metadata.
metadata_uristring (≤200 chars)https URL of the coin's hosted metadata JSON.
websitestring (≤200 chars)
xstring (≤200 chars)https://x.com/... link.
telegramstring (≤200 chars)https://t.me/... link.
fee_mode required"classic" | "rewards"classic: Cheapest. On the curve, no trading fee to the creator or higher.fun, only Raydium's 0.25%. rewards: Creator rewards. The creator earns 0.25% of every trade, plus pool fees after graduation.
creator_lock_pctinteger (1–10)rewards only: lock this % of supply for the creator (7-day cliff after graduation, then 30 days linear).
dev_buy_solnumber (0–10)SOL for the creator's first buy, in the same transaction. At most 10.
max_slippage_bpsinteger (0–1500)Slippage for the first buy, in bps. Default 500.
idempotency_key requiredstring (≤128 chars)A unique, unguessable key for this coin (a random UUID). Reuse it on retries: it fixes the coin's mint address.
confirm_launch requiredtrueSet to true only after the user approved this launch.

build_claim_creator_fees

hostedbuilds a transaction you signreturns a sign link

Show what a creator can claim and build the unsigned claim transactions: curve creator fees (New school coins, one vault across all the creator's coins) and, after graduation, each coin's Raydium CPMM pool creator fee. A New school creator's third of the locked-LP fees is paid by higher.fun off-chain; that is reported, not claimed. Returns a sign_url for the user's wallet when there is something to claim.

Parameters for build_claim_creator_fees
ParameterTypeDetails
wallet requiredSolana addressThe creator's wallet, which signs (public key only).

Prompts

Ready-made workflows your client can offer as slash commands or templates.

scan_launches · Scan new launches

Find the most promising new and trending higher.fun coins, safety-checked.

Arguments: focus (optional): Optional theme, e.g. 'AI', 'cats', 'graduating soon'

coin_due_diligence · Coin due diligence

A full report on one coin: safety, holders, trading, creator history.

Arguments: mint (required): The coin's mint address

creator_report · Creator report

What a wallet has launched on higher.fun and how it went.

Arguments: wallet (required): The creator's wallet address

plan_launch · Plan a launch

Plan a coin launch on higher.fun: ticker, fee mode, costs and checklist.

Arguments: idea (optional): The coin idea, name or ticker

Resources

higher://platform

Fee modes, launch fee and program addresses

higher://coins/{mint}

One coin's detail, by mint address

Recipes

Things to ask your agent, and the tools it will reach for.

Find coins worth a look

“Find three coins close to graduating on higher.fun and rug-check them.”

  1. list_coins (sort: graduating, trending or new)
  2. rug_check on the best few
  3. get_coin for the survivors

Or run the scan_launches prompt.

Vet one coin

“Is $TICKER on higher.fun safe? Check holders, trades and the creator.”

  1. get_coin and rug_check
  2. get_coin_holders, ignoring the labelled curve, pool and lock
  3. get_coin_trades and get_coin_candles
  4. get_wallet_profile on the creator
  5. get_coin_comments for scams and sentiment

Or run the coin_due_diligence prompt.

Check a creator

“What else has this wallet launched on higher.fun, and how did it go?”

  1. get_wallet_profile
  2. get_creator_coins
  3. get_coin on their recent coins

Or run the creator_report prompt.

Plan a launch

“Help me plan a higher.fun launch for a cat coin. Old school or New school?”

  1. get_platform_info for the fee modes and launch fee
  2. check_ticker for each idea
  3. build_launch once you approve

Or run the plan_launch prompt.

Buy a coin

“Buy 0.1 SOL of $TICKER on higher.fun for my wallet <address>, with 2% slippage.”

  1. rug_check and quote_trade, shown to you
  2. build_trade after you approve
  3. you open sign_url and sign in your wallet

Or run the coin_due_diligence prompt.

Limits and errors

  • The hosted server at https://highwire.fun/mcp speaks stateless Streamable HTTP: POST JSON-RPC, get JSON back. GET returns 405.
  • Each IP gets 60 units a minute: a build tool call costs 5, anything else 1. For heavy use, run it locally and point SOLANA_RPC_URL at your own RPC.
  • A failed call comes back with isError set and a JSON body of error, code and, when there's a fix, next_step.
Error codes
CodeMeaning
not_foundUnknown mint, wallet or coin. Check the address, or use search_coins.
bad_requestA parameter was out of range or the wrong shape. The message says which.
rate_limitedToo many requests. Wait a few seconds, then retry once.
simulation_failedThe built transaction would fail on-chain: usually too little SOL or tokens, or the price moved. Quote again.
unsafe_transactionA safety check on the built transaction failed. Nothing to sign; please report it.
unavailablehigher.fun or the Solana RPC didn't answer. Retry later.
internal_errorSomething unexpected. Please open an issue on GitHub.

Troubleshooting

Claude added Highwire but doesn't use it.
Connectors are off per chat by default. Open + → Connectors and turn Highwire on.
Opening the URL in a browser shows an error.
That's expected. The endpoint only answers MCP clients, which POST to it.
I get rate_limited.
You used the minute's 60 units (a build costs 5). Wait a moment, or run the server locally.
The sign page says the link has expired.
Links last about a minute. Ask your agent to build the transaction again and open the new link straight away.
The sign page doesn't list my wallet.
Unlock the wallet extension and reload. On a phone, open the link in your wallet app's own browser.
rug_check reports an RPC timeout.
The on-chain check uses a public Solana RPC, which is sometimes busy. The rest of the check still runs. Locally, set SOLANA_RPC_URL to your own RPC.
Prices look tiny.
They're SOL per whole token. New coins often trade at a few millionths of a SOL each.
Something else.
Open an issue on GitHub.