ComplianceCow MCP Server

Proporciona a los agentes de IA información sobre cumplimiento normativo, respuestas auditables y acciones como la creación de tickets y correcciones de políticas.

Documentación

Servidores MCP de ComplianceCow

Tabla de Contenidos

Introducción

Los servidores MCP (Model Context Protocol) están diseñados para procesar solicitudes estructuradas de agentes de IA, realizar operaciones específicas de dominio y devolver respuestas contextuales. Los servidores MCP de ComplianceCow permiten una integración fluida con hosts compatibles con MCP como Claude Desktop y Goose Desktop/CLI para una automatización de cumplimiento segura, modular e inteligente.


Glosario

Palabra claveDescripciónEjemplo
ControlUn control de cumplimiento o seguridad que debe implementarse para garantizar la adherencia a regulaciones, estándares y políticasAsegurar que MFA esté habilitado para todos los usuarios
EvaluaciónUna colección de controles organizados jerárquicamente, que representa un estándar de la industria o un marco de ciberseguridadPCI DSS 4.0
Ejecución de EvaluaciónLa verificación de controles en una evaluación para un período de tiempo determinado, incluyendo la recopilación de evidencia-
VerificaciónUna regla o verificación para el cumplimiento o la conformidadVerificar si MFA está habilitado para todos los usuarios de AWS
Tipo de RecursoCategoría o clase de recursosAWS EC2, AWS S3
RecursoInstancia de un tipo de recurso para el cual se realizan verificacionesInstancias EC2 específicas, repositorios de GitHub
ActivoUn grupo de recursos de varios tiposServicios de AWS, Kubernetes, GitHub
EvidenciaDatos agregados mediante verificaciones contra recursos para un control determinadoArchivo CSV con usuarios de AWS y su estado de MFA
AcciónActividad (automatizada o manual) para responder o remediar según condicionesCrear un ticket de JIRA para una instancia EC2 no conforme
ReglaUna unidad de automatización reutilizable que ejecuta tareas y genera evidenciaRegla de Verificación de Cumplimiento MFA de AWS
Flujo de TrabajoUna secuencia de automatización impulsada por eventos con condiciones y actividadesFlujo de trabajo de alerta ante hallazgos críticos

Arquitectura

Los servidores MCP de ComplianceCow soportan el mecanismo de transporte STDIO para una integración local fluida con su host MCP. En el núcleo se encuentra el Grafo de Cumplimiento, que ingiere continuamente datos como ejecuciones de evaluación, evidencia y estado de cumplimiento. El servidor extrae información activamente de:

  • Almacenes vectoriales para búsqueda semántica
  • Bases de datos relacionales para datos estructurados
  • Bases de datos de grafos para consultas de relaciones
  • Sistemas de almacenamiento de archivos para artefactos de evidencia

Servidores MCP

Hemos organizado las herramientas MCP de ComplianceCow en 4 servidores distintos.

¿Por qué múltiples servidores MCP? En el ecosistema MCP, usar menos herramientas por servidor produce mejores resultados y mejor rendimiento.
Cada servidor puede habilitarse de forma independiente mediante la variable de entorno MCP_TOOLS_TO_BE_INCLUDED.
Importante: Habilite solo un servidor a la vez en el Host MCP para evitar conflictos de nombres de herramientas. Algunas herramientas comparten el mismo nombre entre servidores pero tienen implementaciones diferentes según el caso de uso.

1. ComplianceCow-Rules

El servidor Rules permite crear, gestionar y ejecutar reglas de cumplimiento. Proporciona un kit de herramientas integral para la creación de reglas con recopilación de entrada guiada, orquestación de tareas e integración con ComplianceCow.

Casos de Uso:

  • Crear reglas de cumplimiento personalizadas con múltiples tareas
  • Ejecutar reglas contra la infraestructura en la nube
  • Publicar reglas en ComplianceCow y adjuntarlas a controles
  • Generar documentación de reglas (notas de diseño, README)

2. ComplianceCow-Insights

El servidor Insights proporciona acceso integral a datos de cumplimiento, paneles, evaluaciones y evidencia a través del Grafo de Cumplimiento. Ideal para consultar y analizar la postura de cumplimiento.

Casos de Uso:

  • Consultar datos de paneles para una visión general del cumplimiento
  • Explorar evaluaciones y sus ejecuciones
  • Recuperar evidencia y estado de cumplimiento
  • Ejecutar consultas Cypher en el Grafo de Cumplimiento
  • Realizar acciones sobre controles y evidencia

3. ComplianceCow-Workflow

El servidor Workflow permite construir y ejecutar flujos de trabajo de cumplimiento automatizados con disparadores basados en eventos, condiciones y actividades.

Casos de Uso:

  • Crear flujos de trabajo de cumplimiento automatizados
  • Definir disparadores de eventos y condiciones
  • Ejecutar secuencias de flujo de trabajo de múltiples pasos
  • Gestionar estados y transiciones de flujos de trabajo

4. ComplianceCow-Assistant

El servidor Assistant se especializa en la configuración de evaluaciones, la configuración de controles y la recopilación de evidencia basada en SQL. Proporciona herramientas para configurar evaluaciones de cumplimiento y gestionar la evidencia de controles.

Casos de Uso:

  • Crear y configurar evaluaciones
  • Configurar controles con entidades de contexto
  • Crear recopilación de evidencia basada en SQL
  • Gestionar citas y documentación de controles

Primeros Pasos

Requisitos Previos

  1. Host MCP: Necesita un host compatible con MCP:
  2. Python: Versión 3.11 o superior
  3. Gestor de Paquetes uv: Requerido para ejecutar el servidor MCP

Autenticación

Los servidores MCP de ComplianceCow utilizan OAuth 2.0 con el tipo de concesión client_credentials.

Para obtener credenciales:

  1. Regístrese en ComplianceCow (o en su instancia dedicada)
  2. Haga clic en "Manage Client Credentials" en el menú de perfil de usuario en la esquina superior derecha
  3. Complete el formulario para obtener su Client ID y Client Secret

Instalación

  1. Clone el repositorio:
    git clone https://github.com/ComplianceCow/cow-mcp.git
    cd cow-mcp
    
  2. Cree el entorno virtual e instale las dependencias:
    uv venv .venv
    source .venv/bin/activate  # On Windows: .venv\Scripts\activate
    uv pip install .
    
  3. Encuentre la ruta de su binario uv (necesaria para la configuración):
    which uv  # On macOS/Linux
    where uv  # On Windows
    

Configuración

Variables de Entorno

VariableDescripciónRequerida
CCOW_HOSTURL del host de la API de ComplianceCow (Ej: https://partner.compliancecow.live)
CCOW_CLIENT_IDSu Client ID (consulte la sección de Autenticación anterior)
CCOW_CLIENT_SECRETSu Client Secret (consulte la sección de Autenticación anterior)

Configuración del Host MCP

Claude Desktop

Ubicación del archivo de configuración:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Para instrucciones detalladas de configuración, consulte Configuración MCP de Claude Desktop.

Plantilla de configuración para los 4 servidores:

{
  "mcpServers": {
    "ComplianceCow-Rules": {
      "command": "<UV_BIN_PATH>",
      "args": [
        "--directory",
        "<PATH_TO_COW_MCP_REPO>",
        "run",
        "main.py"
      ],
      "env": {
        "CCOW_HOST": "<YOUR_CCOW_HOST>",
        "CCOW_CLIENT_ID": "<YOUR_CLIENT_ID>",
        "CCOW_CLIENT_SECRET": "<YOUR_CLIENT_SECRET>",
        "MCP_TOOLS_TO_BE_INCLUDED": "rules"
      }
    },
    "ComplianceCow-Insights": {
      "command": "<UV_BIN_PATH>",
      "args": [
        "--directory",
        "<PATH_TO_COW_MCP_REPO>",
        "run",
        "main.py"
      ],
      "env": {
        "CCOW_HOST": "<YOUR_CCOW_HOST>",
        "CCOW_CLIENT_ID": "<YOUR_CLIENT_ID>",
        "CCOW_CLIENT_SECRET": "<YOUR_CLIENT_SECRET>",
        "MCP_TOOLS_TO_BE_INCLUDED": "insights"
      }
    },
    "ComplianceCow-Workflow": {
      "command": "<UV_BIN_PATH>",
      "args": [
        "--directory",
        "<PATH_TO_COW_MCP_REPO>",
        "run",
        "main.py"
      ],
      "env": {
        "CCOW_HOST": "<YOUR_CCOW_HOST>",
        "CCOW_CLIENT_ID": "<YOUR_CLIENT_ID>",
        "CCOW_CLIENT_SECRET": "<YOUR_CLIENT_SECRET>",
        "MCP_TOOLS_TO_BE_INCLUDED": "workflow"
      }
    },
    "ComplianceCow-Assistant": {
      "command": "<UV_BIN_PATH>",
      "args": [
        "--directory",
        "<PATH_TO_COW_MCP_REPO>",
        "run",
        "main.py"
      ],
      "env": {
        "CCOW_HOST": "<YOUR_CCOW_HOST>",
        "CCOW_CLIENT_ID": "<YOUR_CLIENT_ID>",
        "CCOW_CLIENT_SECRET": "<YOUR_CLIENT_SECRET>",
        "MCP_TOOLS_TO_BE_INCLUDED": "assistant"
      }
    }
  }
}

Reemplace los siguientes marcadores de posición:

  • UV_BIN_PATH: Ruta a su binario uv (p. ej., /Users/username/.local/bin/uv). Puede encontrarla ejecutando which uv (macOS/Linux) o where uv (Windows).
  • PATH_TO_COW_MCP_REPO: La ruta absoluta a su repositorio clonado cow-mcp. Después de clonar y ejecutar cd cow-mcp, use pwd (macOS/Linux) o cd (Windows) para obtener esta ruta.
  • YOUR_CCOW_HOST: https://partner.compliancecow.live (o <your_dedicated_instance_hosturl>)
  • YOUR_CLIENT_ID: Su Client ID de ComplianceCow (consulte Autenticación)
  • YOUR_CLIENT_SECRET: Su Client Secret de ComplianceCow (consulte Autenticación)

Goose Desktop/CLI

Para instrucciones detalladas de configuración, consulte Documentación de Extensiones de Goose.

Ubicación del archivo de configuración:

  • macOS/Linux: ~/.config/goose/config.yaml
  • Windows: %APPDATA%\goose\config.yaml

Plantilla de configuración para los 4 servidores:

extensions:
  ComplianceCow-Rules:
    enabled: true
    type: stdio
    name: Compliancecow-Rules
    description: 'ComplianceCow Rules - Create and manage compliance rules'
    cmd: <UV_BIN_PATH>
    args:
      - --directory
      - <PATH_TO_COW_MCP_REPO>
      - run
      - main.py
    envs:
      CCOW_HOST: <YOUR_CCOW_HOST>
      CCOW_CLIENT_ID: <YOUR_CLIENT_ID>
      CCOW_CLIENT_SECRET: <YOUR_CLIENT_SECRET>
      MCP_TOOLS_TO_BE_INCLUDED: rules
    timeout: 300

  ComplianceCow-Insights:
    enabled: true
    type: stdio
    name: Compliancecow-Insights
    description: 'ComplianceCow Insights - Query compliance data and dashboards'
    cmd: <UV_BIN_PATH>
    args:
      - --directory
      - <PATH_TO_COW_MCP_REPO>
      - run
      - main.py
    envs:
      CCOW_HOST: <YOUR_CCOW_HOST>
      CCOW_CLIENT_ID: <YOUR_CLIENT_ID>
      CCOW_CLIENT_SECRET: <YOUR_CLIENT_SECRET>
      MCP_TOOLS_TO_BE_INCLUDED: insights
    timeout: 300

  ComplianceCow-Workflow:
    enabled: true
    type: stdio
    name: Compliancecow-Workflow
    description: 'ComplianceCow Workflow - Build and execute compliance workflows'
    cmd: <UV_BIN_PATH>
    args:
      - --directory
      - <PATH_TO_COW_MCP_REPO>
      - run
      - main.py
    envs:
      CCOW_HOST: <YOUR_CCOW_HOST>
      CCOW_CLIENT_ID: <YOUR_CLIENT_ID>
      CCOW_CLIENT_SECRET: <YOUR_CLIENT_SECRET>
      MCP_TOOLS_TO_BE_INCLUDED: workflow
    timeout: 300

  ComplianceCow-Assistant:
    enabled: true
    type: stdio
    name: Compliancecow-Assistant
    description: 'ComplianceCow Assistant - Configure assessments and controls'
    cmd: <UV_BIN_PATH>
    args:
      - --directory
      - <PATH_TO_COW_MCP_REPO>
      - run
      - main.py
    envs:
      CCOW_HOST: <YOUR_CCOW_HOST>
      CCOW_CLIENT_ID: <YOUR_CLIENT_ID>
      CCOW_CLIENT_SECRET: <YOUR_CLIENT_SECRET>
      MCP_TOOLS_TO_BE_INCLUDED: assistant
    timeout: 300

Reemplace los siguientes marcadores de posición:

  • UV_BIN_PATH: Ruta a su binario uv (p. ej., /Users/username/.local/bin/uv). Puede encontrarla ejecutando which uv (macOS/Linux) o where uv (Windows).
  • PATH_TO_COW_MCP_REPO: La ruta absoluta a su repositorio clonado cow-mcp. Después de clonar y ejecutar cd cow-mcp, use pwd (macOS/Linux) o cd (Windows) para obtener esta ruta.
  • YOUR_CCOW_HOST: https://partner.compliancecow.live (o <your_dedicated_instance_hosturl>)
  • YOUR_CLIENT_ID: Su Client ID de ComplianceCow (consulte Autenticación)
  • YOUR_CLIENT_SECRET: Su Client Secret de ComplianceCow (consulte Autenticación)

Ejecución Local

Para verificar que el servidor MCP esté configurado correctamente antes de configurar su host MCP:

# Navigate to the cow-mcp directory
cd /path/to/cow-mcp

# Set required environment variables
export CCOW_HOST="https://partner.compliancecow.live"
export CCOW_CLIENT_ID="<your_client_id>"
export CCOW_CLIENT_SECRET="<your_client_secret>"
export MCP_TOOLS_TO_BE_INCLUDED="rules"  # or insights, workflow, assistant

# Run the server
uv run main.py

Si el servidor se inicia sin errores, está listo para configurar su host MCP.


Referencia de Herramientas

Herramientas del Servidor Rules

HerramientaDescripción
get_tasks_summaryRecuperar tareas disponibles para la creación de reglas
get_task_detailsObtener información detallada de la tarea, incluyendo entradas/salidas
fetch_tasks_suggestionsSugerencias inteligentes de tareas basadas en requisitos
get_rules_summaryListar todas las reglas disponibles en el catálogo
fetch_rules_suggestionsSugerir reglas coincidentes para evitar duplicados
create_ruleCrear una nueva regla con tareas y mapeo de E/S
fetch_ruleRecuperar la estructura completa de la regla por nombre
check_rule_statusVerificar el nivel de completitud de la regla
prepare_input_collection_overviewResumen de entradas requeridas antes de la recopilación
get_template_guidanceOrientación para entradas basadas en plantillas
collect_template_inputRecopilar entradas de archivos/plantillas con validación
confirm_template_inputConfirmar y procesar la entrada de plantilla
collect_parameter_inputRecopilar valores de parámetros primitivos
confirm_parameter_inputConfirmar y almacenar valores de parámetros
upload_fileSubir archivos con validación de formato
verify_collected_inputsVerificar todas las entradas antes de la ejecución
execute_taskEjecutar una tarea específica con las entradas recopiladas
execute_ruleEjecutar la regla completa con credenciales
fetch_execution_progressMonitorear el progreso de ejecución en vivo
fetch_output_fileObtener archivos de salida de la ejecución
fetch_cc_rule_by_idObtener regla de ComplianceCow por ID
fetch_cc_rule_by_nameObtener regla de ComplianceCow por nombre
fetch_cc_rules_listListar reglas publicadas de ComplianceCow
publish_rulePublicar regla en ComplianceCow
fetch_assessmentsRecuperar evaluaciones disponibles
fetch_leaf_controls_of_an_assessmentObtener controles adjuntables de la evaluación
verify_control_in_assessmentVerificar que el control sea adjuntable
attach_rule_to_controlAdjuntar regla publicada al control
get_applications_for_tagObtener aplicaciones para una etiqueta específica
get_application_infoObtener detalles de la aplicación y tipos de credenciales
fetch_applicationsObtener todas las aplicaciones disponibles
prepare_applications_for_executionPreparar la configuración de la aplicación
check_applications_publish_statusVerificar el estado de publicación de la aplicación
publish_applicationPublicar aplicaciones para la ejecución de reglas
add_unique_identifier_to_taskAgregar identificador único a la tarea
configure_rule_output_schemaConfigurar esquema de salida estándar/extendido
generate_design_notes_previewGenerar notas de diseño de cuaderno Jupyter
create_design_notesGuardar notas de diseño
fetch_rule_design_notesObtener notas de diseño existentes
generate_rule_readme_previewGenerar README completo
create_rule_readmeGuardar README
update_rule_readmeActualizar README existente
list_assetsListar planes/activos de integración
list_checksListar verificaciones para un activo
get_asset_control_hierarchyObtener jerarquía de controles para el activo
create_asset_and_checkCrear activo con verificación inicial
add_check_to_assetAgregar verificación a un activo existente
schedule_asset_executionProgramar ejecución automatizada de activos
list_asset_schedulesListar programaciones para un activo
delete_asset_scheduleEliminar programación de activo
suggest_control_config_citationsSugerir citas de control
add_citation_to_asset_controlAdjuntar cita al control
verify_control_automationVerificar estado de automatización del control
create_control_noteCrear nota de documentación en el control
list_control_notesListar notas de control
update_control_config_noteActualizar nota de control
create_support_ticketCrear tickets de soporte
check_rule_publish_statusVerificar estado de publicación de la regla
read_fileLeer contenido de archivo local
read_resourceLeer contenido de URI de recurso
create_downloadable_fileCrear URL de archivo descargable

Herramientas del servidor Insights

HerramientaDescripción
list_all_assessment_categoriesListar todas las categorías de evaluación
list_assessmentsListar evaluaciones por categoría/nombre
fetch_recent_assessment_runsObtener ejecuciones de evaluación recientes
fetch_assessment_runsObtener ejecuciones con paginación
fetch_assessment_run_detailsObtener detalles de control de la ejecución
fetch_assessment_run_leaf_controlsObtener controles hoja de la ejecución
fetch_run_controlsObtener controles por nombre
fetch_run_control_meta_dataObtener metadatos de control
fetch_assessment_run_leaf_control_evidenceObtener evidencia para controles
fetch_controlsObtener información de control
fetch_evidence_recordsObtener registros de evidencia con filtrado
fetch_evidence_record_schemaObtener esquema de evidencia
fetch_available_control_actionsObtener acciones de control disponibles
fetch_assessment_available_actionsObtener acciones de evaluación
fetch_evidence_available_actionsObtener acciones de evidencia
fetch_general_available_actionsObtener acciones generales
fetch_automated_controls_of_an_assessmentObtener controles automatizados
execute_actionEjecutar acción sobre control/evidencia
list_assetsListar todos los activos
fetch_assets_summaryObtener estadísticas resumidas de activos
fetch_resource_typesObtener tipos de recursos con paginación
fetch_checksObtener verificaciones para tipo de recurso
fetch_resourcesObtener recursos con paginación
fetch_resources_by_check_nameObtener recursos por nombre de verificación
fetch_checks_summaryObtener estadísticas resumidas de verificaciones
fetch_resources_summaryObtener estadísticas resumidas de recursos
fetch_resources_by_check_name_summaryObtener resumen de recursos por verificación
fetch_resource_types_summaryObtener resumen de tipos de recursos
get_dashboard_review_periodsObtener períodos de revisión disponibles
get_dashboard_dataObtener datos completos del panel
fetch_dashboard_framework_controlsObtener controles del marco
fetch_dashboard_framework_summaryObtener resumen del marco
get_dashboard_common_controls_detailsObtener detalles de control común
get_top_over_due_controls_detailObtener controles vencidos principales
get_top_non_compliant_controls_detailObtener controles no conformes principales
fetch_unique_node_data_and_schemaObtener datos y esquema de nodos del grafo
execute_cypher_queryEjecutar consulta Cypher en el grafo
helpObtener información de ayuda
read_fileLeer contenido de archivo local
read_resourceLeer contenido de URI de recurso
create_downloadable_fileCrear URL de archivo descargable

Herramientas del servidor Workflow

HerramientaDescripción
list_workflow_event_categoriesListar categorías de eventos de flujo de trabajo
list_workflow_eventsListar eventos de activación disponibles
list_workflow_activity_typesListar tipos de actividad disponibles
list_workflow_function_categoriesListar categorías de funciones
list_workflow_functionsListar funciones disponibles
list_workflow_tasksListar tareas de flujo de trabajo disponibles
list_workflow_condition_categoriesListar categorías de condiciones
list_workflow_conditionsListar condiciones disponibles
list_workflow_predefined_variablesListar variables predefinidas
list_workflow_rulesListar reglas de flujo de trabajo disponibles
create_workflowCrear flujo de trabajo desde YAML
list_workflowsListar todos los flujos de trabajo
get_workflow_by_nameObtener flujo de trabajo por nombre
fetch_workflow_detailsObtener detalles completos del flujo de trabajo
modify_workflowActualizar implementación del flujo de trabajo
update_workflow_summaryActualizar descripción del flujo de trabajo
update_workflow_mermaid_diagramActualizar diagrama del flujo de trabajo
fetch_workflow_resource_dataObtener datos de recursos para la ejecución
create_workflow_custom_eventCrear evento de activación personalizado
trigger_workflowActivar ejecución del flujo de trabajo
fetch_workflow_ruleObtener regla de flujo de trabajo por nombre
fetch_task_readmeObtener README de la tarea
fetch_rule_readmeObtener README de la regla

Herramientas del servidor Assistant

HerramientaDescripción
create_assessmentCrear evaluación desde YAML
list_assessmentsListar todas las evaluaciones
list_assessment_control_configsListar configuraciones de control
create_control_configCrear configuración de control
update_control_config_contextsActualizar entidades de contexto de control
attach_citation_to_control_configAdjuntar cita al control
suggest_control_config_citationsSugerir citas relevantes
mark_control_ready_for_executionMarcar control listo para ejecución
create_sql_query_evidenceCrear evidencia basada en SQL
list_sql_query_evidenceListar evidencia SQL para el control
update_sql_query_evidenceActualizar evidencia SQL
validate_sql_queryValidar sintaxis de consulta SQL
get_evidence_sample_dataObtener datos de evidencia de muestra
fetch_control_source_summaryObtener resumen de fuente de evidencia
create_control_config_noteCrear nota de configuración de control
list_control_config_notesListar notas de configuración de control
update_control_config_noteActualizar nota de configuración de control
get_entity_hierarchyObtener jerarquía de entidades
get_context_tablesObtener tablas de contexto disponibles
fetch_rule_readmeObtener README de la regla

Preguntas frecuentes

1. ¿Cómo me registro en ComplianceCow?

Visita ComplianceCow Signup para crear una cuenta usando varias opciones de registro, incluyendo Google, Microsoft y OTP.

2. ¿Qué valor ofrece ComplianceCow?

ComplianceCow ayuda con la recopilación automatizada de evidencia de cumplimiento de seguridad, análisis y desafíos de remediación. Es un estudio de automatización de controles GRC de seguridad para controles y flujos de trabajo personalizados. Obtén más información en compliancecow.com.

3. ¿Por qué hay 4 servidores separados?

MCP funciona mejor con menos herramientas por servidor. Dividirlo en 4 servidores (Rules, Insights, Workflow, Assistant) garantiza un rendimiento óptimo y te permite habilitar solo las herramientas que necesitas para casos de uso específicos.

4. ¿Qué pasa si algunas herramientas tienen el mismo nombre en varios servidores? Algunas herramientas comparten el mismo nombre pero tienen implementaciones diferentes. Habilite solo un servidor a la vez para evitar conflictos. El comportamiento de la herramienta está determinado por la variable de entorno MCP_TOOLS_TO_BE_INCLUDED.

5. ¿Cómo actualizo el servidor MCP?

cd /path/to/cow-mcp
git pull origin main
uv pip install .

Luego reinicie su host MCP (Claude Desktop o Goose).

6. ¿Dónde puedo obtener ayuda?