Skip to main content
Glama
Commvault

Commvault MCP Server

by Commvault

Servidor MCP de Commvault

Estado Python 3.11+ Licencia

Un servidor de Protocolo de Contexto de Modelo (MCP) para una integración fluida con entornos de Commvault. Este servidor permite a los agentes de IA acceder y gestionar de forma segura los detalles de los trabajos, las métricas de Commcell, la información de clientes y almacenamiento, los permisos de usuario, las configuraciones de planes y las programaciones de copias de seguridad.

Características

El servidor MCP de Commvault permite una integración fluida con entornos de Commvault, ofreciendo lo siguiente:

Categoría

Características

Gestión de trabajos

• Ver detalles e historial de trabajos

• Controlar trabajos (suspender, reanudar, reenviar, finalizar)

• Supervisar el estado y el rendimiento de los trabajos

Gestión de Commcell

• Recuperar el estado y el cumplimiento de SLA

• Ver la postura y las puntuaciones de seguridad

• Acceder a métricas de utilización de espacio de almacenamiento

• Obtener detalles de Commcell y recuentos de entidades

Gestión de clientes

• Acceder a grupos de clientes e información de clientes

• Gestionar subclientes y propiedades de clientes

• Ver asociaciones de clientes

Gestión de almacenamiento

• Ver políticas y configuraciones de almacenamiento

• Acceder a información de grupos de almacenamiento

• Supervisar recursos de almacenamiento

Gestión de usuarios

• Listar usuarios y grupos de usuarios

• Acceder a asociaciones de seguridad

Gestión de planes

• Ver configuraciones y detalles de planes

• Acceder a componentes y ajustes de planes

Gestión de programaciones

• Acceder a programaciones de copias de seguridad

• Ver configuraciones de programaciones

• Supervisar el rendimiento de las programaciones

Integración con DocuSign

• Configurar el almacén y flujo de trabajo de DocuSign

• Realizar copias de seguridad de sobres en el almacén S3 de Commvault

• Listar y restaurar copias de seguridad de sobres de DocuSign

Integración con Salesforce

• Resolver el ID de organización de Salesforce a un cliente de Commvault

• Explorar registros de objetos de Salesforce respaldados desde la última instantánea

• Filtrar registros con consultas opcionales de cláusula WHERE

• Acceso paginado a grandes conjuntos de registros

Requisitos previos

Antes de ejecutar el servidor MCP de Commvault, asegúrese de cumplir con los siguientes requisitos:

1. Entorno de Python

  • Python 3.11 o superior

  • Gestor de paquetes uv (utilizado para la gestión de dependencias y la ejecución del servidor)

2. Configuración de autenticación y seguridad

El servidor MCP de Commvault admite dos métodos de autenticación:

Nota: La autenticación OAuth solo es compatible con entornos de Commvault que ejecuten SP42 CU 27 o superior. OAuth debe estar configurado correctamente en CommServe antes de usar esta opción.

Al utilizar la autenticación OAuth, necesitará:

  • URL del punto final de descubrimiento: El punto final de descubrimiento/metadatos de OAuth

  • ID de cliente: El identificador de cliente de su aplicación OAuth

  • Secreto de cliente: El secreto de cliente de su aplicación OAuth

  • Ámbitos requeridos: Ámbitos de OAuth requeridos

  • URL base: URL base del servidor MCP

Importante: El URI de redirección debe establecerse en OAUTH_BASE_URL/auth/callback en la configuración de la aplicación/cliente de su proveedor de OAuth.

Los siguientes valores se recopilarán durante el proceso de configuración:

  • Credenciales de acceso a Commvault: Necesita un access_token y un refresh_token válidos para autenticarse con la API de Commvault. Aprenda a generar estos tokens aquí: Creación de un token de acceso – Documentación de Commvault

  • Clave secreta: Este secreto debe ser incluido por el cliente MCP en el encabezado Authorization de todas las solicitudes de herramientas. Actúa como una capa de seguridad para el acceso a herramientas en un servidor remoto. Puede establecer la suya propia.

Importante: Al utilizar la autenticación tradicional basada en tokens, el script de configuración requiere un backend de llavero nativo del sistema operativo seguro para almacenar las credenciales confidenciales de forma segura. Solo se permiten backends seguros por razones de seguridad.

Backends seguros admitidos por plataforma

Plataforma

Backends admitidos

Descripción

Windows

WinVaultKeyring, WinCredentialStore

Utiliza el Administrador de credenciales de Windows (Windows Vault) para almacenamiento seguro

macOS

macOS Keyring

Utiliza el llavero nativo de macOS para almacenamiento seguro

Linux

SecretService (GNOME), KWallet (KDE)

Utiliza la API de Freedesktop Secret Service (GNOME) o KWallet (KDE) para almacenamiento seguro

Configuración

1. Clonar el repositorio

git clone https://github.com/Commvault/commvault-mcp-server.git
cd commvault-mcp-server

2. Ejecutar el script de configuración

El script de configuración le guiará a través de las opciones de configuración, incluyendo:

  • Modo de transporte (stdio, streamable-http o sse)

  • Detalles de conexión del servidor (para modos remotos)

  • Método de autenticación (tokens tradicionales u OAuth)

  • Configuración de OAuth (si se selecciona)

  • Almacenamiento seguro de tokens

uv run setup.py

3. Iniciar el servidor MCP

uv run -m src.server

Para despliegues de producción, se recomienda utilizar un proxy inverso con TLS/HTTPS y encabezados de seguridad. El servidor MCP debe vincularse a 127.0.0.1 (solo localhost) para evitar el acceso público directo.

Configuración rápida

  1. Configurar el servidor MCP para localhost: Establezca MCP_HOST=127.0.0.1 en su archivo .env

  2. Instalar proxy inverso: Elija nginx o Caddy

  3. Configurar TLS: Utilice Let's Encrypt para la gestión automática de certificados

  4. Añadir encabezados de seguridad: Configure los encabezados recomendados por OWASP (HSTS, X-Frame-Options, CSP, etc.)

  5. Actualizar configuración del cliente: Utilice https://your-domain.com/mcp en lugar de http://HOST:PORT/mcp

Configuración de clientes

Nota: Se requiere npx al utilizar la autenticación basada en tokens. Puede obtenerlo instalando Node.js, que incluye npx de forma predeterminada.

Consulte la documentación de su cliente de IA para conocer los pasos de integración. Por ejemplo, Claude requiere especificar un nombre de servidor y la URL del servidor MCP en su configuración de conector.

{
  "mcpServers": {
    "Commvault": {
      "command": "npx",
      "args": ["mcp-remote", "HOST:PORT/mcp", "--header", "Authorization: <secret stored in server keyring>"]
    }
  }
}
{
  "mcpServers": {
    "Commvault": {
      "command": "cmd",
      "args": ["/c", "npx", "mcp-remote", "HOST:PORT/mcp", "--header", "Authorization: <secret stored in server keyring>"]
    }
  }
}
{
  "mcpServers": {
    "Commvault": {
      "command": "npx",
      "args": ["mcp-remote", "HOST:PORT/mcp", "--header", "Authorization: <secret stored in server keyring>", "--allow-http"]
    }
  }
}
{
  "mcpServers": {
    "Commvault": {
      "command": "C:\\YOUR\\PATH\\TO\\commvault-mcp-server\\.venv\\bin\\python",
      "args": [
        "C:\\YOUR\\PATH\\TO\\commvault-mcp-server\\src\\server.py"
      ]
    }
  }
}

{
  "mcpServers": {
    "Commvault": {
      "command": "C:\\YOUR\\PATH\\TO\\commvault-mcp-server\\.venv\\Scripts\\python.exe",
      "args": [
        "C:\\YOUR\\PATH\\TO\\commvault-mcp-server\\src\\server.py"
      ]
    }
  }
}

Configuración adicional

Nota: Estas son configuraciones opcionales que amplían las capacidades del servidor MCP.

Cuando se despliegue detrás de un proxy inverso o balanceador de carga, configure la variable de entorno TRUSTED_PROXY_IPS con direcciones IP de proxy separadas por comas para habilitar la limitación de tasa por cliente utilizando el encabezado X-Forwarded-For. Por ejemplo:

export TRUSTED_PROXY_IPS="10.0.0.1,10.0.0.2,192.168.1.100"

La integración de Salesforce permite explorar registros de Salesforce respaldados almacenados en Commvault. Proporciona dos herramientas:

Herramienta

Descripción

get_salesforce_client

Resuelve un ID de organización de Salesforce (15 o 18 caracteres) al clientId de Commvault correspondiente

get_salesforce_records

Obtiene registros respaldados para un objeto de Salesforce (p. ej., Account, Contact, Opportunity) desde la última instantánea de copia de seguridad

Requisitos previos

  1. Variable de entorno: Establezca ENABLE_SALESFORCE_TOOLS=true en su entorno

  2. Copia de seguridad de Salesforce en Commvault: Al menos una organización de Salesforce debe estar configurada y respaldada en Commvault

Ejemplo de uso

Para explorar registros de Account respaldados para una organización de Salesforce:

Get all backed-up Account records for Salesforce org 00D2w000005mBCpEAM

La herramienta resolverá automáticamente el ID de la organización a un cliente de Commvault y devolverá los últimos registros respaldados.

Parámetros para get_salesforce_records

Parámetro

Requerido

Descripción

salesforce_org_id

ID de organización de Salesforce (15 o 18 caracteres)

object_name

Nombre del objeto de la API de Salesforce (p. ej., Account, Contact)

limit

No

Máximo de registros a devolver (predeterminado 50, máximo 1000)

offset

No

Desplazamiento de paginación (predeterminado 0)

free_query

No

Filtro de cláusula WHERE opcional (p. ej., "Name = 'Acme'")

La integración de copia de seguridad de DocuSign permite realizar copias de seguridad de sobres de DocuSign completados en un almacén S3 de Commvault. Esta integración proporciona capacidades integrales de gestión de documentos, incluyendo operaciones de copia de seguridad, listado y restauración.

Requisitos previos

  1. Variable de entorno: Establezca ENABLE_DOCUSIGN_TOOLS=true en su entorno

  2. Almacén S3 de Commvault: Configure un punto final S3 en Commvault

  3. Acceso a la API de DocuSign: Credenciales de integración de DocuSign válidas

Archivos de configuración

Cree los siguientes archivos en el directorio config/:

1. Configuración de DocuSign (docusign_config.json)

Basado en el archivo de plantilla config/docusign_config_template.json:

{
  "docusign": {
    "integrationKey": "YOUR_INTEGRATION_KEY_HERE",
    "userId": "YOUR_USER_ID_HERE", 
    "authServer": "account-d.docusign.com",
    "scopes": "signature impersonation",
    "basePath": "https://demo.docusign.net/restapi"
  },
  "fromDate": "2024-07-01T00:00:00Z"
}

2. Clave privada de DocuSign (docusign_key.pem)

Coloque su archivo de clave privada de DocuSign en el directorio config/ como docusign_key.pem.

Contribución

  • Seguimos añadiendo más funcionalidades a este servidor MCP. Si desea dejar comentarios, informar de un error o solicitar una función, abra un issue en este repositorio.

  • ¡Las solicitudes de extracción (pull requests) son bienvenidas! Para cambios importantes, abra primero un issue para discutir lo que desea cambiar.

Licencia

Este proyecto está bajo la Licencia Apache. Consulte el archivo LICENSE para obtener más detalles.

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Commvault/commvault-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server