Skip to main content
FibX includes a built-in Model Context Protocol (MCP) server that exposes DeFi operations as callable tools. AI editors like Cursor, Claude Desktop, Antigravity, and any MCP-compatible client can connect to FibX and execute trades, transfers, and DeFi operations through natural language.

Quick Start

npx fibx mcp-start
This starts an MCP server over stdio (standard input/output). The server speaks JSON-RPC and is designed to be launched by an AI editor, not run manually.

Editor Setup

Cursor

Create .cursor/mcp.json in your project root:
{
  "mcpServers": {
    "fibx": {
      "command": "npx",
      "args": ["-y", "fibx", "mcp-start"]
    }
  }
}

Claude Desktop

Add to claude_desktop_config.json:
{
  "mcpServers": {
    "fibx": {
      "command": "npx",
      "args": ["-y", "fibx", "mcp-start"]
    }
  }
}

Antigravity

Add to ~/.gemini/antigravity/mcp_config.json:
{
  "mcpServers": {
    "fibx": {
      "command": "npx",
      "args": ["-y", "fibx", "mcp-start"]
    }
  }
}
You must be authenticated (fibx auth login or fibx auth import) before the MCP server can execute wallet operations.

Available Tools

Read-Only

ToolDescription
get_auth_statusCheck session and Fibrous API health
get_balanceGet native and ERC-20 token balances
get_tx_statusCheck transaction receipt and status
get_aave_statusGet Aave V3 position health on Base

Transactional

These tools are marked as destructive — the AI editor will ask for confirmation before executing.
ToolDescription
swap_tokensSwap tokens via Fibrous aggregator with optimal routing
send_tokensSend native or ERC-20 tokens to a recipient
aave_actionSupply, borrow, repay, or withdraw on Aave V3 (Base)

Utility

ToolDescription
config_actionSet or view custom RPC URLs to avoid rate limits

Tool Details

get_auth_status

Check whether FibX is authenticated and the Fibrous API is reachable.
ParameterTypeRequiredDescription
chainstringNobase, citrea, hyperevm, or monad
Output: { authenticated, walletAddress, sessionType, chain, fibrousStatus }

get_balance

Fetch all token balances for the active wallet. Only returns non-zero balances.
ParameterTypeRequiredDescription
chainstringNobase, citrea, hyperevm, or monad
Output: { wallet, chain, balances: { "ETH": "0.5", "USDC": "100.0", ... } }

swap_tokens

Execute a token swap through Fibrous. Handles approvals, simulation, and routing automatically.
ParameterTypeRequiredDescription
amountstringYesAmount of the source token to swap
from_tokenstringYesSource token symbol (e.g. ETH, USDC)
to_tokenstringYesTarget token symbol (e.g. USDC, DAI)
chainstringNobase, citrea, hyperevm, or monad
slippagenumberNoSlippage tolerance in percent (default: 0.5)
Output: { txHash, amountIn, amountOut, tokenIn, tokenOut, router, chain } Example prompt: “Swap 0.1 ETH to USDC on Base”

send_tokens

Transfer native or ERC-20 tokens. Simulates before executing.
ParameterTypeRequiredDescription
amountstringYesAmount to send
recipientstringYesRecipient address (0x...)
tokenstringNoToken symbol (omit for native token)
chainstringNobase, citrea, hyperevm, or monad
Output: { txHash, amount, token, recipient, chain } Example prompt: “Send 50 USDC to 0x1234…“

get_tx_status

Look up a transaction receipt by hash.
ParameterTypeRequiredDescription
hashstringYesTransaction hash (0x...)
chainstringNoMust match the chain of the original transaction
Output: { hash, status, blockNumber, from, to, gasUsed, chain }

get_aave_status

Get Aave V3 account health on Base.
ParameterTypeRequiredDescription
(none)No input required
Output: { wallet, healthFactor, totalCollateralUSD, totalDebtUSD, availableBorrowsUSD }

aave_action

Execute an Aave V3 operation. Auto-handles ETH ↔ WETH wrapping. Use "max" as amount for full repay/withdraw.
ParameterTypeRequiredDescription
actionstringYessupply, borrow, repay, or withdraw
amountstringYesAmount or max for full repay/withdraw
tokenstringYesToken symbol (ETH, USDC, DAI, etc.)
Output: { action, amount, token, txHash, chain } Example prompts: “Supply 0.5 ETH to Aave” or “Repay max USDC on Aave”

config_action

Manage custom RPC URLs. Useful when encountering rate limits on public endpoints.
ParameterTypeRequiredDescription
actionstringYesset-rpc, get-rpc, or list
chainstringYes*Required for set-rpc and get-rpc
urlstringYes*Required for set-rpc — full RPC endpoint
Output: { action, chain?, url?, rpcUrls? } Example prompt: “I’m getting rate limited on Base, set a custom RPC”

Supported Chains

ChainNative TokenFibrous Network
BaseETHbase
CitreacBTCcitrea
HyperEVMHYPEhyperevm
MonadMONmonad

Environment Variables

VariableDescription
FIBX_API_URLCustom fibx-server URL (for Privy wallet operations)
If using Privy authentication, ensure fibx-server is running and accessible before starting the MCP server.