extraer-datos-ine
# extraer-datos-ine-mcp
Servidor [MCP](https://modelcontextprotocol.io) oficial de [Extraer Datos de INE](https://extraerdatosdeine.com).
Deja que Claude, Cursor, VS Code y otros clientes MCP extraigan los datos de credenciales para votar
INE/IFE (nombre, CURP, clave de elector, fecha de nacimiento, domicilio, vigencia…) y creen enlaces para
que tus clientes capturen su documento desde el celular.
## Herramientas
| Herramienta | Qué hace | Costo |
| --- | --- | --- |
| `extraer_ine` | Extrae los datos de fotos de una INE guardadas en tu computadora (`front_path`, `back_path` opcional; JPEG, PNG o WebP, máx. 10 MB) | 1 token (se reembolsa si la imagen es ilegible o falla la extracción) |
| `crear_enlace_captura` | Crea un enlace de un solo uso para que tu cliente fotografíe su INE o pasaporte; los datos llegan a tu destino, no al chat | Gratis crear; 1 token por captura (se reembolsa si falla) |
| `consultar_saldo` | Tokens disponibles | Gratis |
Necesitas una API key: créala en [extraerdatosdeine.com](https://extraerdatosdeine.com) (panel → API Keys).
## Privacidad
Con `extraer_ine`, los datos personales extraídos (nombre, CURP, domicilio, clave de elector) entran a
la conversación con tu asistente de IA y, por lo tanto, al proveedor de ese modelo. Si eso no es
aceptable para tu caso, usa `crear_enlace_captura`: la foto y los datos van directo de tu cliente a tu
destino (webhook, correo o Telegram, configurado en el panel → Destinos) y al chat solo llega el enlace.
Extraer Datos de INE no guarda los datos de las extracciones exitosas.
## Instalación
### Claude Code
```bash
claude mcp add extraer-datos-ine -e EXTRAER_DATOS_INE_API_KEY=ine_tu_api_key -- npx -y extraer-datos-ine-mcp
```
### Claude Desktop, Cursor, VS Code y otros
```json
{
"mcpServers": {
"extraer-datos-ine": {
"command": "npx",
"args": ["-y", "extraer-datos-ine-mcp"],
"env": { "EXTRAER_DATOS_INE_API_KEY": "ine_tu_api_key" }
}
}
}
```
(Claude Desktop: `claude_desktop_config.json`. Cursor: `~/.cursor/mcp.json`.)
## Ejemplos
- "Extrae los datos de la INE en ~/Descargas/ine_frente.jpg y ~/Descargas/ine_reverso.jpg."
- "Crea un enlace de captura para la reserva 8841 que mande los datos a mi destino dst_…"
- "¿Cuántos tokens me quedan en Extraer Datos de INE?"
## Enlaces de captura
- Un solo uso: 15 minutos para abrirlo y, ya abierto, 15 minutos para capturar.
- La `url` solo se devuelve al crearlo; compártela solo con tu cliente.
- Máximo 20 enlaces vivos a la vez por cuenta.
- `document_type`: `ine` (por defecto) o `passport`. `require_back` pide también el reverso.
`reference` (hasta 80 caracteres) viaja con la entrega.
## Variables de entorno
| Variable | |
| --- | --- |
| `EXTRAER_DATOS_INE_API_KEY` | Obligatoria |
| `EXTRAER_DATOS_INE_BASE_URL` | Opcional, por defecto `https://extraerdatosdeine.com` |
## Errores
Los errores de la API vuelven como resultado de la herramienta (`isError`) con su `code`, por ejemplo
`INVALID_API_KEY` (401), `INSUFFICIENT_TOKENS` (402), `LOW_IMAGE_QUALITY` (422, con `missing_fields`),
`DESTINATION_NOT_FOUND` o `TOO_MANY_LIVE_LINKS`. Un archivo que no existe da `FILE_NOT_FOUND` y uno que
no es imagen da `INVALID_IMAGE_FORMAT`, sin llamar a la API ni gastar tokens.
## Enlaces
- Documentación de la API: https://extraerdatosdeine.com/docs
- SDK de JavaScript: https://www.npmjs.com/package/extraer-datos-ine
- SDK de Python: https://pypi.org/project/extraer-datos-ine/
MIT
TDQS
Scored across 3 tools
The three tools cover clearly distinct actions: extracting data from an INE image (extraer_ine), checking account balance (consultar_saldo), and generating a remote capture link (crear_enlace_captura). No overlap exists between reading a local file, querying a balance, and creating a link, so an agent can select unambiguously.
All three names follow a consistent Spanish verb_noun pattern (extraer_ine, consultar_saldo, crear_enlace_captura) with uniform snake_case casing. The convention is predictable and readable throughout.
Three tools is thin for a service that clearly has more surface area (destinations, extraction history, batch jobs). While each tool earns its place, the set feels minimal relative to the apparent scope implied by the descriptions (webhook/email/Telegram destinations, links, tokens).
The core lifecycle is covered: create a capture link, extract data, and check token balance. However, there is no tool to manage or list destination_ids, view extraction history, or handle batch processing, which are referenced but not exposed as operations.