Fibrous MCP Server
Un servidor para Fibrous Finance, una plataforma de agregación DeFi.
GitHub
1
Prueba este MCPPatrocinadoDocumentación
Servidor MCP Fibrous
Servidor MCP que proporciona a los agentes de IA herramientas para operaciones DeFi multicadena utilizando el SDK de Fibrous.
Características
10 herramientas disponibles:
get-supported-tokens- Listar tokens disponiblesget-supported-protocols- Listar protocolos DEXget-best-route- Encontrar rutas de intercambio óptimasget-best-route-batch- Encontrar rutas óptimas para intercambios por lotes (solo Starknet)build-transaction- Generar datos de transacciónbuild-batch-transaction- Generar datos de transacción por lotes (solo Starknet)format-token-amount- Convertir entre formatos human y weiget-token- Obtener detalles de token por direcciónexecute-swap- Ejecutar intercambios de tokens (requiere configuración de wallet)estimate-swap- Estimar costos de gas (requiere configuración de wallet)
Redes compatibles:
- Base - Uniswap V3, Aerodrome, SwapBased
- Starknet - JediSwap, MySwap, 10kSwap, Ekubo
- Scroll - Uniswap V3, SyncSwap, iZiSwap
Inicio 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
Configuración
Variables de entorno
Configuración principal:
NODE_ENV=development
DEFAULT_SLIPPAGE=1.0
Configuración de red:
# 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...
Configuración opcional:
# Debug configuration
DEBUG=false
LOG_LEVEL=info
ENABLE_METRICS=false
# API optimization
FIBROUS_API_KEY=your_api_key_here
Configuración del cliente MCP
Añade a la configuración de tu cliente MCP:
{
"mcpServers": {
"fibrous-mcp": {
"command": "node",
"args": ["/path/to/fibrous-mcp/build/src/index.js"]
}
}
}
Desarrollo
Requisitos previos
- Node.js 18+
- pnpm (recomendado)
- TypeScript 5.0+
Configuración
# 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
Calidad del código
# Type checking
pnpm typecheck
# Linting
pnpm lint
pnpm lint:fix
# Code formatting
pnpm format
pnpm format:check
Pruebas
Suite de pruebas integral con 82.6% de cobertura en todos los 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 de las pruebas:
- 167/167 pruebas superadas
- 10 suites de pruebas, ~3.1s de ejecución
- BigInt nativo con router-sdk v0.6.0
Cobertura de pruebas por módulo
- Endpoints de API: 17 pruebas
- Configuración del servidor: 14 pruebas
- Manejadores de herramientas: 14 pruebas
- Utilidades: 122 pruebas (operaciones BigInt, configuración, respuestas, lógica de intercambio, validación)
Detalles de cobertura
- Sentencias: 82.56%
- Ramas: 73.46%
- Funciones: 75.71%
- Líneas: 83.18%
Detalles técnicos
Integración nativa con BigInt
- Router SDK v0.6.0: Compatibilidad con el último SDK de Fibrous
- Bundle 50KB más pequeño: Se eliminó la dependencia de BigNumber.js
- Cálculos más rápidos: Operaciones nativas de JavaScript
bigint - Estándares modernos: Funciones ES2022+
// Example: Native BigInt usage
const amount = BigInt("1000000000000000000"); // 1 ETH
const route = await router.getBestRoute(amount, tokenIn, tokenOut, "base");
Arquitectura
- Protocolo MCP: Cumplimiento del Model Context Protocol
- Seguridad de tipos: Implementación completa en TypeScript
- Manejo de errores: Gestión integral de errores
- Seguridad: Validación y enmascaramiento de variables de entorno
Despliegue en producción
Configuración del entorno
# Production build
pnpm build:clean
# Production start
NODE_ENV=production pnpm start:prod
Consideraciones de seguridad
- Almacena las claves privadas de forma segura (usa gestión de secretos)
- Configura endpoints RPC apropiados
- Configura monitoreo y registro de logs
- Usa HTTPS para todas las conexiones externas
Rendimiento
- BigInt nativo: 2-3 veces más rápido que BigNumber.js
- Tamaño del bundle: Reducción de 50KB frente a v0.5.x
- Uso de memoria: Optimizado para procesos de larga duración
- Límite de peticiones: 200 req/min (configurable)
Recursos
- Fibrous Finance - Sitio web principal
- Documentación - Documentación de la API
- Protocolo MCP - Especificaciones de MCP
- Router SDK v0.6.0 - Documentación local del SDK
Endpoints de API:
- https://api.fibrous.finance (200 req/min)
- https://graph.fibrous.finance
Contribuciones
- Haz un fork del repositorio
- Crea una rama de funcionalidad
- Realiza tus cambios
- Añade pruebas para la nueva funcionalidad
- Asegúrate de que todas las pruebas pasen:
pnpm test - Envía una solicitud de pull
Directrices de desarrollo
- Sigue las mejores prácticas de TypeScript
- Mantén la cobertura de pruebas por encima del 75%
- Usa mensajes de commit convencionales
- Actualiza la documentación para nuevas funcionalidades
Licencia
MIT - ver LICENCIA
Advertencia de riesgo: Las operaciones DeFi implican riesgo financiero. Verifica siempre las transacciones y usa testnet para desarrollo.
Estado: Listo para producción con cobertura integral de pruebas y soporte nativo de BigInt.