Docs · for builders

The MCP server and the CLI

AI assistants reach aio through an MCP server and terminals through the aio-launch CLI; both use API keys and sign locally.

  • API: on here
  • MCP server: on here

At a glance

MCP endpoint
/api/mcp
Streamable HTTP, stateless
tools
up to 18
one of them only when coin drafting is set up
sign-in
API key
sent as a Bearer token, with the same scopes and limits
CLI
aio-launch
the command is aio. Not published to npm yet

The MCP server

MCP (Model Context Protocol) is a standard way for an AI assistant to call outside tools. aio hosts an MCP server at /api/mcp. Point a client at it and send an aio API key as a Bearer token.

It is off unless the operator sets both API_ENABLED and MCP_ENABLED. A request without a valid key gets a 401 that points at the server's protected-resource metadata. Signing in through OAuth instead of a key is planned, not built.

The tools

toolsscopewhat they do
wallet_challenge, link_walletreadlink a wallet to the key with a signed message
launch_coin, submit_launchlaunchprepare a launch, then submit the signed fee transaction
get_launch, get_coin, list_coins, quotereadread launches, coins and prices
buy, selltradean unsigned swap plus a simulation
submit_transactiontraderelay a swap you signed
claim_feesclaimclaim fees to the account's own wallet
get_fees_for_handle, portfolioreadfees for a handle, and a wallet's positions
get_coin_strategy, set_coin_strategyread, strategyread or change a coin's creator strategy
resolve_pairingreadcheck a token a new coin could pair with
draft_coinlaunchdraft a coin from an idea with a model, when the model gateway is set up

Every tool that moves money returns an unsigned transaction and a simulation. You sign it on your machine and send it back. Tools are labelled read-only or destructive, so an assistant can ask before acting.

The CLI

The package is called aio-launch and its command is aio. It needs Node 22.12 or later. It is built and tested but not published to npm yet, so for now it runs from a local build of packages/cli.

aio login
aio wallet link --keypair ./wallet.json
aio launch --input ./coin.json --keypair ./wallet.json
aio status <launch-id>
aio quote <mint> buy 10000000
aio buy <mint> 10000000 --keypair ./wallet.json
aio sell <mint> 1000000 --keypair ./wallet.json
aio fees @handle
aio strategy get <mint>
  • login reads the key from a hidden prompt and stores it in a config file only you can read.
  • Amounts are raw base units: lamports for SOL buys, coin units for sells. Slippage defaults to 1%.
  • The build simulation must succeed before the CLI signs a swap.
  • --unsigned --wallet <address> prints the unsigned transaction for an outside signer, without loading a keypair.
  • A signed swap is saved locally before it is sent. aio trade resume resends the same transaction, never a new one.

Good to know