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 insightsRelated MCP server: document-to-json-mcp
✨ 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 deployed
Maintenance
Related MCP Connectors
Turn bank statement PDFs, CSVs, XLSX and OFX into categorised transactions plus a summary.
Turn bank statement PDFs into categorized, balance-checked transactions and reports.
Convert PDF bank statements into structured transactions, accounts, and balances.
Crypto cost-basis lots (FIFO/LIFO/HIFO/specific-ID), Form 8949 rows, 1099-DA diff. 5 of 8 free.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to extract structured JSON from invoices and receipts in PDF and image formats using Claude Vision. Supports full document parsing, line item extraction, validation, and batch CSV export with API key or cryptocurrency payment options.MIT
- AlicenseAqualityDmaintenanceConvert PDFs to structured JSON. Extract invoices, bank statements, contracts, and more. Pay per call via x402 USDC.58MIT
- FlicenseNot gradedqualityDmaintenanceClassifies Solana on-chain transactions into tax categories (e.g., swap, stake, NFT) and exports CSV reports compatible with TurboTax and CoinTracker.-
- AlicenseAqualityCmaintenanceConverts PDF bank statements into structured data (Markdown, JSON, CSV, JSONL) with verified transactions and balance checks, enabling agents to audit numbers.53 npmMIT