taxformatter-mcp-server
📊 TaxFormatter
CSV de criptomonedas y PDFs de estados de cuenta bancarios, convertidos a datos listos para impuestos.
API REST · Servidor MCP · SDK de Node · SDK de Python · Panel de control del consumidor
🚀 Qué hace
TaxFormatter convierte exportaciones financieras desordenadas en datos estructurados y listos para impuestos, tanto para humanos como para agentes de IA.
Sube un CSV de Coinbase, un ZIP de Kraken, un .tar.gz de Binance o un estado de cuenta en PDF de Chase, y obtén un conjunto de transacciones limpio y normalizado que puedes enviar a Koinly, TurboTax, CoinLedger, ZenLedger o directamente a tu propio software.
Exchange CSV Clean, normalized
Bank PDF → transactions (JSON / CSV)
XLSX / ZIP / TAR.GZ + AI-generated insights✨ Características
🔌 API REST para desarrolladores
Implementa una función de impuestos cripto o ingesta bancaria en tu producto en una tarde.
POST /v1/parse— sube un CSV o PDF, obtén JSON estructurado de vueltaGET /v1/sources— lista todos los exchanges, bancos y formatos de salida compatiblesGET /v1/usage— cuota mensual, límite de RPM, consumo actualGET /v1/health— prueba de disponibilidadAutenticación: Encabezado
X-API-Keycon clavestf_live_*(hash SHA-256 en reposo)Host:
https://api.taxformatter.com
🤖 Servidor MCP para agentes de IA
Dale a Claude, Cursor, Windsurf o cualquier agente compatible con MCP la capacidad de analizar datos bancarios y de criptomonedas directamente.
npx @taxformatter/mcp-serverHerramienta | Qué hace |
| Detecta automáticamente el exchange, devuelve transacciones normalizadas |
| Extrae transacciones de PDFs de estados de cuenta bancarios |
| Consulta todas las fuentes y formatos de salida compatibles |
📦 SDKs oficiales
Node.js →
@taxformatter/sdk— basado en promesas, totalmente tipadoPython →
taxformatter— idiomático, con sugerencias de tipo
🏦 14 Exchanges · 7+ Bancos · 4 Formatos de software de impuestos
Exchanges: Coinbase · Kraken · Gemini · Binance · Robinhood · Crypto.com · PayPal · Cash App · Venmo · KuCoin · Bybit · FTX · Bitfinex · OKX
Bancos: Chase · Mercury · Navy Federal · Bank of America · Wells Fargo · Citi · Capital One
Formatos de exportación: Koinly · TurboTax (Formulario 8949) · CoinLedger · ZenLedger
🧠 Perspectivas de IA por niveles
Cada archivo analizado devuelve un análisis procesable, ajustado a tu plan.
Nivel | Modelo | Salida |
Gratuito | Gemini 1.5 Flash | Estadísticas rápidas + marcado básico |
Pro | Claude Sonnet 4 | Análisis equilibrado, desgloses |
Premium | Claude Opus 4 | Análisis profundo + sugerencias fiscales |
🖥️ Panel de control del consumidor
¿No eres desarrollador? La aplicación web en taxformatter.com es una experiencia completa de arrastrar y soltar con estado de trabajo en tiempo real, detección automática de exchange, vistas previas de transformación y descargas con un solo clic.
🏗️ Stack tecnológico
Capa | Tecnología |
Frontend | Next.js 16 · React 19 · TypeScript · Tailwind v4 |
Autenticación | NextAuth (Google OAuth + correo/contraseña + 2FA) |
Base de datos | Neon (PostgreSQL sin servidor) |
Almacenamiento | AWS S3 (URLs prefirmadas) |
Cola | AWS SQS + DLQ |
Cómputo | AWS Lambda × 4 (escáner, procesador, webhook, api) |
Edge | AWS API Gateway + WAF + CloudFront |
Pagos | Stripe (niveles de consumidor + desarrollador) |
Correo | AWS SES / Nodemailer |
Monitoreo | Sentry + CloudWatch |
IaC | Terraform |
📁 Estructura del repositorio
trw/
├── app/ # Next.js App Router (marketing, dashboard, /v1 admin)
│ ├── api/ # Internal API routes (NextAuth, uploads, jobs, dev keys)
│ ├── dashboard/ # Authenticated user area + /dashboard/developer
│ ├── docs/ # MDX-powered docs site
│ └── upload/ # Anonymous bank statement → CSV landing page
│
├── backend/ # Python processing layer (AWS Lambda)
│ ├── handlers/ # scanner · processor · webhook · api
│ ├── services/
│ │ ├── engine.py # CSV parsing (14 exchange parsers)
│ │ ├── format_converter.py # Koinly → TurboTax/CoinLedger/ZenLedger
│ │ ├── fingerprinting.py # Exchange auto-detection
│ │ ├── ai_insights.py # Tiered AI analysis
│ │ ├── api_auth.py # API key validation + rate limiting
│ │ └── bank_statement/ # PDF extraction pipeline
│ ├── configs/banks/*.yaml # YAML-driven bank configs
│ └── terraform/ # Infra as code
│
├── packages/
│ ├── mcp-server/ # @taxformatter/mcp-server (npm)
│ ├── sdk-node/ # @taxformatter/sdk (npm)
│ └── sdk-python/ # taxformatter (PyPI)
│
├── components/ # React components (marketing, dashboard, ui)
├── lib/ # Business logic (auth, api-keys, stripe, email)
├── db/ # PostgreSQL schema + migrations
└── docs/ # Setup guidesReferencia arquitectónica completa: ARCHITECTURE.md
⚡ Inicio rápido
Ejecuta la aplicación web
npm install
npm run devAbre http://localhost:3000.
Prueba la API
curl -X POST https://api.taxformatter.com/v1/parse \
-H "X-API-Key: tf_live_..." \
-F "file=@coinbase.csv"Usa el servidor MCP con Claude Code
{
"mcpServers": {
"taxformatter": {
"command": "npx",
"args": ["@taxformatter/mcp-server"],
"env": { "TAXFORMATTER_API_KEY": "tf_live_..." }
}
}
}Instala el SDK de Node
npm install @taxformatter/sdkimport { TaxFormatter } from "@taxformatter/sdk";
const tf = new TaxFormatter({ apiKey: process.env.TF_API_KEY! });
const result = await tf.parse({ file: fs.createReadStream("./coinbase.csv") });🧪 Pruebas
npm test # Jest unit tests (160+ across API, MCP, keys, UI)
npm run test:e2e # Playwright end-to-end tests
npm run typecheck # TypeScript strict mode
npm run lint # ESLint💳 Precios
Consumidor (panel de control)
Nivel | Precio | Destacados |
Gratuito | $0 | 3 descargas/mes · Perspectivas de Gemini |
Pro | $89/año | Ilimitado · Perspectivas de Claude Sonnet |
Premium | $189/año | Todo + Claude Opus + soporte prioritario |
Desarrollador (API)
Nivel | Precio | Cuota | RPM |
Starter | $29/mes | 100 archivos | 30 |
Growth | $99/mes | 500 archivos | 60 |
Business | $249/mes | 2,000 archivos | 120 |
🔒 Aspectos destacados de seguridad
Procesamiento de API sin estado — el contenido del archivo vive solo en la RAM de Lambda, nunca se escribe en el disco
Registro de carga útil cero —
api_requestsalmacena solo metadatos (hash, estado, bytes, tiempo)Claves de API con hash SHA-256 en reposo, con prefijo
tf_live_para una fácil identificaciónTLS 1.3 aplicado en todas partes
Cifrado AES-256 en todas las cargas almacenadas
AWS WAF — escudo contra DDoS, inyección SQL, mitigación de XSS
Retención controlada por el usuario — 1 año por defecto, o eliminar después de la descarga
Divulgación completa en taxformatter.com/security.
📚 Documentación
ARCHITECTURE.md — Diseño completo del sistema
content/docs/api/index.md — Referencia de la API
packages/mcp-server/README.md — Guía de configuración de MCP
RELIABILITY.md — SLOs, manuales de incidentes
docs/ — Guías de Stripe, Sentry y despliegue
Licencia
Privada — Quantum Transfer Group. Todos los derechos reservados.
This server cannot be installed
Maintenance
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Sean-Bravo/trw'
If you have feedback or need assistance with the MCP directory API, please join our Discord server