Entity Enricher incluye un servidor Model Context Protocol integrado en /api/mcp: enumere sus esquemas, enriquezca una entidad, inspeccione el resultado y resuelva una advertencia de clasificación todo desde un único chat de Claude. No se requiere ningún editor de flujos de trabajo.
Otra forma, otro caso de uso. Los conectores n8n y Make envuelven la API para la automatización de flujos de trabajo: disparadores, ejecuciones programadas, pipelines de varios pasos, estado persistente. MCP la envuelve para el chat interactivo: preguntas puntuales, enriquecimientos exploratorios, aclaraciones de seguimiento. Los flujos de trabajo tienen forma de batch, los chats tienen forma de conversación: la superficie difiere y la experiencia de usuario también.
La función estrella que solo MCP desbloquea: reanudación interactiva de la clasificación. Cuando el clasificador previo rechaza su entidad (p. ej., pidió enriquecer «Titán» contra un esquema de Planeta, pero Titán es una luna), n8n/Make tienen que cancelar automáticamente porque no son interactivos. MCP muestra la advertencia a Claude, Claude le pide confirmación y, al responder «sí», la herramienta se vuelve a ejecutar sin el clasificador. Sin fallos a mitad del pipeline, sin volver a ejecutar desde cero.
Para claude.ai, Claude Code, Cursor y cualquier cliente MCP compatible con el flujo OAuth estándar. Sin API key que crear ni pegar: el cliente descubre el servidor de autorización automáticamente.
https://entityenricher.ai/api/mcp/.Para clientes configurados mediante un archivo JSON en lugar de un inicio de sesión interactivo (Claude Desktop, Continue, Zed).
ent_…: solo se muestra una vez.Para Claude Desktop, edite ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) o %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"entityenricher": {
"url": "https://entityenricher.ai/api/mcp/",
"headers": { "X-API-Key": "ent_your_key_here" }
}
}
}Reinicie Claude Desktop. El mismo fragmento funciona para Claude Code, Cursor, Continue y Zed, cualquier cliente compatible con MCP.
En un chat nuevo: «Enumera mis esquemas de Entity Enricher y, a continuación, enriquece a Sanofi con el esquema de empresa farmacéutica usando Claude Sonnet.» Claude descubre las herramientas automáticamente, elige la correcta, le solicita confirmar la elección de modelo y esquema, y transmite el resultado en línea.
29 herramientas cubren toda la superficie de enriquecimiento y creación de esquemas. El comportamiento es idéntico al de los endpoints REST que envuelven (misma validación, facturación y límites de plan): cuando la interfaz web recibe una corrección, MCP también la recibe. El trabajo de larga duración (enriquecimiento por lotes, generación de muestras, ejecuciones de benchmark) es asíncrono: la herramienta de inicio devuelve un job_id, Claude consulta get_job_status y obtiene los resultados persistidos de sus registros una vez que el trabajo se completa.
| Categoría | Herramienta | Descripción |
|---|---|---|
| Descubrimiento | list_models | Lista los modelos LLM disponibles y los profile_limits de su plan para que Claude se autolimite antes de llegar a un HTTP 402. |
| Esquemas | list_schemas | Lista los esquemas JSON guardados en su organización, los fijados primero. |
| Esquemas | get_schema | Obtenga el contenido completo de un esquema por UUID. |
| Esquemas | generate_sample | Genere una entidad de muestra realista a partir de una descripción de tipo de entidad: el primer paso natural antes de la generación del esquema. Con adjuntos, un planificador interactivo puede pausarse con preguntas de aclaración. |
| Esquemas | create_schema_from_sample | Genere un esquema JSON a partir de un diccionario de entidad de muestra mediante LLM, opcionalmente fundamentado en documentos de origen subidos (attachment_ids). El resultado se guarda automáticamente. |
| Esquemas | edit_schema | Modificación en lenguaje natural de un schema existente. Devuelve el nuevo contenido y 5 sugerencias de seguimiento. |
| Esquemas | save_schema | Persista un esquema creado directamente por Claude: sin llamada al LLM, sin coste, validado del lado del servidor. |
| Esquemas | update_schema | Renombre, reemplace el contenido, reetiquete o fije un esquema guardado sin una llamada al LLM. |
| Esquemas | delete_schema | Elimine de forma lógica un esquema guardado por UUID. |
| Enriquecimiento | enrich_entity | Enriquecimiento multimodelo con autofusión opcional. Acepta una lista opcional attachment_ids. Las discrepancias de clasificación devuelven una respuesta que no es de error para que Claude pueda pedir al usuario que confirme y reintente. |
| Enriquecimiento | start_batch_enrichment | Enriquezca hasta 100 entidades de forma asíncrona: pipeline completo por entidad con fusión automática. Devuelve un job_id; los resultados llegan a sus registros. |
| Enriquecimiento | fetch_entities | Obtenga un array JSON de entidades desde una API REST externa del lado del servidor (bearer / api_key / basic auth): se combina con el enriquecimiento por lotes. |
| Enriquecimiento | retry_expertises | Vuelva a ejecutar únicamente los dominios de especialización fallidos de un registro, combinando de nuevo los valores recuperados: sin volver a pagar por lo que ya tuvo éxito. |
| Enriquecimiento | merge_records | Combine 2 o más registros existentes en un resultado fusionado: basado en reglas o con un modelo de arbitraje LLM. |
| Trabajos | get_job_status | Consulte cualquier trabajo asíncrono (lote, generación de muestras, ejecución de benchmark): contadores de progreso, resúmenes finales y preguntas de aclaración pendientes. |
| Trabajos | cancel_job | Cancele un trabajo pendiente, en ejecución o en pausa. |
| Trabajos | answer_job_question | Responda las preguntas de aclaración de un trabajo en pausa y reanúdelo: la mitad interactiva de generate_sample. |
| Benchmarks | list_benchmark_scenarios | Enumere sus escenarios de benchmark guardados (pruebas de enriquecimiento reutilizables). |
| Benchmarks | get_benchmark_scenario | Un escenario con sus resultados puntuados por modelo (calidad / coste / velocidad). |
| Benchmarks | create_benchmark_scenario | Cree un escenario: esquema + entidad fija + estrategia + juez de puntuación. Se requiere el rol de propietario y un plan con benchmarks. |
| Benchmarks | update_benchmark_scenario | Actualice la definición de prueba o la configuración de puntuación de un escenario; los resultados existentes se marcan como obsoletos. |
| Benchmarks | set_benchmark_reference | Guarde la salida de referencia dorada y márquela como verificada: es obligatorio antes de una ejecución. |
| Benchmarks | delete_benchmark_scenario | Elimine un escenario y sus resultados. |
| Benchmarks | run_benchmark | Ejecute un escenario sobre una lista explícita de modelos, todos los modelos activos de proveedores seleccionados o todos los modelos activos: cada resultado se puntúa automáticamente frente a la referencia. |
| Registros | list_records | Recorra registros anteriores con filtros por tipo, éxito, modelo, trabajo y búsqueda de texto libre. |
| Registros | get_record | Salida estructurada completa + errores de validación para un registro. |
| Registros | get_stats | Estadísticas agregadas de la organización: totales, tasa de éxito, tokens y coste. |
| Adjuntos | upload_attachment | Suba un archivo base64 (filename, content_base64, media_type?) y obtenga su ID de adjunto para usar en enrich_entity. |
| Adjuntos | delete_attachment | Elimine un adjunto por ID: un práctico paso de limpieza posterior al enriquecimiento. |
Los recursos permiten que Claude examine datos sin gastar una llamada a herramienta: el cliente LLM los trata como archivos. Ambos tipos de recurso se representan como Markdown para una visualización en línea económica.
| Plantilla de URI | Descripción |
|---|---|
| enricher://schemas/{schema_id} | Un esquema guardado representado como Markdown: encabezado de metadatos + el GeneratedJsonSchema como bloque JSON delimitado. |
| enricher://records/{record_id} | Un registro de enriquecimiento anterior representado como Markdown: metadatos + salida estructurada + errores de validación. |
Cuando le pide a enrich_entity que use un classification model y la entity no coincide con el tipo del schema, la herramienta devuelve una respuesta sin error con detalles estructurados. Claude la lee, le muestra el razonamiento y (tras su confirmación) reintenta con force_after_classification_warning=true, lo que descarta el clasificador en el reintento.
{
"success": false,
"error_code": "classification_warning",
"message": "Pre-flight classification rejected the entity. ...",
"classification": {
"status": "mismatch",
"reasoning": "Titan is a moon of Saturn, not a planet.",
"confidence": 0.97
},
"job_id": "..."
}n8n y Make se cancelan automáticamente en este estado porque no pueden consultar al usuario a mitad de la canalización. MCP sí puede, y esa única diferencia es la razón de ser del conector.
La misma interactividad impulsa un segundo flujo: cuando generate_sample se ejecuta con documentos de origen, su planificador puede pausarse con preguntas de aclaración estructurales. Claude se las transmite y reanuda el trabajo con answer_job_question, ronda tras ronda, hasta que se genera la muestra.
Los errores de las herramientas se proyectan en diccionarios estructurados con un campo error_code para que Claude pueda hacer coincidencias de patrones en lugar de analizar texto libre. La capa HTTP se asigna de forma clara: 402 → error de cuota o crédito, 422 → advertencia de clasificación, 504 → tiempo de espera agotado, 502 → fallo del LLM ascendente.
| error_code | Cuándo |
|---|---|
| invalid_request | UUID con formato incorrecto, argumentos mutuamente excluyentes (schema_id + target_schema) o la validación del cuerpo de la solicitud falló. |
| prompt_limit_reached | Cuota de prompts diaria / semanal / mensual agotada (HTTP 402). El cuerpo incluye período, límite, usado y necesario. |
| insufficient_credits | La organización tiene la facturación habilitada, pero el saldo de créditos es demasiado bajo para iniciar el trabajo (HTTP 402). El cuerpo incluye el saldo y una URL de compra. |
| model_limit_exceeded | Se solicitaron más modelos de los que permite el plan (HTTP 402). Devuelve el límite y lo solicitado. |
| language_limit_exceeded | Se solicitaron más idiomas de los que permite el plan (HTTP 402). |
| concurrent_job_limit_reached | Demasiados trabajos de enriquecimiento activos para esta organización. Espere o mejore el plan. |
| classification_warning | ⚡ No es un error: el clasificador previo rechazó la entidad. La respuesta incluye el contexto de la clasificación para que Claude pueda pedir al usuario que confirme y reintente con force_after_classification_warning=true. |
| benchmarks_not_in_plan | Las herramientas de benchmark requieren el rol de propietario y un plan que incluya Model Benchmarks (HTTP 403). |
| enrichment_timeout | El trabajo superó timeout_seconds. Se sugiere usar menos modelos o dividir la entidad. |
| schema_generation_timeout | La generación de esquemas superó timeout_seconds. |
| schema_generation_failed | Error del LLM upstream durante la generación del schema (HTTP 502). |
| cancelled | El trabajo se canceló durante su ejecución (HTTP 499). |
| not_found | El ID de esquema o registro no existe en su organización. |
| http_error | Comodín para errores HTTP sin un cuerpo de detalle estructurado. |
get_stats cubre los resúmenes del lado del chat; los paneles completos permanecen en la aplicación.