Kitbag MCP

Servidor MCP de configuración cero que incluye más de 50 herramientas de utilidad: conversores, OCR, scraping y formateadores.

Documentación


Kitbag MCP es un servidor único y de código abierto de Model Context Protocol que incluye una biblioteca seleccionada de más de 50 herramientas de utilidad de alto valor — convertidores de documentos, procesadores OCR, raspadores web, formateadores de datos y utilidades de desarrollo de IA — todo en un solo lugar.

En lugar de instalar, configurar y pagar por alojar una docena de servidores MCP de un solo propósito, instala Kitbag MCP una vez y habilita selectivamente solo los módulos que necesites. Se ejecuta enteramente en tu máquina: cero costos de alojamiento, sin claves API, sin configuración de servidor.


📖 Tabla de Contenido

Click para expandir

🚀 Inicio Rápido (Configuración Cero)

Ejecuta al instante usando npx (se requiere Node.js):

npx kitbag-mcp

Exponer Módulos Específicos (Ahorra Tokens de Contexto LLM)

Para evitar que tus agentes de IA se vean abrumados por las opciones de herramientas, habilita solo lo que necesites:

# Enable PDF and Web scraping modules only
npx kitbag-mcp --enabled-modules pdf,web

⚙️ Configuración de Clientes Compatibles

1. Claude Desktop

Agrega esta entrada a tu claude_desktop_config.json:

{
  "mcpServers": {
    "kitbag-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "kitbag-mcp",
        "--enabled-modules",
        "pdf,web,image,data,utility,ai"
      ]
    }
  }
}

2. Cursor

  1. Ve a ConfiguraciónFunciones BetaMCP.
  2. Haz clic en + Agregar Nuevo Servidor MCP.
  3. Configura:
    • Nombre: Kitbag MCP
    • Tipo: stdio
    • Comando: npx -y kitbag-mcp --enabled-modules pdf,web,data,utility

3. Windsurf

Agrega esta entrada a tu mcp_config.json:

{
  "mcpServers": {
    "kitbag-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "kitbag-mcp"
      ],
      "env": {
        "KITBAG_ENABLED_MODULES": "pdf,web,data,utility"
      }
    }
  }
}

🎛️ Indicadores de Configuración y Variables de Entorno

Kitbag MCP se puede configurar mediante indicadores de CLI, variables de entorno o un archivo de configuración JSON — lo que mejor se adapte a tu flujo de trabajo.

Fuente de ConfiguraciónEjemplo de Uso
Indicadores de CLI--enabled-modules pdf,web o --enabled-tools utility.qr_generate
Variables de EntornoKITBAG_ENABLED_MODULES=pdf,web o KITBAG_ENABLED_TOOLS=utility.qr_generate
Configuración JSONUn archivo kitbag-config.json en el directorio de trabajo actual, o mediante --config /path/to/config.json

Esquema de kitbag-config.json:

{
  "enabledModules": ["pdf", "web", "image", "data", "utility", "ai", "developer"],
  "enabledTools": [],
  "defaultTimeoutMs": 30000,
  "maxPayloadSizeBytes": 52428800
}

🗺️ Índice de Categorías de Herramientas

CategoríaPrefijoHerramientasEnfoque
📄 PDFpdf.*6Análisis, conversión, fusión, división
🌐 Webweb.*7Raspado, fuentes, sitemaps, DNS
📸 Imagen y OCRimage.*5Redimensionamiento, compresión, OCR, EXIF
📊 Datosdata.*8Conversión de CSV / JSON / XML / YAML
💻 Desarrollodeveloper.*11Formateo, linting, diff, decodificación
🛠️ Utilidadutility.*12Criptografía, QR, redes, archivos
🧠 IAai.*1Fragmentación de texto para ingesta LLM

📚 Directorio Completo de Herramientas

📄 Herramientas PDF (pdf.*)

Analizadores y manipuladores PDF locales de alto rendimiento.

Nombre de HerramientaDescripciónEjemplo de Prompt para Agente
pdf.convert_to_textExtrae texto sin procesar de un documento PDF."Extrae el texto de reports/invoice.pdf"
pdf.convert_to_markdownAnaliza el PDF y lo formatea como Markdown limpio."Convierte el diseño de guide.pdf a markdown"
pdf.extract_imagesExtrae los recursos de imagen incrustados en un PDF."Extrae todas las imágenes de slide_deck.pdf"
pdf.extract_tablesExtrae datos tabulares estructurados de páginas PDF."Saca todas las tablas de financial_report.pdf"
pdf.mergeFusiona múltiples archivos PDF en orden."Fusiona doc1.pdf y doc2.pdf en un solo archivo"
pdf.splitDivide rangos de páginas específicos de un PDF."Dame las páginas 1 a 3 de main_guide.pdf"

🌐 Raspado Web y Redes (web.*)

Interactúa con documentos web sin procesar y consulta sistemas de red.

Nombre de HerramientaDescripciónEjemplo de Prompt para Agente
web.to_markdownRaspa una página web, limpia el desorden y la convierte a Markdown."Convierte el artículo en https://example.com/blog a markdown"
web.extract_metadataExtrae título, descripción, etiquetas OG y datos JSON-LD."Obtén los metadatos de la URL https://news.ycombinator.com"
web.extract_linksRaspa una página web y lista enlaces internos y externos."Encuentra todos los enlaces externos en la página de Wikipedia sobre IA"
web.rss_parserAnaliza un XML de feed RSS o Atom en JSON."Obtén los últimos elementos del feed de https://github.blog/feed/"
web.sitemap_generatorObtiene y analiza una URL de sitemap.xml, extrayendo todas las URLs."Obtén todas las URLs del sitemap de google.com"
web.dns_lookupRealiza resolución DNS (A, AAAA, MX, TXT, etc.)."Haz una consulta de registro MX para el dominio gmail.com"
web.youtube_transcriptExtrae transcripciones de texto y subtítulos con marcas de tiempo."Obtén la transcripción de https://www.youtube.com/watch?v=dQw4w9"

📸 Herramientas de Imagen y OCR (image.*)

Manipula imágenes y extrae texto localmente.

Nombre de HerramientaDescripciónEjemplo de Prompt para Agente
image.ocrExtrae texto de una imagen localmente usando Tesseract OCR."Extrae el texto de screenshot.png"
image.resizeRedimensiona las dimensiones de una imagen (ancho y alto)."Redimensiona avatar.png a 200x200 píxeles"
image.compressComprime el tamaño de archivo de una imagen con calidad personalizada."Comprime banner.jpg al 80% de calidad"
image.convert_formatConvierte imágenes entre formatos (PNG, JPEG, WebP, etc.)."Convierte logo.png al formato webp"
image.exif_metadataExtrae metadatos EXIF de cámara y ubicación de archivos de imagen."Muéstrame las coordenadas GPS y el modelo de cámara de photo.jpg"

📊 Transformación de Datos (data.*)

Conversión rápida y sin conexión entre formatos de datos estándar.

Nombre de HerramientaDescripciónEjemplo de Prompt para Agente
data.csv_to_jsonConvierte un archivo CSV o texto sin procesar a JSON."Analiza users.csv y devuélvelo como JSON"
data.json_to_csvConvierte un array JSON de objetos a salida CSV."Convierte este array de usuarios a una tabla CSV"
data.xml_to_jsonConvierte documentos XML a objetos JSON estructurados."Convierte este texto XML de configuración a JSON"
data.json_to_xmlConvierte objetos JSON a salida XML limpia."Exporta este objeto JSON a formato de etiquetas XML"
data.yaml_to_jsonConvierte documentos YAML a JSON."Convierte el archivo YAML de configuración de Kubernetes a JSON"
data.json_to_yamlConvierte objetos JSON a formato YAML limpio."Formatea este bloque JSON de base de datos como YAML"
data.deduplicateElimina duplicados de arrays de objetos JSON mediante una clave específica."Elimina duplicados de esta lista de objetos de usuario por ID"
data.diff_arraysCompara dos arrays JSON y lista las diferencias."Compara el array A y B y muéstrame las adiciones y eliminaciones"

💻 Utilidades de Desarrollo (developer.*)

Formatos estándar, validación y herramientas de diseño para desarrolladores.

Nombre de HerramientaDescripciónEjemplo de Prompt para Agente
developer.json_formatterFormatea y embellece cadenas JSON con indentación personalizada."Embellece esta cadena JSON usando indentación de 4 espacios"
developer.jwt_decoderDecodifica tokens JWT para leer las declaraciones de payload/header."Decodifica este token JWT: eyJhbGciOiJI..."
developer.sql_formatterFormatea cadenas SQL para múltiples dialectos de bases de datos."Formatea esta consulta select desordenada para PostgreSQL"
developer.mermaid_generateCrea diagramas Mermaid (diagramas de flujo, de secuencia, etc.)."Genera un diagrama de flujo que represente este flujo de usuario"
developer.openapi_parserAnaliza y formatea archivos de especificación OpenAPI/Swagger."Lista los endpoints y esquemas de solicitud de este openapi.yaml"
developer.regex_testerPrueba coincidencias de expresiones regulares en texto."Prueba si este regex de correo coincide con test@example.com"
developer.cron_parserAnaliza expresiones Cron y lista los próximos tiempos de ejecución."Dime cuándo se ejecuta a continuación el trabajo cron '0 9 * * 1-5'"
developer.diff_filesMuestra las diferencias de líneas entre archivos de texto."Muéstrame el diff entre fileA.txt y fileB.txt"
developer.diff_jsonMuestra las diferencias entre esquemas JSON."Resalta los cambios estructurales entre config1.json y config2.json"
developer.code_detectorDetecta el lenguaje de programación y la estructura de sintaxis."¿En qué lenguaje de programación está escrito este código?"
developer.markdown_lintAplica lint y valida el formato en archivos Markdown."Encuentra errores de estilo o espacios finales en index.md"

🛠️ Herramientas de Utilidad (utility.*)

Funciones auxiliares de sistema, red y criptografía.

Nombre de HerramientaDescripciónEjemplo de Prompt para Agente
utility.qr_generateGenera un código QR como archivo o Data URL base64."Crea un código QR que apunte a https://github.com"
utility.qr_readLee y decodifica un código QR de un archivo o flujo."¿Qué dice el código QR dentro de code.png?"
utility.base64_encodeConvierte cadenas/archivos a formato base64."Codifica en base64 la cadena 'Hello World'"
utility.base64_decodeDecodifica cadenas base64 de vuelta a texto."Decodifica 'SGVsbG8gV29ybGQ='"
utility.uuid_generateGenera UUIDs seguros (v4/v1) o contraseñas seguras."Genera una contraseña segura de longitud 16"
utility.file_hashCalcula hashes md5, sha1 o sha256 de texto/datos."Calcula el hash sha256 de esta cadena"
utility.email_validateValida la sintaxis y verifica los registros MX de correos electrónicos."Comprueba si support@github.com tiene registros MX válidos"
utility.ssl_checkConsulta la fecha de expiración del certificado e información de cualquier dominio."Comprueba cuándo expira el certificado SSL de google.com"
utility.unit_convertConvierte valores entre unidades físicas o de datos."Convierte 1024 megabytes a gigabytes"
utility.url_parserDesglosa URLs en protocolo, dominio, parámetros, etc."Analiza esta URL de consulta de búsqueda en sus componentes"
utility.zip_createComprime archivos o carpetas en un único archivo ZIP."Comprime source/ y assets/ en workspace.zip"
utility.zip_extractExtrae un archivo ZIP a una carpeta de destino."Extrae archivos de archive.zip a build_dir/"

🧠 Fragmentador de IA (ai.*)

Segmenta estructuras de texto largas dinámicamente para su ingesta.

Nombre de HerramientaDescripciónEjemplo de Prompt para Agente
ai.text_chunkerFragmenta texto largo usando estrategias de párrafo/oración/palabra."Fragmenta este documento de texto en tamaños de 500 caracteres con una superposición de 50 caracteres"

🏗️ Cómo Funciona

flowchart LR
    A[AI Agent / Client] -->|MCP Protocol| B(Kitbag MCP Server)
    B --> C{Enabled Modules}
    C --> D[📄 pdf.*]
    C --> E[🌐 web.*]
    C --> F[📸 image.*]
    C --> G[📊 data.*]
    C --> H[💻 developer.*]
    C --> I[🛠️ utility.*]
    C --> J[🧠 ai.*]
    D & E & F & G & H & I & J --> K[Local Execution<br/>No External API Calls]
    K --> A

Kitbag MCP se ejecuta como un único proceso local. Tu cliente de IA se comunica con él mediante el protocolo MCP estándar, y solo los módulos que habilitas se exponen como herramientas — manteniendo el uso de tokens bajo y tu flujo de trabajo rápido y privado.


🛠️ Desarrollo Local y Contribuciones

Cada herramienta es completamente autónoma. Agregar una nueva herramienta es tan simple como crear una carpeta dentro de src/tools/<category>/<tool_name>/.

Requisitos de Contribución

ArchivoPropósito
tool.tsEl código principal de ejecución, que exporta un ToolDefinition.
README.mdDocumentación directa de herramientas y descripciones de parámetros.
example.jsonEntradas de muestra y salidas esperadas.
tests.tsPruebas unitarias autocontenidas que usan mocks cuando es necesario para ejecutarse al instante.

Guía de Comandos

# Build compiler output
npm run build

# Run all 50 module tests
npm test

# Run real-life execution checks (makes live API and DNS requests)
npx tsx src/tests/run_real_life.ts

⚖️ Licencia

Distribuido bajo la Licencia MIT. Consulta LICENSE para más información. Completamente de código abierto y libre de adaptar para uso personal o comercial.

⭐ Si Kitbag MCP te ahorra tiempo, ¡considera darle una estrella al repositorio! ⭐