Integrations
Used for API communication between the frontend and backend, enabling efficient HTTP requests for document processing workflows.
Integrates with the UI for data visualization of document statistics, providing graphical representation of document processing metrics.
Powers the REST interface for the document processing system, enabling API-based interactions with the document processing capabilities.
Procesador de documentos MCP
Un sistema de procesamiento de documentos inteligente que utiliza el Protocolo de Contexto de Modelo (MCP) para extraer, analizar y enrutar documentos comerciales automáticamente.
Descripción general del proyecto
Este proyecto demuestra cómo usar MCP para resolver un desafío empresarial real: automatizar los flujos de trabajo de procesamiento de documentos. El sistema puede:
- Clasificar los documentos entrantes (facturas, contratos, correos electrónicos)
- Extraer información relevante utilizando modelos ML
- Procesar documentos según su tipo Mantener el contexto durante todo el proceso de procesamiento Exponer la funcionalidad a través de una API REST
Componentes clave del MCP
- Objetos de contexto : centrales para MCP, estos objetos (implementados en
MCPContext
) transportan información entre los pasos de procesamiento y mantienen el estado del documento. - Sistema de memoria : almacena objetos de contexto entre los pasos de procesamiento, con backends conectables.
- Protocolos : Define interfaces claras para procesadores y modelos, garantizando la modularidad.
- Enrutador : enruta de forma inteligente los documentos a procesadores especializados según el contenido.
Valor empresarial
Esta solución aborda varios desafíos comerciales:
- Procesamiento manual reducido: automatiza la extracción de datos de los documentos
- Coherencia: garantiza un procesamiento consistente en todos los tipos de documentos
- Auditabilidad: Mantiene el historial de procesamiento y los puntajes de confianza
- Escalabilidad: El diseño modular permite agregar nuevos tipos de documentos fácilmente
Aspectos técnicos destacados
- Utiliza modelos basados en BERT para la clasificación y extracción de entidades.
- Modelo T5 para el resumen de documentos
- FastAPI para interfaz REST
- Arquitectura conectable para una fácil ampliación
- Registro completo y gestión de errores
- Interfaz de usuario basada en React para una mejor experiencia de usuario
Descripción general
El Procesador de Documentos MCP está diseñado para resolver el desafío empresarial habitual de procesar diversos tipos de documentos (facturas, contratos, correos electrónicos, etc.) de forma consistente y automatizada. Utiliza el marco del Protocolo de Contexto de Modelo para gestionar el flujo de información entre los diferentes componentes del sistema.
Características principales
- Clasificación de documentos : identifica automáticamente los tipos de documentos
- Extracción de información : extrae información clave de los documentos
- Enrutamiento de documentos : enruta los documentos a los procesadores adecuados
- Gestión del contexto : mantiene el contexto durante todo el proceso de procesamiento.
- Interfaz API : proporciona una API RESTful para la integración con otros sistemas
Arquitectura
El sistema está construido alrededor del Protocolo de Contexto Modelo (MCP), que proporciona:
- Objetos de contexto : transportan información a través de los pasos de procesamientoCopy
- Sistema de memoria : almacena objetos de contexto entre llamadas APICopy
- Protocolos : Define interfaces para procesadores y modelosCopy
- Enrutador : Enruta documentos a procesadores especializados apropiadosCopy
Diagrama de flujo MCP
Detalles de implementación de MCP
La implementación del Protocolo de Contexto Modelo en este proyecto ofrece varias ventajas clave:
1. Procesamiento con estado y persistencia del contexto
La clase MCPContext
mantiene el estado durante todo el ciclo de vida del procesamiento del documento:
2. Sistema de memoria enchufable
El sistema de memoria está diseñado para ser conectable, lo que permite diferentes backends de almacenamiento:
3. Seguimiento de la confianza
MCP realiza un seguimiento de los puntajes de confianza de todos los datos extraídos, lo que permite una mejor toma de decisiones:
4. Historial de procesamiento
Cada paso del procesamiento se registra en el historial del contexto, lo que proporciona auditabilidad:
5. Enrutamiento inteligente de documentos
El ProcessorRouter
determina el procesador apropiado para cada documento:
6. Extensibilidad
Agregar nuevos tipos de documentos es sencillo implementando el protocolo Processor
:
Procesadores de documentos
El sistema incluye procesadores especializados para diferentes tipos de documentos:
- Procesador de facturas : extrae proveedores, clientes, artículos de línea, totales, etc.
- Procesador de contratos : extrae partes, fechas clave, términos, etc.
- Procesador de correo electrónico : extrae remitente, destinatarios, asunto, cuerpo, etc.
Modelos de aprendizaje automático
Se utilizan varios modelos de ML para diferentes tareas:
- Clasificador de documentos : modelo basado en BERT para la clasificación de tipos de documentos
- Extractor de entidades : modelo de reconocimiento de entidades con nombre para extraer información clave
- Summarizer : modelo basado en T5 para generar resúmenes de documentos
Interfaz de usuario
El procesador de documentos MCP incluye una moderna interfaz de usuario basada en React que proporciona una forma intuitiva de interactuar con el sistema de procesamiento de documentos. La interfaz de usuario está desarrollada con Material-UI y ofrece las siguientes características:
Características de la interfaz de usuario
- Panel de control : descripción general de los documentos procesados con estadísticas y acceso rápido a los detalles del documento
- Carga de documentos : Interfaz de arrastrar y soltar para cargar nuevos documentos
- Procesamiento de documentos : Flujo de trabajo paso a paso para el procesamiento de documentos
- Visor de documentos : vista detallada de los documentos procesados con información extraída
- Historial de procesamiento : vista de la línea de tiempo de todos los pasos del procesamiento para auditabilidad
Arquitectura de interfaz de usuario
El frontend está construido con:
- React : para construir los componentes de la interfaz de usuario
- Material-UI : Para un diseño consistente y responsivo
- React Router : para navegar entre diferentes vistas
- Axios : Para la comunicación API con el backend
- Chart.js : Para la visualización de datos de estadísticas de documentos
Integración UI-Backend
El frontend se comunica con el backend a través de una API RESTful, con los siguientes puntos finales principales:
GET /api/documents
: Recuperar todos los documentosPOST /api/documents/upload
: Subir un nuevo documentoPOST /api/documents/{document_id}/process
: Procesar un documentoGET /api/documents/{document_id}
: Obtener detalles del documentoDELETE /api/documents/{document_id}
: Eliminar un documento
Arquitectura completa del sistema
El procesador de documentos MCP sigue una arquitectura en capas que integra la interfaz, la capa API, los componentes de procesamiento y los modelos de aprendizaje automático:
Flujo de trabajo completo
El flujo de trabajo de procesamiento de documentos implica múltiples pasos en los componentes del sistema:
- Carga de documentos :
- El usuario carga un documento a través de la interfaz de usuario
- El frontend envía el documento a la API del backend
- El backend crea un objeto MCPContext con metadatos del documento
- El contexto se almacena en el sistema de memoria
- Clasificación de documentos :
- El usuario inicia el procesamiento a través de la interfaz de usuario
- El backend recupera el contexto del documento de la memoria
- El modelo clasificador de documentos determina el tipo de documento
- El contexto se actualiza con la información del tipo de documento
- Procesamiento de documentos :
- El enrutador del procesador selecciona el procesador apropiado según el tipo de documento
- El procesador seleccionado (factura, contrato o correo electrónico) procesa el documento
- El procesador utiliza Entity Extractor para identificar información clave
- Los datos extraídos se agregan al contexto con puntajes de confianza.
- Recuperación de resultados :
- El contexto actualizado se almacena nuevamente en la memoria
- La interfaz de usuario recupera y muestra la información del documento procesado
- El usuario puede ver los datos extraídos, los puntajes de confianza y el historial de procesamiento.
- Auditoría y revisión :
- Todos los pasos del procesamiento se registran en el historial de procesamiento del contexto.
- La interfaz de usuario proporciona visualización de puntuaciones de confianza para los datos extraídos
- El usuario puede revisar el texto del documento junto con la información extraída
Empezando
Prerrequisitos
- Python 3.8+
- Node.js 14+ y npm (para el frontend)
- Dependencias enumeradas en requirements.txt
Instalación y configuración
Configuración del backend
- Clonar el repositorioCopy
- Crear y activar un entorno virtualCopy
- Instalar dependencias de backendCopy
- Crear un directorio de datos para el almacenamiento de documentos (si no existe)Copy
Configuración de la interfaz
- Navegue hasta el directorio del frontendCopy
- Instalar dependencias del frontendCopy
Ejecutar la aplicación
Iniciar el servidor backend
- Desde el directorio raíz del proyecto (con entorno virtual activado):Esto iniciará el servidor FastAPI en http://localhost:8000 .Copy
- Puede acceder a la documentación de la API en http://localhost:8000/docs
Iniciar el servidor de desarrollo frontend
- Abrir una nueva ventana/pestaña de terminal
- Navegue hasta el directorio del frontend:Copy
- Inicie el servidor de desarrollo de React:Esto iniciará la interfaz en http://localhost:3000 .Copy
Uso de la aplicación
- Abra su navegador y navegue a http://localhost:3000
- Utilice la navegación de la barra lateral para:
- Ver el panel de control
- Subir nuevos documentos
- Procesar y ver detalles del documento
Ejemplo de flujo de trabajo
- Subir un documento :
- Haga clic en "Subir documento" en la barra lateral.
- Arrastre y suelte un documento (PDF, imagen o archivo de texto)
- Haga clic en el botón "Cargar documento"
- Procesar el documento :
- Después de cargar correctamente el documento, haga clic en "Procesar documento".
- Espere a que se complete el procesamiento
- Ver resultados :
- Ver datos extraídos, puntajes de confianza y el historial de procesamiento
- Navegue al Panel de Control para ver todos los documentos procesados
Uso de la API
También puedes interactuar directamente con la API:
GET /api/documents
: Recuperar todos los documentosPOST /api/documents/upload
: Subir un nuevo documentoPOST /api/documents/{document_id}/process
: Procesar un documentoGET /api/documents/{document_id}
: Obtener detalles del documentoDELETE /api/documents/{document_id}
: Eliminar un documento
Ampliación del sistema
Agregar un nuevo procesador de documentos
- Cree una nueva clase de procesador que herede de
BaseProcessor
- Implementar los métodos
can_handle
yprocess
- Agregue el procesador al enrutador en
api/routes.py
Agregar un nuevo modelo
- Cree una nueva clase de modelo que implemente el protocolo apropiado
- Agregar configuración en
config/config.yaml
- Integrar el modelo con el procesador relevante
Licencia
This server cannot be installed
Un sistema de procesamiento de documentos inteligente que clasifica, extrae información y enruta automáticamente documentos comerciales utilizando el Protocolo de Contexto de Modelo (MCP).
- Descripción general del proyecto
- Componentes clave del MCP
- Valor empresarial
- Aspectos técnicos destacados
- Descripción general
- Características principales
- Arquitectura
- Detalles de implementación de MCP
- Procesadores de documentos
- Modelos de aprendizaje automático
- Interfaz de usuario
- Arquitectura completa del sistema
- Flujo de trabajo completo
- Empezando
- Ampliación del sistema
- Licencia
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol (MCP) server that enables semantic search and retrieval of documentation using a vector database (Qdrant). This server allows you to add documentation from URLs or local files and then search through them using natural language queries.Last updated -1474JavaScriptApache 2.0
- -securityAlicense-qualityA tool for Model Context Protocol (MCP) that allows you to analyze web content and add it to your knowledge base, storing content as Markdown files for easy viewing with tools like Obsidian.Last updated -6PythonMIT License
- -securityAlicense-qualityA server that provides document processing capabilities using the Model Context Protocol, allowing conversion of documents to markdown, extraction of tables, and processing of document images.Last updated -6PythonMIT License
- AsecurityAlicenseAqualityA Model Context Protocol (MCP) server that provides tools for reading Excel (xlsx) files, enabling extraction of data from entire workbooks or specific sheets with results returned in structured JSON format.Last updated -32PythonApache 2.0