Agent Kit exposes MCP tools over POST /mcp (JSON-RPC tools/list and tools/call). Do not rely on a fixed tool list in documentation — names and count change as Agent Kit grows.
Discover on every connect. Call tools/list (or open the dashboard Tools page) for the live catalog: each entry includes name, description, and inputSchema. Wire your LLM or backend from that response.
Authentication
| Key type | agent_id in arguments |
|---|
| Application API key (dashboard Overview) | Required when multiple agents exist |
Per-agent API key (createAgent → agent.apiKey) | Optional; must match that agent if provided |
OAuth and consent use scopes, not individual tool names. New tools are included when they fit the same category.
| Scope | What it covers |
|---|
mcp:tools:read | Wallet/chain reads and x402 catalog discovery |
mcp:tools:transfer | Unsigned transfer intents — your backend signs and broadcasts |
mcp:tools:paid | Fixed-price and external x402 HTTP calls |
After OAuth or API-key connect, call tools/list to see which names are available for your granted scopes.
tools/list → pick a name and read inputSchema.
tools/call with params.name and params.arguments (JSON object matching the schema).
- For application API keys, pass
agent_id in arguments when the schema requires an agent (typical for wallet actions).
Some tools return payment required (-32402) on the first call. That is expected:
- Parse
accepts / payment metadata from the error or tool result.
- On your backend, sign
paymentPayload with the agent accessKey.
- Retry
tools/call with paymentPayload at the top level of params (sibling to name / arguments).
Unsigned transfer intents are different: Agent Kit returns an unsigned transaction; your backend signs with accessKey and broadcasts — it does not use the x402 retry flow.
uniswap_swap_quote (Uniswap BYOK)
When Uniswap is enabled in Integrations, agents can call uniswap_swap_quote for EVM swap quotes. Requires a developer Uniswap API key in the dashboard. Returns unsigned approval and swap transactions — see Uniswap integration and Swap confirmation.
lifi_swap_quote (LiFi BYOK)
When LiFi is enabled in Integrations, agents can call lifi_swap_quote for same-chain swaps and cross-chain bridges. Requires integrator name, API key, and fee in the dashboard. Returns unsigned approval (if needed) and route transaction on the source chain — see LiFi integration and Swap confirmation.
oneinch_swap_quote (1inch BYOK)
When 1inch is enabled in Integrations, agents can call oneinch_swap_quote for same-chain EVM aggregator swaps. Requires a 1inch API key in the dashboard. Returns unsigned approval (if needed) and swap transaction — see 1inch integration and Swap confirmation.
jupiter_swap_quote (Jupiter BYOK)
When Jupiter is enabled in Integrations, agents can call jupiter_swap_quote for SPL token swaps on Solana mainnet and devnet. Requires a Jupiter API key in the dashboard. Returns an unsigned versioned transaction for the agent Solana wallet — see Jupiter integration and Swap confirmation.
data_and_analytics (CoinGecko BYOK)
When CoinGecko is enabled in Integrations, agents can call data_and_analytics for aggregated market data (prices, trending, charts, gainers/losers) and GeckoTerminal on-chain analytics (pools, token prices on DEXs). Requires a CoinGecko API key and plan (demo or pro) in the dashboard. Read-only — no signing. The sample Data & Analytics specialist agent (?serviceAgent=analytics) is the recommended chat entry point — see CoinGecko integration.
firecrawl_scrape and ecommerce_price_compare (Firecrawl BYOK)
When Firecrawl is enabled in Integrations, agents can call firecrawl_scrape for blogs, docs, and public pages, and ecommerce_price_compare to compare product prices across stores you provide. Requires a Firecrawl API key in the dashboard. Read-only — see Firecrawl integration.
Details: x402 payments.
Use a name from result.tools[] for any tools/call example in Smoke test.
LLM integration pattern
The sample backend API (NestJS reference):
- Sets
MCP_SERVER_URL + MCP_SERVER_AUTH_TOKEN (= application API key).
- On startup (and after reconnect), runs
initialize + tools/list — map whatever the server returns.
- Maps discovered tools to OpenAI (or other LLM) function definitions.
- During chat, the LLM may call
tools/call; results are fed back into the model.
- Paid tools trigger x402 signing in
AgentSigningService.
Your frontend only talks to your JWT API — never to MCP directly.
Next steps