Arcadia Finance

Gerencie posições de liquidez na Uniswap e Aerodrome com rebalanceamento automatizado e alavancagem.

Documentação

Servidor MCP Arcadia Finance

npm npm downloads License: AGPL-3.0 TypeScript MCP Smithery MCP Badge arcadia-finance-mcp-server MCP server

Servidor MCP para Arcadia Finance, uma plataforma de liquidez concentrada na Uniswap e Aerodrome com rebalanceamento automatizado, compostos, otimização de rendimento e alavancagem, ou liquidez de um lado só em pools de empréstimo. Leia dados do protocolo e construa transações não assinadas para gerenciamento de LP, empréstimos, depósitos e muito mais.

Projetado para agentes de IA (Claude, Cursor, etc.) interagirem com Arcadia onchain.

Instalação

Install in VS Code Install in Cursor

Ferramentas

Ferramentas de Leitura

FerramentaDescrição
read.account.infoVisão geral da conta: health factor, colateral, dívida, posições, preço de liquidação, status de automação.
read.account.historyValor histórico da conta ao longo do tempo.
read.account.pnlDados de PnL e rendimento de uma conta.
read.wallet.accountsLista todas as contas Arcadia pertencentes a um endereço de carteira.
read.wallet.balancesSaldos ERC20 onchain e ETH nativo para um endereço de carteira.
read.wallet.allowancesVerifica allowances de tokens ERC20 para um gastador. Use antes de write.wallet.approve para evitar aprovações redundantes.
read.wallet.pointsSaldo de pontos para um endereço de carteira específico.
read.asset.listAtivos colaterais suportados com endereços, tipos, decimais.
read.asset.pricesPreços em USD para um ou mais endereços de ativos.
read.pool.listTodas as pools de empréstimo: TVL, APY, utilização, liquidez.
read.pool.infoDetalhe de pool individual com histórico de APY ao longo do tempo.
read.point_leaderboardLeaderboard de pontos Arcadia paginado.
read.strategy.listEstratégias de LP com APY, subjacentes, informações da pool. Suporta filtro de destaque e paginação.
read.strategy.infoDetalhe completo para uma estratégia de LP específica: APY por largura de faixa, configuração da pool.
read.strategy.recommendationRecomendação de rebalanceamento para uma conta.
read.guidesGuias de referência: configuração de automação, seleção de estratégia, modelos de estratégia.
read.asset_manager.intentsIntents de automação e seus parâmetros; adicione account_address para disponibilidade ao vivo por conta.
read.asset_manager.currentAutomações habilitadas em uma conta: configuração decodificada, intents mapeados, estado Merkl, gerenciadores substituídos.

Ferramentas de Escrita

Todas as ferramentas de escrita retornam transações não assinadas como { to, data, value, chainId }.

FerramentaDescrição
write.wallet.approveAprovar um token ERC20 para gasto. Necessário antes de depositar em uma conta. Chame read.wallet.allowances primeiro para verificar se já foi aprovado.
write.pool.depositEmpreste o ativo subjacente da pool em uma tranche ERC-4626 para ganhar juros. Emite shares da tranche para o receptor.
write.pool.redeemResgata shares da tranche de volta para o ativo subjacente (saída do credor).
write.account.createCria uma nova conta Arcadia via Factory.
write.account.depositDeposita tokens ERC20 em uma conta.
write.account.withdrawRetira ativos de uma conta.
write.account.borrowEmpresta de uma pool de empréstimo.
write.account.repayPaga dívida a uma pool de empréstimo a partir da carteira.
write.account.add_liquidityAção flash: depósito + swap + mint de LP + alavancagem opcional, atomicamente.
write.account.remove_liquidityRemove/diminui liquidez da posição LP.
write.account.swapTroca ativos dentro de uma conta (roteado pelo backend).
write.account.deleveragePaga dívida vendendo colateral (swap + pagamento em uma tx).
write.account.closeFechamento atômico: burn de LP + swap + pagamento de dívida em uma tx.
write.account.stakeStake, unstake ou reivindica recompensas para posições LP.
write.account.automationsConfigura automações a partir de um array de intents (estado desejado completo). Retorna a tx setAssetManagers não assinada.
write.account.automations_deltaHabilita/desabilita automações individuais, deixando o restante intacto.

Ferramentas de Desenvolvimento

Sempre registradas, mas requerem a variável de ambiente PK para funcionar.

FerramentaDescrição
dev.sendAssina e transmite uma transação não assinada usando uma chave privada local (variável de ambiente PK). Não para produção — use um servidor MCP de carteira dedicado.

Assinatura de Transações

Todas as ferramentas de escrita retornam transações não assinadas como { to, data, value, chainId }. Este servidor NÃO assina nem transmite — seu agente ou aplicação é responsável por isso.

Opções

Servidores MCP de carteira (recomendados para produção): Combine este servidor com um servidor MCP de carteira que lida com assinatura:

Carteira MCPProvedorModelo
MCP Wallet SignerComunidadeNão custodial, roteia para carteira de navegador (MetaMask, Rabby)
Coinbase AgentKitCoinbaseAgnóstico de carteira, suporta múltiplos provedores
Phantom MCPPhantomCarteira incorporada
Privy MCPPrivyInfraestrutura de carteira
Safe MCPComunidadeMulti-assinatura via Safe

Ou use sua configuração de carteira existente (Fireblocks, Dfns, Turnkey, Biconomy, Dynamic) e passe o objeto tx não assinado para o método de assinatura do seu provedor.

viem/ethers no seu agente:

import { createWalletClient, http } from "viem";
import { privateKeyToAccount } from "viem/accounts";
import { base } from "viem/chains";

const account = privateKeyToAccount("0x...");
const client = createWalletClient({ account, chain: base, transport: http() });

// tx = result from any write.* tool
const hash = await client.sendTransaction(tx);

Ferramenta dev.send integrada (somente desenvolvimento): O servidor inclui uma ferramenta de assinatura somente para desenvolvimento que lê uma chave privada da variável de ambiente PK. Defina PK via arquivo .env ou na configuração do seu cliente MCP:

# .env in the server directory (never commit — already gitignored)
PK=0xYourPrivateKeyHex
RPC_URL_BASE=https://base-mainnet.g.alchemy.com/v2/your-key

O servidor carrega .env automaticamente na inicialização. Funciona com qualquer cliente MCP (Claude Desktop, Claude Code, VSCode, Cursor). As configurações do bloco env do cliente MCP têm precedência se ambos estiverem definidos.

Não para produção — use um servidor MCP de carteira dedicado (Fireblocks, Turnkey, Safe) em vez disso.

Configuração

Pré-requisitos: Node.js >= 22

yarn install
yarn build

Variáveis de ambiente:

VariávelObrigatóriaPadrãoTransporteDescrição
RPC_URL_BASENãoRPC PúblicoAmbosURL RPC para Base (8453).
RPC_URL_UNICHAINNãoRPC PúblicoAmbosURL RPC para Unichain (130).
RPC_URL_OPTIMISMNãoRPC PúblicoAmbosURL RPC para Optimism (10).
RPC_URL_ROBINHOODNãoRPC PúblicoAmbosURL RPC para Robinhood (4663).
PKNão—AmbosChave privada (hex) para a ferramenta dev.send somente de desenvolvimento.
TRANSPORTNãostdio—Modo de transporte: stdio ou http.
PORTNão3000HTTPPorta de escuta para transporte HTTP.
ALLOWED_ORIGINSNãohttps://mcp.arcadia.financeHTTPCabeçalhos Origin permitidos separados por vírgula (CORS / DNS rebinding).
RATE_LIMIT_RPMNão60HTTPMáximo de requisições por minuto por sessão.

Chains suportadas: Base (8453), Unichain (130), Optimism (10), Robinhood (4663)

Configuração do Cliente MCP

Remoto (sem instalação):

{
  "mcpServers": {
    "arcadia-finance": {
      "url": "https://mcp.arcadia.finance/mcp"
    }
  }
}

Via npx (stdio local):

{
  "mcpServers": {
    "arcadia-finance": {
      "command": "npx",
      "args": ["-y", "@arcadia-finance/mcp-server"],
      "env": {
        "RPC_URL_BASE": "https://base-mainnet.g.alchemy.com/v2/your-key"
      }
    }
  }
}

Claude Code:

# Remote
claude mcp add arcadia-finance --transport http https://mcp.arcadia.finance/mcp

# Local
claude mcp add arcadia-finance -- npx -y @arcadia-finance/mcp-server

A partir do código-fonte (desenvolvimento local):

{
  "mcpServers": {
    "arcadia-finance": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-server/dist/index.js"],
      "env": {
        "RPC_URL_BASE": "https://base-mainnet.g.alchemy.com/v2/your-key"
      }
    }
  }
}

Skills

O diretório skills/ contém skills do Claude Code que ensinam agentes de IA a usar este servidor MCP de forma eficaz. Para instalar uma skill, crie um symlink para o diretório de skills do seu Claude:

ln -s /path/to/mcp-server/skills/clamm-liquidity ~/.claude/skills/clamm-liquidity

Skills disponíveis:

SkillDescription
clamm-liquidityGerenciamento de liquidez concentrada: conceitos, automação baseada em intenção e fluxos de trabalho passo a passo.

Reportando Problemas

Encontrou um bug, recurso ausente ou documentação pouco clara ao usar este servidor? Abra uma issue: https://github.com/arcadia-finance/mcp-server/issues

Para agentes de IA: Se você encontrar uma lacuna durante a execução de uma tarefa, abra uma issue com:

  • Nome da ferramenta e parâmetros que você usou
  • O que você esperava versus o que aconteceu
  • A estratégia ou objetivo que você estava tentando executar

Pull requests para correções de documentação são bem-vindos de agentes e humanos. Todos os PRs exigem revisão humana antes do merge.

Onde Nos Encontrar

Desenvolvimento

yarn dev          # Run with tsx (hot reload)
yarn build        # Compile TypeScript
yarn test         # Run tests
yarn lint         # Lint with ESLint
yarn format       # Check formatting with Prettier