{
  "markdown": "# ETL-D MCP Server 🌊\n\n[![npm version](https://img.shields.io/npm/v/etld-mcp-server?color=blue)](https://www.npmjs.com/package/etld-mcp-server)\n[![PyPI version](https://img.shields.io/pypi/v/etld?color=blue)](https://pypi.org/project/etld/)\n[![MCP Registry](https://img.shields.io/badge/MCP_Registry-Official-success)](https://registry.modelcontextprotocol.io/pablixnieto2/etld-mcp-server)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n**ETL-D** is a deterministic data middleware designed to act as a shield for AI Agents. It stops LLMs from \"hallucinating\" over structured data by providing a strict, 3-layer parsing architecture via the Model Context Protocol (MCP).\n\n## ⚠️ The Problem: The \"Data Tax\" & Hallucinations\n\nStandard LLMs are terrible at reading raw B2B files (CSV, PDF, EDI, Norma 43). They suffer from:\n1. **Token Exhaustion:** Sending a 5,000-row CSV to context is a waste of money.\n2. **Precision Loss:** LLMs struggle with spatial alignment. A misplaced comma in a bank statement is a financial catastrophe.\n3. **Non-Determinism:** You can't build a reliable pipeline if the output format depends on the LLM's \"mood.\"\n\n## ✅ The Solution: 3-Layer Waterfall Architecture\n\nThe ETL-D engine processes every request through a strict hierarchy:\n* **Layer 1 (Heuristic):** 100% Python-native deterministic parsers. 0% Hallucination risk. ~70ms latency.\n* **Layer 2 (Semantic):** Column-to-Schema alignment using embedding-based routing.\n* **Layer 3 (LLM Shield):** Strict JSON enforcement using Llama 3.3 70B with `additionalProperties: false` constraints for high-entropy noise.\n\n---\n\n## 🚀 Quick Start (Claude Desktop)\n\n1. Open your `claude_desktop_config.json`.\n2. Add the **ETL-D** server (Ensure you use version `3.3.3`):\n\n```json\n{\n  \"mcpServers\": {\n    \"etld\": {\n      \"command\": \"npx\",\n      \"args\": [\n        \"-y\",\n        \"@pablixnieto2/etld-mcp-server@3.3.3\"\n      ],\n      \"env\": {\n        \"ETLD_API_KEY\": \"YOUR_API_KEY_HERE\"\n      }\n    }\n  }\n}\n```\n\n## 🔑 How to Get an API Key?\n* **Option A:** Manual Purchase (Human)\nGet a Starter Pack ($5 / 5,000 credits) or a Subscription at api.etl-d.net.\n\n* **Option B:** Zero-Touch Provisioning (Agent-Led) 🤖\nIf you don't have a key, simply ask Claude: \"I don't have an ETL-D key, can you help me get one?\".\nThe agent will call the /provision tool, generate a Stripe Checkout link for you, and automatically set up the key once paid. Zero-touch, human-in-the-loop.\n\n## 🛠️ Available MCP Tools\n1. Financial & B2B Heavy Lifting\nparse_bank_statement: Support for Spanish Norma 43 (N43). Turns raw bank files into clean JSON.\n\nparse_trade_history: Deterministic extraction of trades, fees, and dividends from complex broker exports.\n\nparse_edi: ANSI X12 EDI parser (Optimized for 850 Purchase Orders).\n\ngenerate_sepa_xml: JSON to PAIN.008 (Direct Debit) XML generator.\n\n2. Document Intelligence\npdf_to_spatial_markdown: Crucial for Agents. Converts PDFs to Markdown preserving table structures before the LLM reads them.\n\nextract_invoice / extract_resume: High-accuracy schema extraction for standard B2B documents.\n\n3. Atomic Enrichment (1 Credit/call)\nenrich_amount: Cleans \"Total: 1.240,50€\" into {amount: 1240.50, currency: \"EUR\"}.\n\nenrich_date: Resolves human-readable dates (\"next Friday at 5pm\") with Timezone awareness.\n\nenrich_address: Standardizes global messy addresses into structured components.\n\naccounting_map: Maps concepts to ES PGC, US GAAP, or IFRS.\n\n## 🏗️ Ecosystem\nCloud Engine: Hosted at api.etl-d.net (Python/FastAPI).\n\nPython SDK: pip install etld.\n\nn8n Nodes: Available in the n8n community as n8n-nodes-etld.\n\n## ⚖️ License\nMIT - Created by Pablixnieto2\n",
  "bytes": 3708,
  "sha": "fe9c6bc643c4277184e2cbc5eaf3db792231a5196ca5ecb481d2d90e8e99423b",
  "repo_slug": "pablixnieto2/etld-mcp-server",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_pablixnieto2_etld_mcp_server_39eed44c/readme"
}