Fibrous MCP Server
Um servidor para Fibrous Finance, uma plataforma de agregação DeFi.
GitHub
1
Experimente este MCPPatrocinadoDocumentação
Servidor MCP Fibrous
Servidor MCP que fornece a agentes de IA ferramentas para operações DeFi em múltiplas cadeias usando o SDK Fibrous.
Recursos
10 Ferramentas Disponíveis:
get-supported-tokens- Listar tokens disponíveisget-supported-protocols- Listar protocolos DEXget-best-route- Encontrar rotas de swap ideaisget-best-route-batch- Encontrar rotas ideais para swaps em lote (somente Starknet)build-transaction- Gerar dados de transaçãobuild-batch-transaction- Gerar dados de transação em lote (somente Starknet)format-token-amount- Converter entre formatos human e weiget-token- Buscar detalhes de token por endereçoexecute-swap- Executar swaps de tokens (requer configuração de carteira)estimate-swap- Estimar custos de gás (requer configuração de carteira)
Redes Suportadas:
- Base - Uniswap V3, Aerodrome, SwapBased
- Starknet - JediSwap, MySwap, 10kSwap, Ekubo
- Scroll - Uniswap V3, SyncSwap, iZiSwap
Início Rápido
# Install dependencies
pnpm install
# Configure environment
cp .env.example .env
# Edit .env with your RPC URLs and private keys
# Build the project
pnpm build
# Start server
pnpm start
Configuração
Variáveis de Ambiente
Configuração Principal:
NODE_ENV=development
DEFAULT_SLIPPAGE=1.0
Configuração de Rede:
# Base Network
BASE_RPC_URL=https://mainnet.base.org
BASE_PRIVATE_KEY=0x...
# Starknet Network
STARKNET_RPC_URL=https://starknet-mainnet.public.blastapi.io
STARKNET_PRIVATE_KEY=0x...
STARKNET_PUBLIC_KEY=0x...
# Scroll Network
SCROLL_RPC_URL=https://rpc.scroll.io
SCROLL_PRIVATE_KEY=0x...
Configurações Opcionais:
# Debug configuration
DEBUG=false
LOG_LEVEL=info
ENABLE_METRICS=false
# API optimization
FIBROUS_API_KEY=your_api_key_here
Configuração do Cliente MCP
Adicione à configuração do seu cliente MCP:
{
"mcpServers": {
"fibrous-mcp": {
"command": "node",
"args": ["/path/to/fibrous-mcp/build/src/index.js"]
}
}
}
Desenvolvimento
Pré-requisitos
- Node.js 18+
- pnpm (recomendado)
- TypeScript 5.0+
Configuração
# Clone repository
git clone <repository-url>
cd fibrous-mcp
# Install dependencies
pnpm install
# Start development server
pnpm dev
# Watch mode with auto-reload
pnpm dev:watch
Qualidade de Código
# Type checking
pnpm typecheck
# Linting
pnpm lint
pnpm lint:fix
# Code formatting
pnpm format
pnpm format:check
Testes
Suíte de testes abrangente com 82,6% de cobertura em todos os módulos:
# Run all tests
pnpm test
# Watch mode for development
pnpm test:watch
# Coverage report
pnpm test:coverage
# CI mode
pnpm test:ci
Resultados dos Testes:
- 167/167 testes passando
- 10 suítes de teste, ~3,1s de execução
- BigInt nativo com router-sdk v0.6.0
Cobertura de Testes por Módulo
- Endpoints de API: 17 testes
- Configuração do servidor: 14 testes
- Handlers de ferramentas: 14 testes
- Utilitários: 122 testes (operações BigInt, configuração, respostas, lógica de swap, validação)
Detalhes de Cobertura
- Declarações: 82,56%
- Ramos: 73,46%
- Funções: 75,71%
- Linhas: 83,18%
Detalhes Técnicos
Integração BigInt Nativo
- Router SDK v0.6.0: Compatibilidade com o SDK Fibrous mais recente
- Bundle 50KB menor: Dependência BigNumber.js removida
- Cálculos mais rápidos: Operações
bigintnativas em JavaScript - Padrões modernos: Recursos ES2022+
// Example: Native BigInt usage
const amount = BigInt("1000000000000000000"); // 1 ETH
const route = await router.getBestRoute(amount, tokenIn, tokenOut, "base");
Arquitetura
- Protocolo MCP: Conformidade com o Model Context Protocol
- Segurança de Tipos: Implementação completa em TypeScript
- Tratamento de Erros: Gerenciamento abrangente de erros
- Segurança: Validação e mascaramento de variáveis de ambiente
Implantação em Produção
Configuração do Ambiente
# Production build
pnpm build:clean
# Production start
NODE_ENV=production pnpm start:prod
Considerações de Segurança
- Armazene chaves privadas com segurança (use gerenciamento de segredos)
- Configure endpoints RPC apropriados
- Configure monitoramento e registro de logs
- Use HTTPS para todas as conexões externas
Desempenho
- BigInt Nativo: 2-3x mais rápido que BigNumber.js
- Tamanho do Bundle: Redução de 50KB em comparação com v0.5.x
- Uso de Memória: Otimizado para processos de longa duração
- Limite de Taxa: 200 req/min (configurável)
Recursos
- Fibrous Finance - Site principal
- Documentação - Documentação da API
- Protocolo MCP - Especificações do MCP
- Router SDK v0.6.0 - Documentação local do SDK
Endpoints de API:
- https://api.fibrous.finance (200 req/min)
- https://graph.fibrous.finance
Contribuindo
- Faça um fork do repositório
- Crie um branch de funcionalidade
- Faça suas alterações
- Adicione testes para novas funcionalidades
- Garanta que todos os testes passem:
pnpm test - Envie um pull request
Diretrizes de Desenvolvimento
- Siga as melhores práticas de TypeScript
- Mantenha a cobertura de testes acima de 75%
- Use mensagens de commit convencionais
- Atualize a documentação para novos recursos
Licença
MIT - veja LICENSE
Aviso de Risco: Operações DeFi envolvem risco financeiro. Sempre verifique as transações e use testnet para desenvolvimento.
Status: Pronto para produção com cobertura abrangente de testes e suporte nativo a BigInt.