Wazuh MCP Server

Operaciones de seguridad impulsadas por IA con Wazuh SIEM + Claude Desktop. Detección de amenazas en lenguaje natural, respuesta automatizada a incidentes y cumplimiento normativo.

Documentación

Servidor MCP de Wazuh

Un servidor de Protocolo de Contexto de Modelo (MCP) para el SIEM de Wazuh.

Permite que un cliente MCP — Claude, Open WebUI respaldado por un modelo local, o cualquier cliente que hable Streamable HTTP — consulte alertas, agentes, vulnerabilidades y datos de cumplimiento, y envíe respuestas activas, con control de acceso basado en alcances y registro de auditoría.

CI Security Audit Release License: MIT

Python 3.11+ MCP 2026-07-28 Wazuh 4.8.0–4.14.7 GHCR image

Inicio rápido · Clientes · Herramientas · Seguridad · Configuración · Documentación · Registro de cambios · Actualización


Descripción general

  • 55 herramientas en 8 conjuntos de herramientas: alertas, agentes, vulnerabilidades, análisis de amenazas, cumplimiento (PCI-DSS, HIPAA, SOX, GDPR, NIST, ISO 27001:2022), salud del administrador/clúster, y respuesta activa con verificación y reversión. También 5 indicaciones guiadas, 6 recursos y 3 plantillas de recursos.
  • Solo lectura por defecto. Las 14 herramientas que cambian estado requieren el alcance wazuh:write, que nunca se otorga implícitamente.
  • Transporte MCP: Streamable HTTP en /mcp. Sirve la revisión de protocolo 2026-07-28 (solicitudes sin estado) y el protocolo de enlace initialize para 2025-11-25, 2025-06-18, 2025-03-26 y 2024-11-05. El endpoint heredado HTTP+SSE /sse devuelve 410 Gone.
  • Autenticación: tokens de portador emitidos desde una clave API; OAuth 2.0 (código de autorización + PKCE) con inicio de sesión mediante clave API o en un proveedor OpenID Connect (Entra ID, Google Workspace, Okta, Keycloak); o sin autenticación para desarrollo local.
  • Despliegue: Docker Compose o una imagen multiarquitectura publicada; Redis opcional para sesiones multiinstancia; enrutamiento multiclúster opcional.
  • Modelos locales: una pila vLLM + Open WebUI (compose.local-llm.yml) y filtrado de conjuntos de herramientas para modelos pequeños. La única herramienta que llama a un servicio fuera de su despliegue de Wazuh es la opcional search_external_context (You.com), que se puede deshabilitar por sí sola.

Versiones de Wazuh compatibles: 4.8.0 hasta 4.14.7. Las herramientas de alertas, vulnerabilidades y cumplimiento respaldadas por alertas necesitan el Wazuh Indexer. Consulte WAZUH_COMPATIBILITY.md.


Inicio rápido

Requiere Docker con Compose v2 y un usuario de la API del Wazuh Manager.

git clone https://github.com/gensecaihq/Wazuh-MCP-Server.git
cd Wazuh-MCP-Server
cp .env.example .env

Establezca la conexión de Wazuh en .env:

WAZUH_HOST=your-wazuh-manager
WAZUH_USER=your-api-user
WAZUH_PASS=your-api-password

# Needed for alert, vulnerability and alert-backed compliance tools
WAZUH_INDEXER_HOST=your-wazuh-indexer
WAZUH_INDEXER_USER=your-indexer-user
WAZUH_INDEXER_PASS=your-indexer-password

El certificado TLS del Manager se verifica. Una instalación estándar de Wazuh usa un certificado API autofirmado que no puede pasar la verificación, así que o bien lo reemite para su host y establece WAZUH_CA_BUNDLE, o, para una primera prueba, agregue WAZUH_ALLOW_SELF_SIGNED=true (se conecta sin verificación; se registra al inicio). Detalles: TLS del Manager.

Genere el secreto de firma y una clave API. compose.yml ejecuta el servidor con ENVIRONMENT=production, que se niega a iniciar sin AUTH_SECRET_KEY:

echo "AUTH_SECRET_KEY=$(openssl rand -hex 32)" >> .env
echo "MCP_API_KEY=wazuh_$(openssl rand -base64 32 | tr '+/' '-_' | tr -d '=')" >> .env

Inicie el servidor y verifíquelo:

docker compose up -d
curl http://localhost:3000/health     # liveness
curl http://localhost:3000/ready      # checks Manager/Indexer reachability

Intercambie la clave API por un token de portador (válido por TOKEN_LIFETIME_HOURS, por defecto 24):

curl -s -X POST http://localhost:3000/auth/token -H 'Content-Type: application/json' \
  -d "{\"api_key\": \"$(grep ^MCP_API_KEY= .env | cut -d= -f2)\"}"

La clave es de solo lectura. Para permitir herramientas de respuesta activa, agregue MCP_API_KEY_SCOPES="wazuh:read wazuh:write" a .env, recree el contenedor con docker compose up -d (restart conserva el entorno anterior) y emita un nuevo token.

Compose publica el puerto solo en 127.0.0.1. El servidor habla HTTP simple; coloque un proxy inverso con terminación TLS al frente antes de exponerlo (establezca MCP_BIND para cambiar la dirección de enlace del host).

python3 deploy.py (o deploy.bat en Windows) realiza los mismos pasos, generando AUTH_SECRET_KEY y MCP_API_KEY si faltan.

Imagen precompilada

Las imágenes multiarquitectura (amd64, arm64) se publican en GitHub Container Registry y se pueden extraer sin iniciar sesión:

docker pull ghcr.io/gensecaihq/wazuh-mcp-server:latest   # tracks main
docker pull ghcr.io/gensecaihq/wazuh-mcp-server:5.0.0    # latest tagged release

latest se compila desde main y puede incluir cambios enumerados bajo Unreleased en el registro de cambios. Las imágenes de lanzamiento están etiquetadas 5.0.0, 5.0 y v5.0.0 (4.3.0 y anteriores no tienen etiqueta con prefijo v). Actualización desde 4.x: lea UPGRADING.md primero.

docker run -d --name wazuh-mcp-server --env-file .env -e MCP_HOST=0.0.0.0 -e ENVIRONMENT=production \
  -p 127.0.0.1:3000:3000 ghcr.io/gensecaihq/wazuh-mcp-server:latest

MCP_HOST=0.0.0.0 es necesario dentro de un contenedor porque .env.example establece MCP_HOST=127.0.0.1 para instalaciones en metal desnudo. -e tiene prioridad sobre --env-file, por lo que ENVIRONMENT=production se mantiene incluso si su .env establece otro valor.


Conexión de clientes

Todos los clientes usan el endpoint Streamable HTTP https://<your-host>/mcp.

ClienteModo de autenticaciónCómo se autentica
Conectores personalizados de Claude (claude.ai, Claude Desktop)oauthCódigo de autorización OAuth con PKCE. El servidor pre-registra un cliente público, claude-desktop, para las URL de devolución de llamada de Claude. Los usuarios inician sesión en la página /oauth/authorize del servidor con una clave API wazuh_ (la concesión está limitada a los alcances de esa clave), o en su proveedor OpenID Connect cuando OAUTH_IDP_ISSUER está establecido.
Open WebUI, LibreChat, scripts y otros clientes MCPbearer (por defecto)Authorization: Bearer <token> usando un token de POST /auth/token.

En modo OAuth, establezca OAUTH_ISSUER_URL a la URL HTTPS pública del servidor (de lo contrario, se deriva de cada solicitud, que detrás de un proxy puede no ser la URL pública). El Registro Dinámico de Clientes (/oauth/register) está desactivado a menos que OAUTH_ENABLE_DCR=true, y no se puede combinar con OAUTH_IDP_ISSUER.

Guías: Integración con Claude · LLMs locales


LLMs locales

El servidor no llama a un modelo; solo ejecuta herramientas. Para mantener los datos del SIEM en las instalaciones, combínelo con un modelo local:

cat >> .env <<EOF
VLLM_API_KEY=$(openssl rand -hex 32)
WEBUI_SECRET_KEY=$(openssl rand -hex 32)
EOF
docker compose -f compose.yml -f compose.local-llm.yml up -d

Esto agrega vLLM (modelo por defecto Qwen3.6-35B-A3B FP8, aproximadamente 42 GB de VRAM en una GPU NVIDIA; no publicado en un puerto del host) y Open WebUI en 127.0.0.1:8080. En la configuración de administrador de Open WebUI, agregue un servidor de herramientas MCP (Streamable HTTP) en http://wazuh-main-server:3000/mcp con un token de portador.

Para modelos más pequeños, exponga menos herramientas con WAZUH_TOOLSETS / WAZUH_DISABLED_TOOLS, y verifique la selección de herramientas antes del despliegue con evals/tool_selection.py (25 escenarios de SOC, incluidos dos casos de inyección de indicaciones, contra cualquier endpoint compatible con OpenAI; no se ejecutan herramientas). El dimensionamiento de modelos, Ollama y LiteLLM se cubren en la Guía de LLM local.


Herramientas

55 herramientas, agrupadas en conjuntos que se pueden habilitar con WAZUH_TOOLSETS (separadas por comas; por defecto todas). R = wazuh:read, W = wazuh:write.

Conjunto de herramientasCantidadHerramientas
alerts5 Rget_wazuh_alerts, get_wazuh_alert_summary, get_alerts_aggregated, analyze_alert_patterns, search_security_events
agents6 Rget_wazuh_agents, get_wazuh_running_agents, check_agent_health, get_agent_processes, get_agent_ports, get_agent_configuration
vulnerabilities3 Rget_wazuh_vulnerabilities, get_wazuh_critical_vulnerabilities, get_wazuh_vulnerability_summary
analysis5 Ranalyze_security_threat, check_ioc_reputation, perform_risk_assessment, get_top_security_threats, generate_security_report
web_search1 Rsearch_external_context — búsqueda web de You.com; devuelve un resultado "no habilitado" a menos que YDC_API_KEY esté establecido
compliance6 Rrun_compliance_check (PCI-DSS, HIPAA, SOX, GDPR, NIST, ISO27001), get_iso27001_dashboard, get_iso27001_control_detail, get_iso27001_gap_analysis, get_iso27001_alerts, get_sca_policy_checks
system10 Rget_wazuh_statistics, get_wazuh_weekly_stats, get_wazuh_cluster_health, get_wazuh_cluster_nodes, get_wazuh_rules_summary, get_wazuh_remoted_stats, get_wazuh_log_collector_stats, search_wazuh_manager_logs, get_wazuh_manager_error_logs, validate_wazuh_connection
response — contención9 Wwazuh_block_ip, wazuh_isolate_host, wazuh_kill_process, wazuh_disable_user, wazuh_quarantine_file, wazuh_firewall_drop, wazuh_host_deny, wazuh_active_response, wazuh_restart
response — reversión5 Wwazuh_unisolate_host, wazuh_enable_user, wazuh_restore_file, wazuh_firewall_allow, wazuh_host_allow
response — verificación5 Rwazuh_check_blocked_ip, wazuh_check_agent_isolation, wazuh_check_process, wazuh_check_user_status, wazuh_check_file_quarantine
  • Totales: 41 herramientas de lectura, 14 herramientas de escritura. Los tokens sin wazuh:write no ven las herramientas de escritura en tools/list.
  • En modo multiclúster, se agrega una 56.ª herramienta, list_wazuh_clusters (system, lectura), y cada herramienta acepta un cluster_id opcional.
  • WAZUH_DISABLED_TOOLS oculta herramientas individuales. Las herramientas ocultas se eliminan de tools/list y son rechazadas por tools/call; los nombres de conjuntos o herramientas desconocidos detienen el servidor al inicio.
  • Cada herramienta lleva anotaciones MCP derivadas de su alcance: las herramientas de lectura son readOnlyHint: true; las herramientas de contención son destructiveHint: true; las herramientas de reversión son destructiveHint: false; solo search_external_context es openWorldHint: true.
  • Los esquemas de entrada están cerrados (additionalProperties: false); los argumentos no declarados son rechazados.
  • Los filtros de marca de tiempo aceptan ISO 8601 o matemática de fechas de OpenSearch (now-24h).
  • Indicaciones: security_investigation, threat_hunt, compliance_audit, vulnerability_assessment, iso27001_assessment.

Parámetros por herramienta: documentación de la API.

Comportamiento de la respuesta activa

  • Los resultados informan execution_status: "dispatched": Wazuh confirma que el comando se entregó al agente, no que se ejecutó. Confirme el efecto con la herramienta wazuh_check_* correspondiente.
  • Los bloqueos son permanentes hasta que se eliminan. Wazuh ignora el tiempo de espera para comandos activados por API, por lo que un duration positivo es rechazado.
  • wazuh_firewall_allow y wazuh_host_allow requieren un comando de deshacer implementado por el operador (WAZUH_AR_FIREWALL_UNDO_COMMAND, WAZUH_AR_HOSTDENY_UNDO_COMMAND); sin uno, se niegan.

Modelo de seguridad

ControlComportamiento
Scopes (RBAC)Cada herramienta requiere wazuh:read o wazuh:write. Un token sin una declaración de scope es de solo lectura. MCP_API_KEY es de solo lectura a menos que MCP_API_KEY_SCOPES incluya wazuh:write. Con AUTH_MODE=none, las herramientas de escritura están deshabilitadas a menos que AUTHLESS_ALLOW_WRITE=true.
Tokens BearerJWTs firmados con AUTH_SECRET_KEY, deben llevar exp, y están vinculados a la clave API de la que fueron emitidos: revocar o rotar la clave invalida sus tokens. Los tokens de actualización no se aceptan como tokens de acceso.
OAuthFlujo de código de autorización con PKCE S256 obligatorio, códigos de un solo uso, rotación de tokens de actualización con detección de reproducción y revocación. Los usuarios inician sesión con una clave API de wazuh_ (la concesión está limitada a los scopes de esa clave, y sus tokens terminan cuando la clave se revoca) o en un proveedor OpenID Connect (firma del token ID, emisor, audiencia, caducidad y nonce verificados; listas de permitidos de tenant, dominio y usuario; mapeo de grupo a scope), por lo que los scopes, límites de tasa y entradas de auditoría son por usuario.
Guardarraíles de accionesLas herramientas de bloqueo de IP rechazan loopback, la dirección del Manager (cuando WAZUH_HOST es una IP) y cualquier cosa en WAZUH_PROTECTED_IPS; la herramienta genérica de respuesta activa no despacha bloqueos de IP, cuarentenas, terminaciones de procesos ni deshabilitaciones de cuentas. Las acciones y reinicios dirigidos al agente 000 (el Manager) requieren WAZUH_ALLOW_MANAGER_AR=true; los bloqueos de toda la flota requieren WAZUH_ALLOW_FLEET_AR=true; la cuarentena rechaza directorios de sistema y de agentes. En producción, las herramientas de escritura requieren confirm=true (WAZUH_REQUIRE_ACTION_CONFIRMATION).
Wazuh TLSLos certificados del Manager y del Indexer se verifican por defecto, contra el almacén del sistema o WAZUH_CA_BUNDLE. Deshabilitar la verificación del Manager (WAZUH_ALLOW_SELF_SIGNED=true) se registra al inicio, como un error en producción.
Registro de auditoríaCada llamada a una herramienta de escritura que supera las comprobaciones de scope y confirmación se registra antes y después de la ejecución (logger wazuh_mcp_server.audit) con el principal, la sesión, los argumentos y el resultado.
RedacciónLas credenciales y los tokens se redactan de la salida de las herramientas en todos los formatos de respuesta, y de los registros del servidor.
Validación de entradaValidación tipada de IDs de agente, IPs, rutas y nombres de comandos; las consultas al Indexer se construyen como Query DSL, no mediante interpolación de cadenas.
Límite de tasaVentana deslizante, por defecto 100 solicitudes por 60 s (RATE_LIMIT_REQUESTS, RATE_LIMIT_WINDOW): por principal y IP de cliente en /mcp y /, por IP de cliente en otros endpoints excepto los endpoints de sonda (/health, /ready, /metrics y sus alias /healthz, /readyz, /live, /livez). La autenticación fallida tiene límite de tasa por IP de cliente. Establezca TRUSTED_PROXIES cuando se ejecute detrás de un proxy.
Límites de recursosDisyuntor en llamadas a Wazuh: se abre después de 5 fallos consecutivos, reintenta después de 60 s. Los resultados de herramientas sobredimensionados se truncan con una nota (MAX_TOOL_RESPONSE_CHARS). limit en get_wazuh_alerts y search_security_events está limitado a MAX_ALERTS_PER_QUERY (por defecto 1000). El almacén de sesiones en memoria está limitado a MAX_SESSIONS (1000) y MAX_SESSIONS_PER_PRINCIPAL (100), y los metadatos de cliente almacenados se truncan.
ContenedorSe ejecuta como UID 1000; compose.yml establece un sistema de archivos raíz de solo lectura, cap_drop: ALL y no-new-privileges. La imagen de runtime no incluye pip.

No hay listener TLS integrado; termine TLS en un proxy inverso o balanceador de carga. Reporte vulnerabilidades como se describe en SECURITY.md.


Configuración

Todos los ajustes son variables de entorno (generalmente mediante .env). Los que la mayoría de despliegues tocan:

VariablePredeterminadoPropósito
WAZUH_HOST, WAZUH_USER, WAZUH_PASS—Conexión API del Manager (requerida)
WAZUH_PORT55000Puerto API del Manager
WAZUH_CA_BUNDLE—PEM de CA usado en lugar del almacén del sistema para verificar el Manager y el Indexer; ver Manager TLS
WAZUH_ALLOW_SELF_SIGNEDfalsetrue se conecta al Manager sin verificación de certificado (registrado al inicio)
WAZUH_INDEXER_HOST, WAZUH_INDEXER_USER, WAZUH_INDEXER_PASS—Conexión al Indexer; un prefijo de host http:// selecciona HTTP plano
WAZUH_INDEXER_PORT9200Puerto del Indexer
ENVIRONMENTdevelopmentproduction requiere un AUTH_SECRET_KEY fuerte (a menos que AUTH_MODE=none)
AUTH_MODEbearerbearer, oauth o none
AUTH_SECRET_KEYgenerado por proceso fuera de producciónClave de firma de tokens; use el mismo valor en cada instancia
MCP_API_KEY / API_KEYSgenerado por proceso si no se establece (impreso solo en desarrollo)Una sola clave wazuh_, o una lista JSON de claves con hash con scopes por clave
MCP_API_KEY_SCOPESwazuh:readScopes separados por espacios para MCP_API_KEY
OAUTH_ISSUER_URLderivado de la solicitudURL HTTPS pública del servidor, para AUTH_MODE=oauth
OAUTH_IDP_ISSUER—Proveedor OpenID Connect para inicio de sesión OAuth (con OAUTH_IDP_CLIENT_ID); inicio de sesión con clave API cuando no se establece
WAZUH_REQUIRE_ACTION_CONFIRMATIONtrue en producción, si no falseLas herramientas de escritura requieren confirm=true
MCP_HOST, MCP_PORT127.0.0.1 (0.0.0.0 en la imagen Docker), 3000Dirección de enlace y puerto
ALLOWED_ORIGINShttps://claude.ai,http://localhost:3000Lista de permitidos CORS (coincidencia exacta)
WAZUH_TOOLSETS, WAZUH_DISABLED_TOOLStodos habilitadosLimitar las herramientas expuestas
REDIS_URL—Almacén de sesiones compartido para despliegues multi-instancia
WAZUH_CLUSTERS_FILE./config/clusters.jsonTopología multi-clúster; modo de clúster único cuando está ausente
RESPONSE_FORMATjsongcf codifica colecciones de alertas, eventos y vulnerabilidades en el formato compacto GCF (sin pérdida; vuelve a JSON si el codificador no está disponible)
YDC_API_KEY—Habilita search_external_context

Referencia completa, incluidos TTLs de OAuth, límites de tasa, sesiones y ajustes de respuesta activa: Guía de Configuración. Configuración multi-clúster: Guía Multi-Clúster y config/clusters.json.example.

Ejecución desde el código fuente

python -m venv .venv && source .venv/bin/activate
pip install -e ".[redis,gcf]"      # extras are optional
set -a; . ./.env; set +a           # the server reads the environment, not .env
python -m wazuh_mcp_server

Requiere Python 3.11 o posterior.


Endpoints HTTP

EndpointMétodoDescripción
/mcpPOST, GET, DELETEMCP Streamable HTTP
/POST, GETMismo handler que /mcp
/sseGET, POSTDevuelve 410 Gone; use /mcp
/healthGETLiveness; sin comprobaciones de dependencias
/readyGETReadiness; 503 cuando falla la comprobación del Manager, Indexer o margen de memoria
/metricsGETMétricas Prometheus
/auth/tokenPOSTIntercambia una clave API por un JWT bearer
/.well-known/oauth-authorization-serverGETMetadatos OAuth (RFC 8414), solo AUTH_MODE=oauth
/.well-known/oauth-protected-resourceGETMetadatos de recurso protegido (RFC 9728), solo AUTH_MODE=oauth
/oauth/authorize, /oauth/token, /oauth/revoke, /oauth/register, /oauth/callbackGET/POSTEndpoints OAuth, solo AUTH_MODE=oauth (/oauth/register requiere OAUTH_ENABLE_DCR=true y no OAUTH_IDP_ISSUER; /oauth/callback es el URI de redirección de OpenID Connect y necesita OAUTH_IDP_ISSUER)
/docs, /redoc, /openapi.jsonGETDocumentación OpenAPI

Estructura del Proyecto

src/wazuh_mcp_server/
├── server.py          # FastAPI app, MCP protocol handling, CORS/Origin checks, tool definitions and dispatch
├── toolsets.py        # Toolset membership, WAZUH_TOOLSETS resolution, tool annotations
├── auth.py            # API keys and bearer JWTs
├── oauth.py           # OAuth 2.0 authorization server (PKCE, API-key sign-in)
├── oidc.py            # OpenID Connect sign-in at an external identity provider
├── config.py          # Environment configuration and startup validation
├── security.py        # Rate limiting, request and input validation, log redaction
├── clusters.py        # Multi-cluster registry and Cross-Cluster Search routing
├── session_store.py   # In-memory and Redis session storage
├── resilience.py      # Circuit breakers, retries, graceful shutdown
├── monitoring.py      # Prometheus metrics, structured logging
├── gcf_format.py      # Optional GCF response encoding
└── api/
    ├── wazuh_client.py    # Wazuh Manager REST API client
    └── wazuh_indexer.py   # Wazuh Indexer (OpenSearch) client

Documentación

DocumentoContenido
Guía de ConfiguraciónCada variable de entorno, modos de autenticación, RBAC
Integración con ClaudeConexión de conectores personalizados de Claude
Guía de LLM LocalvLLM, Open WebUI, Ollama, LiteLLM, evaluación de selección de herramientas
Multi-ClústerClústeres nombrados y búsqueda entre clústeres
OperacionesDespliegue, monitoreo, mantenimiento
Funciones AvanzadasDespliegue multi-instancia, salida compacta
Solución de ProblemasProblemas comunes y soluciones
Referencia de APIParámetros por herramienta
Endurecimiento de SeguridadGuía de endurecimiento
Cumplimiento MCPNotas de conformidad con el protocolo
Compatibilidad con WazuhVersiones de Wazuh compatibles
Actualización · Registro de Cambios · Política de SeguridadNotas de versión y políticas

Proyecto relacionado: Wazuh Autopilot construye flujos de trabajo SOC automatizados sobre este servidor.


Contribuciones

Ver CONTRIBUTING.md. Errores, solicitudes de funciones y preguntas van a Issues, y los informes de seguridad a un aviso de seguridad privado.


Licencia

MIT


Agradecimientos

Gracias a todos los que han contribuido con código, revisiones, informes de errores y comentarios de diseño. Ver también ACKNOWLEDGMENTS.md.

Código y solicitudes de extracción

  • @alokemajumder — mantenedor; arquitectura, transporte MCP, endurecimiento de seguridad, versiones
  • @gensecai-dev — las 19 herramientas de acción, verificación y reversión, correcciones de endpoints rotos, endurecimiento de producción
  • @andrzej-piotrowski-pl — herramientas de cumplimiento ISO 27001:2022: mapeo de controles del Anexo A, puntuación de dominios, análisis de brechas (#74)
  • @blackwell-systems — codificación de respuesta GCF opt-in para herramientas de registro (#102, #104)
  • @lucascruzb — agregación de alertas por período mediante scroll, la base de get_alerts_aggregated (#79)
  • @kanylbullen — modo de salida compacta para respuestas eficientes en tokens (#65)
  • @mouse-value-add — contexto opcional de búsqueda web You.com (#85)
  • @DrRSatzteil — corrección de paginación de tools/list (#70)
  • @SiM22 — soporte MCP 2025-06-18 para compatibilidad con Windsurf (#66)
  • @aiunmukto — .env.example (#12), un flujo de trabajo CI temprano y el listado del registro Glama
  • @Karibusan — correcciones de dependencias (#38)
  • @lwsinclair — listado MseeP.ai (#9)
  • @markeclaudio — inicio de sesión OpenID Connect (#123), guardarraíles de respuesta activa (#124, #125), límites del almacén de sesiones (#126), verificación TLS del Manager por defecto (#127)
  • @MilkyWay88 y @taylorwalton — solicitudes de extracción tempranas sobre configuración, registro y empaquetado

Informes de errores y discusiones

@cbassonbgroup, @cybersentinel-06, @daod-arshad, @mamema, @marcolinux46, @matveevandrey, @punkpeye, @tonyliu9189, @Uberkarhu, @bl4ck5w4n07, @gnix45, @hackdefendr, @melmasry1987, @Vasanth120v, @wqfh

Construido sobre y funciona con


Contribuidores

Contribuidores

AvatarUsernameContribuciones
@alokemajumder💻 Código, 🐛 Problemas, 🔀 PRs, 💬 Discusiones
@Karibusan💻 Código, 🐛 Problemas, 🔀 PRs
@gensecai-dev💻 Código, 🔀 PRs, 💬 Discusiones
@aiunmukto💻 Código, 🔀 PRs
@andrzej-piotrowski-pl💻 Código, 🔀 PRs
@blackwell-systems💻 Código, 🔀 PRs
@kanylbullen💻 Código, 🔀 PRs
@lucascruzb💻 Código, 🔀 PRs
@lwsinclair💻 Código, 🔀 PRs
@mouse-value-add💻 Código, 🔀 PRs
@SiM22💻 Código, 🔀 PRs
@DrRSatzteil🔀 PRs
@MilkyWay88🔀 PRs
@taylorwalton🔀 PRs
@cbassonbgroup🐛 Problemas
@cybersentinel-06🐛 Problemas
@daod-arshad🐛 Problemas
@mamema🐛 Problemas
@marcolinux46🐛 Problemas
@matveevandrey🐛 Problemas
@punkpeye🐛 Problemas
@tonyliu9189🐛 Problemas
@Uberkarhu🐛 Problemas
@bl4ck5w4n07💬 Discusiones
@gnix45💬 Discusiones
@hackdefendr💬 Discusiones
@melmasry1987💬 Discusiones
@Vasanth120v💬 Discusiones
@wqfh💬 Discusiones

Leyenda: 💻 Código · 🐛 Problemas · 🔀 Pull Requests · 💬 Discusiones

Actualizado automáticamente por GitHub Actions