Skip to main content
Glama

QualityControl MCP Server

Servidor MCP (Model Context Protocol) que conecta ChatGPT/Claude con la API REST de QualityControl, permitiendo a los usuarios consultar información de su empresa mediante lenguaje natural.

Requisitos

  • Node.js 20+ LTS

  • npm 10+

Related MCP server: QC Database MCP Server

Instalación

# Instalar dependencias
npm install

# Copiar variables de entorno
cp .env.example .env

# Generar ENCRYPTION_KEY
node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"

# Editar .env con la URL de la API y la ENCRYPTION_KEY generada

Compilar

npm run build

Ejecutar (desarrollo)

npm run dev

Configuración en ChatGPT / Claude Desktop

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "qualitycontrol": {
      "command": "node",
      "args": ["C:/Repositorio/MCP/QualityControl/dist/index.js"],
      "env": {
        "API_BASE_URL": "https://developers.cogrowers.cl/heladas",
        "ENCRYPTION_KEY": "<tu-key-64-hex>",
        "LOG_LEVEL": "info",
        "LOG_DIR": "./logs",
        "NODE_ENV": "production",
        "SESSION_TTL_HOURS": "24",
        "SESSION_CLEANUP_INTERVAL_MIN": "60",
        "CACHE_TTL_SECONDS": "300",
        "CACHE_MAX_ENTRIES": "1000",
        "API_TIMEOUT_MS": "30000",
        "API_VALIDATE_ENDPOINT": "api_toda_info.php",
        "API_DEVICES_ENDPOINT": "api_toda_info.php",
        "API_HISTORY_ENDPOINT": "api_toda_info.php",
        "API_WEATHER_ENDPOINT": "api_toda_info.php"
      }
    }
  }
}

ChatGPT (Custom GPT con Actions)

Para ChatGPT, se requiere un wrapper HTTP. Consulta la documentación de OpenAI para configurar un GPT Action que apunte al servidor MCP.

Herramientas Disponibles

Tool

Descripción

connect_company

Conecta una empresa validando la API Key

disconnect_company

Desconecta la empresa y cierra sesión

get_devices

Lista dispositivos/sensores

get_sensor_history

Historial de lecturas

get_weather

Información climática

get_bins_today

Bins recolectados hoy

get_harvest

Información de cosecha

get_exports

Datos de exportación

get_dispatches

Despachos pendientes/completados

company_info

Info de empresa conectada

healthcheck

Estado del servidor

Agregar Nuevos Tools

  1. Crear src/tools/nuevo_tool.ts siguiendo la estructura existente

  2. Importar y agregar al array en src/tools/index.ts

  3. Compilar: npm run build

No se requiere modificar el servidor principal ni ningún otro módulo.

Arquitectura

Consultar ARCHITECTURE.md para el documento completo de arquitectura.

Available Tools

6 tools
qc_connectA

Conecta la empresa al sistema QualityControl usando la API Key configurada en el conector. Usar cuando el usuario quiere iniciar sesión, verificar la conexión o reconectarse a QualityControl. NO acepta API Keys como parámetro: la clave se configura en el conector de Claude, no en el chat. Para cambiar de empresa hay que editar o eliminar el conector en Configuración → Conectores. NO afecta otras aplicaciones como AgroClimate.

Inputs: no named parameters.

qc_disconnectA

Cierra la sesión activa de QualityControl y limpia el caché del servidor. Úsala para refrescar la conexión, limpiar datos en caché o cuando el usuario quiere reiniciar el contexto de QualityControl. IMPORTANTE: si el conector fue configurado con un 'OAuth Client ID' (API key directa), Claude se reconectará automáticamente a la misma empresa al usar cualquier herramienta. Para cambiar de empresa o cerrar sesión completamente, el usuario debe ir a Configuración → Conectores → editar el conector y cambiar el OAuth Client ID. NO afecta otras aplicaciones como AgroClimate.

Inputs: no named parameters.

qc_get_inspection_by_idA

Busca y muestra una planilla de control de calidad específica en QualityControl por su ID. Permite consultar directamente una planilla conocida sin necesidad de indicar rango de fechas. Busca en los campos id (ID de muestra) e id_planilla (número de planilla). Úsala cuando el usuario pide 'muéstrame la planilla 17688' o 'busca el registro 17688'.

Inputs: id (required).

qc_get_inspectionsA

Obtiene las planillas de control de calidad de QualityControl registradas en la empresa. Incluye especie, variedad, campo, cuartel, cantidad muestreada, brix, calibre, color y defectos de calidad y condición. Si no se indica rango de fechas, usa por defecto el mes actual. Muestra hasta 100 registros por página; usa offset para ver los siguientes.

Inputs: desde, hasta, offset, decode_json.

qc_get_quality_summaryA

Analiza las planillas de QualityControl y genera un resumen estadístico. Incluye desglose por especie y variedad, promedio de brix, distribución de calibres y los defectos de calidad y condición más frecuentes. Si no se indica rango de fechas, usa por defecto el mes actual.

Inputs: desde, hasta.

qc_healthcheckA

Verifica el estado del servidor QualityControl MCP, la conectividad con la API y las estadísticas de sesión y caché.

Inputs: no named parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.4/5.0

    Scored across 6 tools

    Disambiguation5/5

    Each tool has a clear, distinct purpose: connect, disconnect, list inspections, get by ID, generate summary, and health check. No overlapping functionality.

    Naming Consistency5/5

    All tools use the 'qc_' prefix and follow a consistent lowercase snake_case pattern. Verbs (connect, disconnect, get, healthcheck) are clear and uniform, with 'healthcheck' being a minor but acceptable deviation.

    Tool Count5/5

    Six tools is a well-scoped set for a QualityControl MCP server, covering connection management, data retrieval, summaries, and health monitoring without excess.

    Completeness5/5

    The tool surface fully covers the apparent read-only and connection-management domain: connect/disconnect, list/detail inspections, summary analytics, and health status. No obvious missing capabilities.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers