Skip to main content
Glama
project_tracker_base: CINO Project Tracker:appf7fRQUvY9Iy7sL
project_tracker_table: Projects:tblchmbxSAavvJKaY
project_tracker_record: csa-skilljar:recbwfx6O30BboQNv
project_source: github:CloudSecurityAlliance-Internal/CINO-Projects/projects/CloudSecurityAlliance/csa-skilljar

csa-skilljar

Una biblioteca de Python y servidor MCP local para la plataforma de educación al cliente Skilljar, que cubre ambas API REST de Skilljar — v1 y v2 — detrás de un único conjunto de herramientas.

Estado: Bloque 1 implementado, aún no publicado.

Instala desde el código fuente hasta que v0.0.1 esté en PyPI: pipx install git+https://github.com/CloudSecurityAlliance/csa-skilljar El servidor se ejecuta, autentica y responde a través de stdio, con cuatro herramientas: check_access, describe_capabilities, report_a_problem y list_courses. Aún no está en PyPI — v0.0.1 se publicará una vez verificado contra una organización de Skilljar en vivo. La superficie de paridad de 73 herramientas llega en los Bloques 2–9; consulta ROADMAP.md.

Comienza con el servidor MCP oficial de Skilljar

Si quieres Skilljar en un cliente de IA, usa el servidor MCP propio de Skilljar. Es la opción correcta por defecto y la recomendamos sin reservas. Es de primera parte, alojado y mantenido por el proveedor, no necesita nada instalado en tu máquina, cubre toda la API v2 en 73 herramientas y autentica con OAuth y ámbitos por operación. Skilljar está construyendo activamente v2, así que mejora en su cadencia de lanzamiento, no en la nuestra.

claude mcp add skilljar --transport http https://mcp.skilljar.com/mcp

Prueba eso primero. Para la mayoría de la gente es la respuesta completa.

Related MCP server: sf-mcp

…pero si necesitas más

Algunas cosas aún no están en la API v2, por lo que ningún cliente v2 puede acceder a ellas. La API v1 es considerablemente más grande — 340 operaciones frente a las 82 de v2 — y hoy es la única forma de acceder a:

  • progreso del alumno por lección — v2 solo informa de la finalización a nivel de curso

  • webhooks — v2 no tiene notificaciones de eventos en absoluto

  • carga de activos — v2 no tiene carga de archivos

  • rutas de aprendizaje, formación dirigida por instructor y la pila de comercio (ofertas, códigos promocionales, compras, créditos de formación)

csa-skilljar existe para cubrir esa brecha. Reproduce exactamente la superficie de herramientas oficial — mismos nombres de herramientas, mismos nombres de argumentos — y luego añade las capacidades solo de v1 junto a ellas, para que no tengas que elegir entre las dos APIs ni ejecutar dos servidores.

También se ejecuta localmente a través de stdio, lo que algunas organizaciones necesitan: tus credenciales de API permanecen en tu propia máquina.

Esperamos que este proyecto se reduzca con el tiempo, y ese es el resultado previsto. Skilljar ha reservado públicamente ámbitos de OAuth para webhooks, rutas, activos, etiquetas y comercio. A medida que esos endpoints se publiquen, el soporte v1 correspondiente aquí se retirará en favor de v2 — los nombres de las herramientas siguen siendo los mismos y los llamadores no notan nada.

MCP oficial de Skilljar

csa-skilljar

APIs

v2

v1 + v2

Transporte

HTTP remoto

stdio local

Credenciales

mantenidas en el servidor

permanecen en tu máquina

Autenticación

Código de autorización OAuth (navegador)

Credenciales de cliente OAuth + clave de API v1

Control de capacidades

Ámbitos de OAuth en el consentimiento

ámbitos más perfiles por instalación

Biblioteca

la biblioteca también es el producto

Comprobando el estado de la API v2 de Skilljar

La API v2 de Skilljar está creciendo activamente, y el servidor MCP oficial la sigue de cerca. Es una buena noticia para todos — y significa que el mapa de cobertura de este proyecto tiene una vida útil. Antes de asumir que una brecha documentada aquí sigue siendo una brecha, vuelve a comprobar el upstream.

# 1. The published v2 surface
curl -s https://api.skilljar.com/v2/openapi.json | jq '.paths | keys | length'

# 2. The declared scope catalogue — a leading indicator of what is coming
curl -s https://api.skilljar.com/.well-known/oauth-authorization-server \
  | jq -r '.scopes_supported[]'

# 3. The official MCP server's live tool list
#    Connect it, then run /mcp in Claude Code.

En el momento de escribir esto, el catálogo de ámbitos anuncia 88 ámbitos mientras que la especificación v2 publicada usa 28 — áreas como webhooks, rutas, activos, etiquetas y comercio tienen ámbitos reservados pero aún no tienen endpoints. Cuando esos endpoints se publiquen, los respaldos v1 que este proyecto proporciona para ellos deberían retirarse en favor de v2, y esta nota actualizarse.

scripts/check_upstream.py automatizará los tres y reportará la desviación contra las instantáneas en specs/. Hasta entonces, ejecuta los comandos anteriores.

Credenciales

Dos credenciales independientes, ambas opcionales. El servidor arranca con una, ambas o ninguna, y te dice qué está disponible.

Variable

Para

Obtener de

CSA_SKILLJAR_V1_API_KEY

la API v1

Panel de Skilljar — consulta la guía de API de Skilljar

CSA_SKILLJAR_V2_CLIENT_ID / CSA_SKILLJAR_V2_CLIENT_SECRET

la API v2

Panel de Skilljar, clientes de API v2

Enlazamos la documentación propia de Skilljar en lugar de transcribir su navegación del panel, que no podemos mantener actualizada.

Limita el cliente v2 a lo que realmente necesitas. La API declara un ámbito requerido en cada operación, y los sensibles son separables — students:anonymize (irreversible), students:deactivate y students:manage-password pueden omitirse de un cliente utilizado para la creación de contenido.

Lo que cubrirá

Reproduce las 73 herramientas oficiales y luego añade familias solo de v1 en este orden:

  1. Progreso del alumno — detalle por lección, que v2 no reporta

  2. Activos y medios — v2 no tiene carga de archivos

  3. Comercio — ofertas, códigos promocionales, compras, créditos de formación

  4. Rutas de aprendizaje — rutas, elementos de ruta, inscripciones a rutas

  5. Eventos y webhooks — suscripciones y vistas previas de payload

  6. Formación dirigida por instructor — sesiones, instructores, registros

  7. Etiquetas y tags

Deliberadamente fuera de alcance: construcción de páginas de catálogo, recepción de webhooks, caché y escrituras compuestas entre APIs. Las razones están en la especificación.

Documentación del proyecto

Archivo

Qué responde

Especificación de diseño

Arquitectura, regla de enrutamiento, modelo de credenciales, taxonomía de errores de autenticación, fases. Empieza aquí.

ROADMAP.md

La secuencia de bloques — qué se publica en qué orden y qué está aparcado

GOALS.md

Cómo se ve el éxito y cómo sabríamos que ha fallado

BUSINESS-CASE.md

Por qué CSA está invirtiendo y el caso honesto de que este proyecto debería reducirse

TODO.md

Índice de todo el trabajo abierto

DECISIONS-ADR.md

Decisiones técnicas y por qué las alternativas rechazadas perdieron

DECISIONS-PRD.md

Alcance, audiencia y qué está deliberadamente fuera

SECURITY-RESOURCES.md

Superficie de exposición, riesgo de inyección de prompts, custodia de credenciales

DATA-RESOURCES.md

Qué datos maneja y qué nunca almacena deliberadamente

WAITING-FOR.md

Condiciones externas que esperamos, cada una con un desencadenante observable

FRICTION.md

Trabajo que es más difícil de lo que debería — incluyendo cómo este proyecto trabaja con IA

RACI.md

Quién decide qué

CLAUDE.md

Contrato de comportamiento para agentes de IA que trabajan aquí

Desarrollo

Usa siempre un entorno virtual. El intérprete está fijado por .python-version.

python3 -m venv .venv
.venv/bin/python -m pip install -e ".[dev]"

.venv/bin/python -m pytest -q          # offline suite: no network, no credentials
.venv/bin/ruff check src tests scripts
.venv/bin/mypy

./scripts/verify.sh                    # or just this: everything CI checks

Los comandos están escritos .venv/bin/... deliberadamente — un pytest desnudo resuelve a lo que sea que esté en PATH, que es como una suite pasa contra versiones de dependencias incorrectas.

Las contribuciones siguen los estándares de repositorio público de CSA: rama y PR para cada cambio, puertas de CI requeridas, sin empujes directos a main.

Licencia

Apache-2.0.

Agradecimientos

Skilljar es un producto de Gainsight. Este proyecto no está afiliado ni respaldado por Skilljar o Gainsight; es un cliente independiente construido contra sus APIs públicas. Las instantáneas de API en specs/ se obtienen de los documentos OpenAPI publicados y de acceso público de Skilljar.

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Official Sevalla MCP — full PaaS API access through just 2 tools.

  • 34 production API tools over one hosted MCP endpoint.

  • Query SEC EDGAR filings, XBRL financials, and company data through MCP. STDIO & Streamable HTTP.

View all MCP Connectors

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/CloudSecurityAlliance/csa-skilljar'

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