Kitbag MCP

Servidor MCP de configuração zero com mais de 50 ferramentas utilitárias: conversores, OCR, scraping e formatadores.

Documentação


Kitbag MCP é um servidor único e de código aberto do Model Context Protocol que reúne uma biblioteca selecionada de mais de 50 ferramentas utilitárias de alto valor — conversores de documentos, processadores de OCR, raspadores web, formatadores de dados e utilitários de desenvolvimento para IA — tudo em um só lugar.

Em vez de instalar, configurar e pagar para hospedar uma dúzia de servidores MCP de propósito único, instale o Kitbag MCP uma vez e habilite seletivamente apenas os módulos que você precisa. Ele é executado inteiramente na sua máquina: custo zero de hospedagem, sem chaves de API, sem configuração de servidor.


📖 Índice

Clique para expandir

🚀 Início Rápido (Zero Configuração)

Execute instantaneamente usando npx (Node.js necessário):

npx kitbag-mcp

Expor Módulos Específicos (Economiza Tokens de Contexto do LLM)

Para evitar que seus agentes de IA fiquem sobrecarregados com opções de ferramentas, habilite apenas o que você precisa:

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

⚙️ Configuração de Clientes Suportados

1. Claude Desktop

Adicione esta entrada ao seu claude_desktop_config.json:

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

2. Cursor

  1. Vá para Configurações → Recursos Beta → MCP.
  2. Clique em + Adicionar Novo Servidor MCP.
  3. Configure:
    • Nome: Kitbag MCP
    • Tipo: stdio
    • Comando: npx -y kitbag-mcp --enabled-modules pdf,web,data,utility

3. Windsurf

Adicione esta entrada ao seu mcp_config.json:

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

🎛️ Flags de Configuração e Variáveis de Ambiente

O Kitbag MCP pode ser configurado por meio de flags de CLI, variáveis de ambiente ou um arquivo de configuração JSON — o que melhor se adequar ao seu fluxo de trabalho.

Fonte de ConfiguraçãoExemplo de Uso
Flags de CLI--enabled-modules pdf,web ou --enabled-tools utility.qr_generate
Variáveis de AmbienteKITBAG_ENABLED_MODULES=pdf,web ou KITBAG_ENABLED_TOOLS=utility.qr_generate
Config JSONUm arquivo kitbag-config.json no diretório de trabalho atual, ou via --config /path/to/config.json

Esquema kitbag-config.json:

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

🗺️ Índice de Categorias de Ferramentas

CategoriaPrefixoFerramentasFoco
📄 PDFpdf.*6Análise, conversão, mesclagem, divisão
🌐 Webweb.*7Raspagem, feeds, sitemaps, DNS
📸 Imagem e OCRimage.*5Redimensionamento, compressão, OCR, EXIF
📊 Dadosdata.*8Conversão CSV / JSON / XML / YAML
💻 Desenvolvedordeveloper.*11Formatação, linting, diffing, decodificação
🛠️ Utilitárioutility.*12Cripto, QR, redes, arquivos
🧠 IAai.*1Fragmentação de texto para ingestão em LLM

📚 Diretório Completo de Ferramentas

📄 Ferramentas de PDF (pdf.*)

Analisadores e manipuladores de PDF locais de alto desempenho.

Nome da FerramentaDescriçãoExemplo de Prompt para Agente
pdf.convert_to_textExtrai texto bruto de um documento PDF."Extraia o texto de reports/invoice.pdf"
pdf.convert_to_markdownAnalisa o PDF e o formata em Markdown limpo."Converta o layout de guide.pdf para markdown"
pdf.extract_imagesExtrai imagens brutas incorporadas em um PDF."Extraia todas as imagens de slide_deck.pdf"
pdf.extract_tablesExtrai dados estruturados de tabelas de páginas de PDF."Extraia todas as tabelas de financial_report.pdf"
pdf.mergeMescla vários arquivos PDF em ordem."Mescle doc1.pdf e doc2.pdf em um único arquivo"
pdf.splitDivide intervalos específicos de páginas de um PDF."Me dê as páginas 1 a 3 de main_guide.pdf"

🌐 Raspagem Web e Redes (web.*)

Interaja com documentos web brutos e consulte sistemas de rede.

Nome da FerramentaDescriçãoExemplo de Prompt para Agente
web.to_markdownRaspa uma página web, remove o excesso e converte para Markdown."Converta o artigo em https://example.com/blog para markdown"
web.extract_metadataExtrai título, descrição, tags OG e dados JSON-LD."Obtenha metadados para a URL https://news.ycombinator.com"
web.extract_linksRaspa uma página web e lista links internos e externos."Encontre todos os links externos na página da Wikipedia sobre IA"
web.rss_parserAnalisa uma URL de feed RSS ou Atom em XML para JSON."Obtenha os itens mais recentes do feed de https://github.blog/feed/"
web.sitemap_generatorBusca e analisa uma URL de sitemap.xml, extraindo todas as URLs."Busque todas as URLs no sitemap de google.com"
web.dns_lookupRealiza resolução de DNS (A, AAAA, MX, TXT, etc.)."Faça uma consulta de registro MX para o domínio gmail.com"
web.youtube_transcriptExtrai transcrições de texto e legendas com carimbos de data/hora."Obtenha a transcrição de https://www.youtube.com/watch?v=dQw4w9"

📸 Ferramentas de Imagem e OCR (image.*)

Manipule imagens e extraia texto localmente.

Nome da FerramentaDescriçãoExemplo de Prompt para Agente
image.ocrExtrai texto de uma imagem localmente usando OCR Tesseract."Extraia texto de screenshot.png"
image.resizeRedimensiona as dimensões de uma imagem (largura e altura)."Redimensione avatar.png para 200x200 pixels"
image.compressComprime o tamanho do arquivo de imagem com qualidade personalizada."Comprima banner.jpg com 80% de qualidade"
image.convert_formatConverte imagens entre formatos (PNG, JPEG, WebP, etc.)."Converta logo.png para o formato webp"
image.exif_metadataExtrai metadados EXIF de câmera e localização de arquivos de imagem."Mostre-me as coordenadas GPS e o modelo da câmera de photo.jpg"

📊 Transformação de Dados (data.*)

Conversão rápida e offline entre formatos de dados padrão.

Nome da FerramentaDescriçãoExemplo de Prompt para Agente
data.csv_to_jsonConverte arquivo CSV ou texto bruto para JSON."Analise users.csv e retorne como JSON"
data.json_to_csvConverte array JSON de objetos para saída CSV."Converta este array de usuários para uma tabela CSV"
data.xml_to_jsonConverte documentos XML para objetos JSON estruturados."Converta este texto XML de configuração para JSON"
data.json_to_xmlConverte objetos JSON para saída XML limpa."Exporte este objeto JSON para o formato de tags XML"
data.yaml_to_jsonConverte documentos YAML para JSON."Converta o yaml de configuração do Kubernetes para JSON"
data.json_to_yamlConverte objetos JSON para formato YAML limpo."Formate este bloco JSON de banco de dados como YAML"
data.deduplicateRemove duplicatas de arrays de objetos JSON por uma chave específica."Remova duplicatas desta lista de objetos de usuário por ID"
data.diff_arraysCompara dois arrays JSON e lista as diferenças."Compare os arrays A e B e mostre-me adições e remoções"

💻 Utilitários para Desenvolvedores (developer.*)

Formatos padrão, validação e ferramentas de layout para desenvolvedores.

Nome da FerramentaDescriçãoExemplo de Prompt para Agente
developer.json_formatterFormata e embeleza strings JSON com indentação personalizada."Embeleze esta string JSON usando indentação de 4 espaços"
developer.jwt_decoderDecodifica tokens JWT para ler as claims de payload/cabeçalho."Decodifique este token JWT: eyJhbGciOiJI..."
developer.sql_formatterFormata strings SQL para vários dialetos de banco de dados."Formate esta consulta select bagunçada para PostgreSQL"
developer.mermaid_generateCria diagramas Mermaid (fluxogramas, sequência, etc.)."Gere um diagrama de fluxograma representando este fluxo de usuário"
developer.openapi_parserAnalisa e formata arquivos de especificação OpenAPI/Swagger."Liste os endpoints e esquemas de requisição deste openapi.yaml"
developer.regex_testerTesta correspondências de expressões regulares em texto."Teste se esta regex de email corresponde a test@example.com"
developer.cron_parserAnalisa expressões Cron e lista os próximos horários de execução."Diga-me quando o cron job '0 9 * * 1-5' será executado em seguida"
developer.diff_filesMostra diferenças de linhas entre arquivos de texto."Mostre-me a diferença entre fileA.txt e fileB.txt"
developer.diff_jsonMostra diferenças entre esquemas JSON."Destaque mudanças estruturais entre config1.json e config2.json"
developer.code_detectorDetecta linguagem de programação e estrutura de sintaxe."Em qual linguagem de programação este código está escrito?"
developer.markdown_lintFaz lint e valida a formatação em arquivos Markdown."Encontre erros de estilo ou espaços no final em index.md"

🛠️ Ferramentas Utilitárias (utility.*)

Funções auxiliares de sistema, rede e criptografia.

Nome da FerramentaDescriçãoExemplo de Prompt para Agente
utility.qr_generateGera um código QR como arquivo ou URL de dados base64."Crie um código QR apontando para https://github.com"
utility.qr_readLê e decodifica um código QR de um arquivo ou fluxo."O que diz o código QR dentro de code.png?"
utility.base64_encodeConverte strings/arquivos para o formato base64."Codifique em base64 a string 'Hello World'"
utility.base64_decodeDecodifica strings base64 de volta para texto."Decodifique 'SGVsbG8gV29ybGQ='"
utility.uuid_generateGera UUIDs seguros (v4/v1) ou senhas seguras."Gere uma senha segura de comprimento 16"
utility.file_hashCalcula hashes md5, sha1 ou sha256 de texto/dados."Calcule o hash sha256 desta string"
utility.email_validateValida a sintaxe e verifica registros MX de emails."Verifique se support@github.com tem registros MX válidos"
utility.ssl_checkConsulta a data de expiração e informações do certificado de qualquer domínio."Verifique quando o certificado SSL de google.com expira"
utility.unit_convertConverte valores entre unidades físicas ou de dados."Converta 1024 megabytes para gigabytes"
utility.url_parserDecompõe URLs em protocolo, domínio, parâmetros, etc."Analise esta URL de consulta de pesquisa em seus componentes"
utility.zip_createComprime arquivos ou pastas em um único arquivo ZIP."Comprima source/ e assets/ em workspace.zip"
utility.zip_extractExtrai um arquivo ZIP para uma pasta de destino."Extraia arquivos de archive.zip para build_dir/"

🧠 Fragmentador de IA (ai.*)

Segmenta grandes estruturas de texto dinamicamente para ingestão.

Nome da FerramentaDescriçãoExemplo de Prompt para Agente
ai.text_chunkerFragmenta textos longos usando estratégias de parágrafo/frase/palavra."Fragmente este documento de texto em blocos de 500 caracteres com sobreposição de 50 caracteres"

🏗️ Como 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

O Kitbag MCP é executado como um único processo local. Seu cliente de IA se comunica com ele por meio do protocolo MCP padrão, e apenas os módulos que você habilitar são expostos como ferramentas — mantendo o uso de tokens baixo e seu fluxo de trabalho rápido e privado.


🛠️ Desenvolvimento Local e Contribuições

Cada ferramenta é totalmente autônoma. Adicionar uma nova ferramenta é tão simples quanto criar uma pasta dentro de src/tools/<category>/<tool_name>/.

Requisitos para Contribuição

ArquivoFinalidade
tool.tsO código principal de execução, exportando um ToolDefinition.
README.mdDocumentação direta das ferramentas e descrições de parâmetros.
example.jsonExemplos de entradas e saídas esperadas.
tests.tsTestes unitários autocontidos, usando mocks quando necessário para execução instantânea.

Guia 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

⚖️ Licença

Distribuído sob a Licença MIT. Consulte LICENSE para mais informações. Totalmente open-source e livre para adaptação para uso pessoal ou comercial.

⭐ Se o Kitbag MCP economizar seu tempo, considere dar uma estrela no repositório! ⭐