Skip to Content
Nueva versión 12 disponible 🎉

Servidor MCP de Babel Licensing Data Center

El servidor MCP de Babel Licensing es un servidor de Model Context Protocol  (MCP) escrito en Python que expone como herramientas todas las funciones de la API de Babel Licensing. Así, los asistentes de IA como Claude pueden interactuar directamente con su sistema Babel Licensing para la gestión de licencias, las operaciones con clientes, la gestión de productos y mucho más.

¿Qué es MCP?

Model Context Protocol (MCP) es un estándar abierto que permite a los asistentes de IA conectarse de forma segura a sistemas y orígenes de datos externos. Los servidores MCP actúan como puentes entre los modelos de IA y los sistemas de su empresa, y permiten interactuar en lenguaje natural con API, bases de datos y herramientas.

Funciones

  • Cobertura completa de la API: expone como herramientas MCP los más de 90 puntos de acceso de la API de Babel Licensing
  • Configuración con seguridad de tipos: configuración basada en Pydantic con validación automática
  • Autenticación: admite la autenticación con clave API y con token de portador
  • Rotación diaria del registro: registro automático en el directorio logs/ con rotación diaria de archivos
  • Conjunto completo de herramientas: incluye herramientas para:
    • Autenticación y gestión de usuarios
    • Operaciones con licencias (activar, desactivar, validar, solicitar, liberar)
    • Gestión de clientes y contactos
    • Gestión de productos y pedidos
    • Plantillas y tokens de licencia
    • Webhooks y gestión de eventos
    • Informes y registro
    • Notificaciones por correo electrónico
    • Ajustes y configuración del sistema

Requisitos

  • Python 3.10 o posterior
  • Acceso a la API de Babel Licensing (URL base y credenciales)
  • Un cliente compatible con MCP (por ejemplo, Claude Desktop)

Instalación

Inicio rápido

macOS / Linux

  1. Extraiga el archivo comprimido y vaya al directorio:
unzip babel-licensing-mcp-*.zip cd babel-licensing-mcp-*
  1. Ejecute el script de instalación:
chmod +x setup.sh ./setup.sh
  1. Configure su entorno:
# Edit .env file with your Babel Licensing API credentials nano .env

Windows

  1. Extraiga el archivo ZIP y vaya al directorio en PowerShell

  2. Habilite la ejecución de scripts de PowerShell (si es necesario):

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
  1. Ejecute el script de instalación:
.\setup.ps1
  1. Configure su entorno:
# Edit .env file with your Babel Licensing API credentials notepad .env

Instalación manual

Crear un entorno virtual

python3 -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate

Instalar las dependencias

pip install -r requirements.txt

Configurar las variables de entorno

cp .env.example .env # Edit .env with your actual credentials

Configuración

El servidor necesita las siguientes variables de entorno (configuradas en .env):

# Babel Licensing API Base URL BABEL_API_BASE_URL=https://your-babel-licensing-server.com # Authentication - Use ONE of the following: # Option 1: API Key BABEL_API_KEY=your-api-key-here # Option 2: Bearer Token # BABEL_BEARER_TOKEN=your-bearer-token-here # Optional Configuration # BABEL_VERIFY_SSL=true # Set to false for self-signed certificates # BABEL_TIMEOUT=30 # Request timeout in seconds # BABEL_CONTENT_TYPE=application/json # Content type: application/json or application/toon # DEBUG=false # Enable debug logging

Configuración del tipo de contenido

El servidor admite dos tipos de contenido para las solicitudes a la API:

  • application/json (predeterminado): formato JSON estándar
  • application/toon: formato TOON para casos de uso especializados

Para usar el formato TOON, defina la variable de entorno BABEL_CONTENT_TYPE:

BABEL_CONTENT_TYPE=application/toon

El cliente establece automáticamente las cabeceras Content-Type y Accept adecuadas en todas las solicitudes a la API.

Uso

Ejecutar el servidor MCP

Opción 1: usar el comando instalado

babel-licensing-mcp

Opción 2: ejecución directa

python src/server.py

Configuración con clientes de IA

El servidor MCP de Babel Licensing puede usarse con cualquier cliente de IA compatible con MCP, incluidos Claude Desktop y Claude Code.

Configuración con Claude Desktop

Añada lo siguiente a su archivo de configuración de Claude Desktop:

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

{ "mcpServers": { "babel-licensing": { "command": "/absolute/path/to/babel-licensing-mcp/venv/bin/python", "args": [ "/absolute/path/to/babel-licensing-mcp/src/server.py" ], "env": { "BABEL_API_BASE_URL": "https://your-babel-server.com", "BABEL_API_KEY": "your-api-key-here" } } } }

Ejemplo con rutas reales (macOS):

{ "mcpServers": { "babel-licensing": { "command": "/Users/username/Projects/babel-licensing-mcp/venv/bin/python", "args": [ "/Users/username/Projects/babel-licensing-mcp/src/server.py" ], "env": { "BABEL_API_BASE_URL": "https://api.babel-licensing.com", "BABEL_API_KEY": "abc123def456" } } } }

Ejemplo con rutas reales (Windows):

{ "mcpServers": { "babel-licensing": { "command": "C:\\Users\\username\\Projects\\babel-licensing-mcp\\venv\\Scripts\\python.exe", "args": [ "C:\\Users\\username\\Projects\\babel-licensing-mcp\\src\\server.py" ], "env": { "BABEL_API_BASE_URL": "https://api.babel-licensing.com", "BABEL_API_KEY": "abc123def456" } } } }

Nota: sustituya /absolute/path/to/ por la ruta real del directorio de su proyecto. Puede averiguarla ejecutando pwd (macOS/Linux) o cd (Windows) en la carpeta del proyecto.

Alternativa: usar un archivo .env

En lugar de indicar las variables de entorno en la configuración de Claude Desktop, puede crear un archivo .env en la raíz del proyecto:

# Copy the example file cp .env.example .env # Edit with your credentials BABEL_API_BASE_URL=https://your-babel-server.com BABEL_API_KEY=your-api-key-here

A continuación, use una configuración de Claude Desktop más sencilla:

{ "mcpServers": { "babel-licensing": { "command": "/absolute/path/to/babel-licensing-mcp/venv/bin/python", "args": [ "/absolute/path/to/babel-licensing-mcp/src/server.py" ] } } }

Después de la configuración:

  1. Cierre Claude Desktop por completo y vuelva a iniciarlo
  2. Inicie una conversación nueva
  3. Busque el icono de herramientas 🔨, que indica que los servidores MCP están conectados
  4. Pregunte a Claude: «¿A qué herramientas de Babel Licensing tienes acceso?»

Configuración con Claude Code

Claude Code es una extensión de VS Code que ofrece asistencia de IA directamente en su entorno de desarrollo. Para usar el servidor MCP de Babel Licensing con Claude Code:

Paso 1: instalar Claude Code

Instale la extensión Claude Code desde el marketplace de VS Code:

  1. Abra VS Code
  2. Vaya a Extensions, la vista de extensiones (Cmd+Shift+X en macOS, Ctrl+Shift+X en Windows/Linux)
  3. Busque «Claude Code»
  4. Haga clic en Install (instalar)

Paso 2: añadir el servidor MCP a los ajustes

Abra los ajustes de VS Code y añada la configuración del servidor MCP:

Opción A: ajustes del área de trabajo (recomendada para el uso en un proyecto concreto)

Cree o edite .vscode/settings.json en su área de trabajo:

{ "claude.mcpServers": { "babel-licensing": { "command": "/absolute/path/to/babel-licensing-mcp/venv/bin/python", "args": [ "/absolute/path/to/babel-licensing-mcp/src/server.py" ], "env": { "BABEL_API_BASE_URL": "https://licensing.example.com", "BABEL_API_KEY": "your-api-key-here" } } } }

Opción B: ajustes de usuario (para el acceso global desde todas las áreas de trabajo)

  1. Abra Command Palette, la paleta de comandos (Cmd+Shift+P en macOS, Ctrl+Shift+P en Windows/Linux)
  2. Escriba «Preferences: Open User Settings (JSON)»
  3. Añada la configuración claude.mcpServers:
{ "claude.mcpServers": { "babel-licensing": { "command": "/Users/username/Projects/babel-licensing-mcp/venv/bin/python", "args": [ "/Users/username/Projects/babel-licensing-mcp/src/server.py" ], "env": { "BABEL_API_BASE_URL": "https://licensing.example.com", "BABEL_API_KEY": "your-api-key-here" } } } }

Paso 3: usar variables de entorno

Puede hacer referencia a variables de entorno en su configuración:

{ "claude.mcpServers": { "babel-licensing": { "command": "/path/to/babel-licensing-mcp/venv/bin/python", "args": ["/path/to/babel-licensing-mcp/src/server.py"], "env": { "BABEL_API_BASE_URL": "${env:BABEL_URL}", "BABEL_API_KEY": "${env:BABEL_KEY}" } } } }

A continuación, defina las variables de entorno en su shell antes de iniciar VS Code:

# macOS/Linux export BABEL_URL="https://licensing.example.com" export BABEL_KEY="your-api-key-here" code . # Windows PowerShell $env:BABEL_URL = "https://licensing.example.com" $env:BABEL_KEY = "your-api-key-here" code .

Paso 4: usar un archivo .env (el método más sencillo)

Configure el archivo .env del directorio del servidor MCP con sus credenciales y, a continuación, use una configuración mínima:

{ "claude.mcpServers": { "babel-licensing": { "command": "/path/to/babel-licensing-mcp/venv/bin/python", "args": ["/path/to/babel-licensing-mcp/src/server.py"] } } }

El servidor carga automáticamente los ajustes del archivo .env.

Paso 5: ejemplos de rutas por plataforma

macOS:

{ "claude.mcpServers": { "babel-licensing": { "command": "/Users/username/Projects/babel-licensing-mcp/venv/bin/python", "args": [ "/Users/username/Projects/babel-licensing-mcp/src/server.py" ] } } }

Windows:

{ "claude.mcpServers": { "babel-licensing": { "command": "C:\\Users\\username\\Projects\\babel-licensing-mcp\\venv\\Scripts\\python.exe", "args": [ "C:\\Users\\username\\Projects\\babel-licensing-mcp\\src\\server.py" ] } } }

Linux:

{ "claude.mcpServers": { "babel-licensing": { "command": "/home/username/projects/babel-licensing-mcp/venv/bin/python", "args": [ "/home/username/projects/babel-licensing-mcp/src/server.py" ] } } }

Paso 6: usar rutas relativas

Para las configuraciones propias de un área de trabajo, puede usar las variables de VS Code:

{ "claude.mcpServers": { "babel-licensing": { "command": "${workspaceFolder}/../babel-licensing-mcp/venv/bin/python", "args": [ "${workspaceFolder}/../babel-licensing-mcp/src/server.py" ], "cwd": "${workspaceFolder}/../babel-licensing-mcp" } } }

Resulta útil cuando el servidor MCP está en un directorio situado al mismo nivel que su área de trabajo.

Paso 7: comprobar la instalación

Después de la configuración, recargue VS Code para activar el servidor MCP:

  1. Abra Command Palette (Cmd+Shift+P / Ctrl+Shift+P)
  2. Escriba «Developer: Reload Window»
  3. Pulse Enter

Para comprobar que el servidor funciona:

  1. Abra el panel de Claude en VS Code
  2. Inicie una conversación nueva
  3. Pregunte: «¿Qué capacidades de Babel Licensing tienes?»
  4. Claude debería enumerar las 86 herramientas disponibles

Sugerencias de uso de Claude Code:

  1. Peticiones que tienen en cuenta el contexto: Claude Code ve el archivo actual y el área de trabajo, de modo que puede pedirle:

    • «A partir de este código, crea una licencia para este cliente»
    • «Genera una llamada de activación de licencia para el producto de este archivo»
  2. Generación de código: pida a Claude que genere código que use la API de Babel Licensing:

    • «Escribe un método de C# que active una licencia con estos parámetros»
    • «Crea un script de Python que consulte todas las licencias activas»
  3. Asistencia sobre el código: seleccione código y pida a Claude:

    • «Comprueba si esta clave de licencia es válida»
    • «Busca el cliente asociado a esta clave de usuario»
  4. Operaciones con varios archivos: Claude puede ayudar a coordinar las licencias en varios archivos:

    • «Actualiza las claves de licencia en todos los archivos de configuración»
    • «Busca todas las claves de licencia escritas directamente en el código de este proyecto»

Solución de problemas de Claude Code:

Si el servidor MCP no se conecta:

  1. Compruebe el estado de la extensión: asegúrese de que la extensión Claude Code está activada
  2. Verifique la ruta de Python: confirme que la ruta del entorno virtual es correcta
  3. Consulte los registros: vea la salida de Claude Code en el panel Output (salida) de VS Code
  4. Recargue la ventana: use «Developer: Reload Window» después de cambiar la configuración
  5. Compruebe los permisos: asegúrese de que el ejecutable de Python tiene permisos de ejecución

Configuración de varios entornos:

Puede configurar distintos entornos de Babel Licensing:

{ "claude.mcpServers": { "babel-licensing-prod": { "command": "/path/to/venv/bin/python", "args": ["/path/to/src/server.py"], "env": { "BABEL_API_BASE_URL": "https://licensing.production.com", "BABEL_API_KEY": "${env:BABEL_PROD_KEY}" } }, "babel-licensing-dev": { "command": "/path/to/venv/bin/python", "args": ["/path/to/src/server.py"], "env": { "BABEL_API_BASE_URL": "https://licensing.dev.com", "BABEL_API_KEY": "${env:BABEL_DEV_KEY}" } } } }

Así puede alternar entre los entornos de producción y de desarrollo cuando trabaja con Claude.

Registro

El servidor registra automáticamente todas las operaciones en archivos de registro diarios del directorio logs/:

  • Ubicación: logs/babel_licensing_YYYYMMDD.log
  • Formato: entradas con marca de tiempo e información del nivel y del módulo
  • Rotación: se crea automáticamente un archivo nuevo cada día
  • Salida: las entradas se escriben tanto en el archivo como en la consola

Archivo de registro de ejemplo: logs/babel_licensing_20251111.log

2025-11-11 10:30:15 - server - INFO - MCP server starting... 2025-11-11 10:30:16 - server - INFO - Babel Licensing client initialized 2025-11-11 10:31:22 - server - INFO - Tool called: babel_get_customers

Herramientas disponibles

El servidor expone 86 herramientas organizadas en las categorías siguientes:

Nota: la autenticación se gestiona automáticamente mediante la clave API o el token de portador configurados en las variables de entorno. No se necesitan herramientas de inicio de sesión interactivo.

Operaciones con licencias (7 herramientas)

  • babel_activate_license: activa una licencia
  • babel_deactivate_license: desactiva una licencia
  • babel_request_license: solicita una licencia
  • babel_release_license: libera una licencia
  • babel_license_heartbeat: envía la señal de actividad de la licencia
  • babel_validate_license: valida una licencia
  • babel_get_license_info: obtiene la información de la licencia

Gestión

Claves API (4 herramientas)

  • babel_get_api_keys: enumera las claves API
  • babel_insert_api_key: crea una clave API
  • babel_update_api_key: actualiza una clave API
  • babel_delete_api_key: elimina una clave API

Usuarios (7 herramientas)

  • babel_get_users: enumera los usuarios
  • babel_insert_user: crea un usuario
  • babel_update_user: actualiza un usuario
  • babel_delete_user: elimina un usuario
  • babel_get_user_roles: obtiene los roles de un usuario
  • babel_add_user_to_roles: añade un usuario a roles
  • babel_remove_user_from_roles: quita un usuario de roles

Clientes (7 herramientas)

  • babel_get_customers: enumera los clientes
  • babel_insert_customer: crea un cliente
  • babel_update_customer: actualiza un cliente
  • babel_delete_customer: elimina un cliente
  • babel_get_customer_contacts: obtiene los contactos de un cliente
  • babel_get_customer_orders: obtiene los pedidos de un cliente
  • babel_get_customer_licenses: obtiene las licencias de un cliente

Productos (15 herramientas)

  • Gestión de productos (obtener, insertar, actualizar, eliminar)
  • Gestión de las versiones de los productos
  • Gestión de los ensamblados de las versiones
  • Plantillas de licencia de las versiones

Pedidos (9 herramientas)

  • Gestión de pedidos (obtener, insertar, actualizar, eliminar)
  • Gestión de los productos de los pedidos
  • Obtención de las licencias de los pedidos

Licencias (9 herramientas)

  • Gestión de licencias (obtener, insertar, actualizar, eliminar)
  • Gestión de los tokens de licencia
  • Trazas de licencia
  • Plantillas de licencia

Webhooks (9 herramientas)

  • Gestión de las suscripciones de webhook
  • Obtención de los tipos de evento
  • Prueba de webhooks
  • Gestión de eventos

Otras herramientas de gestión

  • Ensamblados (4 herramientas)
  • Contactos (4 herramientas)
  • Recursos (4 herramientas)
  • Informes (3 herramientas)
  • Registro (3 herramientas)
  • Ajustes (2 herramientas)
  • Correo electrónico (2 herramientas)
  • Información del servidor (1 herramienta)

Trabajar con la API

Formato de los datos en las operaciones de inserción y actualización

Cuando se usan herramientas que crean o actualizan recursos (las que empiezan por babel_insert_ o babel_update_), el cliente envuelve automáticamente sus datos en el formato de solicitud que exige la API de Babel Licensing.

Solo tiene que proporcionar los datos en bruto: el envoltorio se aplica automáticamente.

Ejemplos

Crear un cliente nuevo:

// You provide: { "customer_data": { "name": "Acme Corporation", "email": "contact@acme.com" } } // The client automatically wraps it as: { "customer": { "name": "Acme Corporation", "email": "contact@acme.com" } }

Crear un usuario nuevo:

// You provide: { "user_data": { "userName": "johndoe", "email": "john@example.com", "password": "SecureP@ssw0rd" } } // The client automatically wraps it as: { "user": { "userName": "johndoe", "email": "john@example.com" }, "password": "SecureP@ssw0rd" }

Actualizar una licencia:

// You provide: { "license_data": { "id": 123, "revoked": false, "description": "Updated description" } } // The client automatically wraps it as: { "license": { "id": 123, "revoked": false, "description": "Updated description" } }

Parámetros de consulta

Muchos puntos de acceso GET admiten los siguientes parámetros de consulta:

  • select: lista de nombres de campo, separados por comas, que se incluyen en la respuesta
  • filter: criterios de filtrado con sintaxis de .NET (consulte «Sintaxis de los filtros» más abajo)
  • include: lista de objetos relacionados, separados por comas, que se incluyen (consulte «Parámetro include» más abajo)
  • sort: nombre de campo, seguido opcionalmente de «asc» o «desc»
  • take: límite de paginación (tamaño de página)
  • skip: desplazamiento de paginación

Parámetro include

El parámetro include permite obtener objetos relacionados en una sola solicitud.

Reglas IMPORTANTES:

  1. Use nombres en PascalCase (con mayúscula inicial): Customer, Order, Product (NO customer, order, product)
  2. Es OBLIGATORIO añadir a select los objetos incluidos: indíquelos en los dos parámetros
  3. Varios objetos: sepárelos con comas y sin espacios

Ejemplos:

// Correct - Get licenses with customer and order objects { "params": { "select": "id,licenseId,licenseType,createdAt,customerId,orderId,Customer,Order", //  Include Customer,Order here "include": "Customer,Order" //  PascalCase, no spaces } } // Wrong - lowercase names { "params": { "select": "id,licenseId,customer,order", // L Lowercase "include": "customer,order" // L Will fail } } // Wrong - missing from select { "params": { "select": "id,licenseId,licenseType", // L Missing Customer,Order "include": "Customer,Order" // Objects won't be returned! } }

Opciones de include disponibles:

  • babel_get_licenses: Product, Order, Customer, Template, Licensee
  • babel_get_customers: Contacts, Orders, Licenses
  • babel_get_orders: Customer, Reseller, Products, Licenses
  • babel_get_products: Releases, Orders
  • babel_get_users: Roles, Settings, Customer
  • babel_get_api_keys: Owner
  • babel_get_all_license_tokens: License, NodeLockedLicense
  • babel_get_license_templates: Product

Sintaxis de los filtros

La API usa la sintaxis de filtros de .NET, NO el estándar OData.

Operadores de comparación:

OperadorDescripciónEjemplo
>=Mayor o igual quecreatedAt >= "2025-11-11T00:00:00"
<=Menor o igual queexpireDate <= "2025-12-31T23:59:59"
>Mayor queid > 100
<Menor queid < 1000
==Igual arevoked == false
!=Distinto destatus != "expired"

Operadores lógicos:

OperadorDescripciónEjemplo
&&AND lógicorevoked == false && expireDate >= "2025-01-01"
||OR lógicostatus == "active" || status == "trial"
!Negación (NOT)!revoked o !licenseType.Contains("Trial")

Funciones de cadena:

FunciónDescripciónEjemplo
Contains()Comprueba si la cadena contiene una subcadenalicenseType.Contains("Ultimate")
StartsWith()Comprueba si la cadena empieza por una subcadenauserKey.StartsWith("ABC")
EndsWith()Comprueba si la cadena termina en una subcadenalicenseeEmail.EndsWith("@example.com")

Ejemplos de filtros complejos:

# Active licenses of Ultimate type created after Nov 11 revoked == false && licenseType.Contains("Ultimate") && createdAt >= "2025-11-11T00:00:00" # Exclude Enterprise licenses !licenseType.Contains("Enterprise") # User keys starting with ABC or XYZ userKey.StartsWith("ABC") || userKey.StartsWith("XYZ") # Expired licenses excluding trial expireDate < "2025-01-01T00:00:00" && !licenseType.Contains("Trial")

IMPORTANTE: NO use la sintaxis de OData (eq, ne, gt, lt, and, or). Estos operadores no funcionan.

Parámetro sort:

El parámetro sort acepta:

  • Nombre de campo con dirección: createdAt desc (descendente)
  • Nombre de campo con dirección: createdAt asc (ascendente)
  • Solo el nombre de campo: createdAt (ascendente de forma predeterminada)

Ejemplo completo:

{ "params": { "filter": "revoked == false && licenseType.Contains(\"Ultimate\") && expireDate >= \"2025-01-01T00:00:00\"", "select": "id,licenseId,userKey,expireDate,licenseType", "take": 10, "skip": 0, "sort": "createdAt desc" } }

Ejemplos

Activar una licencia

Pida a Claude:

«Activa una licencia con la clave de usuario ABC-123-DEF, el código de producto PROD001 y el ID de hardware HW-12345»

Claude usará la herramienta babel_activate_license:

{ "tool": "babel_activate_license", "arguments": { "license_data": { "userKey": "ABC-123-DEF", "productCode": "PROD001", "hardwareId": "HW-12345" } } }

Obtener clientes

Pida a Claude:

«Muéstrame los 10 primeros clientes distribuidores, ordenados por nombre de empresa»

Claude usará la herramienta babel_get_customers:

{ "tool": "babel_get_customers", "arguments": { "params": { "filter": "isReseller == true", "take": 10, "sort": "company asc" } } }

Crear una suscripción de webhook

Pida a Claude:

«Crea una suscripción de webhook para los eventos de activación y desactivación de licencias que apunte a https://example.com/webhook» 

Claude usará la herramienta babel_create_webhook_subscription:

{ "tool": "babel_create_webhook_subscription", "arguments": { "subscription_data": { "url": "https://example.com/webhook", "events": ["license.activated", "license.deactivated"], "isActive": true } } }

Ejemplo de consulta compleja

Pida a Claude:

«Muéstrame todas las licencias Ultimate creadas después del 11 de noviembre de 2025 que no estén revocadas, con los datos del cliente y del pedido, ordenadas por fecha de creación»

Claude construirá una consulta como esta:

{ "tool": "babel_get_licenses", "arguments": { "params": { "filter": "revoked == false && licenseType.Contains(\"Ultimate\") && createdAt >= \"2025-11-11T00:00:00\"", "select": "id,licenseId,userKey,expireDate,licenseType,createdAt,Customer,Order", "include": "Customer,Order", "sort": "createdAt desc" } } }

Solución de problemas

Problemas de conexión

  1. Compruebe que su BABEL_API_BASE_URL es correcta
  2. Asegúrese de que su clave API o su token de portador son válidos
  3. Compruebe la conectividad de red con el servidor de Babel Licensing
  4. Consulte los registros del servidor en el directorio logs/ para ver mensajes de error detallados

Problemas con el certificado SSL

Si aparecen errores de verificación del certificado SSL (sobre todo con certificados autofirmados):

  1. Defina BABEL_VERIFY_SSL=false en su archivo .env o en la configuración del entorno
  2. En Claude Desktop, añádalo a la sección env:
    { "mcpServers": { "babel-licensing": { "command": "/path/to/venv/bin/python", "args": ["/path/to/src/server.py"], "env": { "BABEL_API_BASE_URL": "https://your-server.com", "BABEL_API_KEY": "your-key", "BABEL_VERIFY_SSL": "false" } } } }

Nota de seguridad: desactive la verificación SSL solo en servidores internos de confianza con certificados autofirmados. No la desactive nunca en sistemas de producción ni en API públicas.

Errores de autenticación

  1. Asegúrese de usar UN solo método de autenticación (clave API O token de portador)
  2. Compruebe que sus credenciales no han vencido
  3. Compruebe que su clave API tiene los permisos necesarios

Errores de ejecución de herramientas

  1. Revise el esquema de entrada de la herramienta que está usando
  2. Asegúrese de proporcionar todos los parámetros obligatorios
  3. Compruebe que los tipos de los parámetros coinciden con el esquema
  4. Revise la respuesta de la API para ver los mensajes de error concretos

Saturación de tokens con babel_get_logs

La herramienta babel_get_logs puede devolver cantidades de datos muy grandes, sobre todo si se incluyen los campos exception y properties. Esto puede saturar los tokens de IA disponibles en la conversación.

Pautas para la selección de campos:

  • exception y properties: pueden contener cantidades de datos muy grandes; evítelos cuando solicite muchas entradas
  • messageTemplate: no es estrictamente necesario, porque solo contiene la plantilla de formato; el contenido informativo está en message
  • Campos recomendados: id, message, level, timeStamp

Prácticas recomendadas:

  1. Limite los campos de select: evite incluir exception, properties y messageTemplate salvo que los necesite expresamente

    # Good - excludes large/unnecessary fields { "params": { "select": "id,message,level,timeStamp", "take": 50 } } # Risky - includes large fields { "params": { "select": "id,message,level,timeStamp,exception,properties", "take": 50 # May saturate tokens } }
  2. Use la paginación con criterio: cuando incluya exception o properties, use valores de take pequeños (de 10 a 20 entradas como máximo)

  3. Filtre antes de obtener los datos: use el parámetro filter para reducir el número de entradas antes de recuperarlas

Documentación de la API

Para obtener información detallada sobre los puntos de acceso, los parámetros y las respuestas de la API de Babel Licensing, consulte el archivo de especificación OpenAPI babel-licensing-api.json incluido en el paquete del servidor MCP.

Soporte

Si tiene problemas o preguntas, escriba a: support@babelfor.net

Recursos

Historial de versiones

  • 0.1.0 (versión inicial)
    • Implementación completa de todos los puntos de acceso de la API de Babel Licensing
    • Compatibilidad con la autenticación, las operaciones con licencias y las funciones de gestión
    • Conjunto de pruebas completo
    • Documentación completa
Last updated on