Referencia de herramientas
SecCheck expone siete herramientas. Todas son de solo lectura — buscan contenido y lo devuelven; ninguna modifica su proyecto, sus sistemas ni estado alguno del servidor. Ninguna realiza llamadas salientes: todas las respuestas proceden del corpus incorporado en el servidor.
| Herramienta | En una línea |
|---|---|
list_sources | ¿Qué bibliotecas existen, de qué tamaño y qué cubren? |
search_skills | Encontrar playbooks por palabra clave, categoría, marco o etiqueta. |
load_skill | Leer un playbook completo. |
list_skill_resources | ¿Qué archivos incluidos acompañan a un playbook? (Pro) |
read_skill_resource | Leer un script / payload / referencia incluido. (Pro) |
license_status | ¿Qué desbloquea mi credencial? |
get_attribution | Licencias de terceros y avisos obligatorios. |
El contrato de respuesta
Cada herramienta que devuelve datos estructurados responde en exactamente dos líneas:
<LÍNEA DE VEREDICTO — expresa el resultado con palabras>
<carga JSON compacta en una línea>
Es deliberado. Un modelo lee la primera línea, así que la primera línea debe
llevar la respuesta. Los prefijos diferenciados — FOUND, NO MATCH,
AVAILABLE, RESOURCES, EDITION, ATTRIBUTION — son lo que permite a un
agente distinguir «nada coincidió con su consulta» de «eso no existe», que es
la diferencia entre reintentar y sacar una conclusión errónea.
load_skill y read_skill_resource son la excepción: devuelven el documento en
sí, porque ese es la respuesta.
Los fallos llegan como resultados de herramienta que empiezan por error: ,
no como errores de protocolo JSON-RPC — los modelos se recuperan mucho mejor de
un resultado legible que de un fallo a nivel de transporte.
list_sources
Lista las bibliotecas de skills, sus recuentos y el desglose por categoría. Llámela primero para ver qué contiene realmente el servidor.
Parámetros — ninguno.
Devuelve
AVAILABLE: 857 playbooks across 3 libraries (43 compliance, 745 defensive, 69 offensive). Edition: community.
{
"total_skills": 857,
"by_category": { "compliance": 43, "defensive": 745, "offensive": 69 },
"sources": [
{
"key": "cybersecurity",
"label": "Cybersecurity Skills",
"description": "817-skill offensive+defensive library, mapped to MITRE ATT&CK/ATLAS/D3FEND, NIST CSF/AI-RMF, and F3.",
"skill_count": 817,
"categories": { "compliance": 13, "defensive": 745, "offensive": 59 },
"available": true,
"unlocked": true
},
{ "key": "grc", "label": "GRC & Compliance Skills", "skill_count": 30, "categories": { "compliance": 30 }, "unlocked": true },
{ "key": "pentesterflow", "label": "PentesterFlow CLI Skills", "skill_count": 10, "categories": { "offensive": 10 }, "unlocked": true }
],
"edition": "community"
}
Solo se listan las fuentes que su credencial desbloquea — un pack de skills privado o a medida que no se le haya concedido sencillamente no aparece.
search_skills
Busca en todas las bibliotecas desbloqueadas y devuelve coincidencias compactas. Es el punto de entrada de casi cualquier tarea: encontrar el playbook y luego cargarlo.
Parámetros — todos opcionales. Los filtros se combinan con Y lógico.
| Nombre | Obligatorio | Descripción |
|---|---|---|
query | ➖ | Palabras clave en texto libre, p. ej. dns exfiltration, kerberoasting, GDPR data subject rights. |
source | ➖ | Restringir a una biblioteca: cybersecurity, grc, pentesterflow. |
category | ➖ | offensive (red team/pentest), defensive (blue team/DFIR), compliance (GRC/regulatorio). |
framework | ➖ | Etiqueta de marco, p. ej. MITRE ATT&CK, NIST CSF, GDPR, PCI DSS, ISO 27001. |
tag | ➖ | Una etiqueta del frontmatter, p. ej. splunk, kubernetes, active-directory. |
limit | ➖ | Máximo de resultados. Por defecto 20, máximo 100. |
Omitir query y pasar solo filtros es una llamada de listado válida — por
ejemplo «todos los playbooks de cumplimiento de la biblioteca GRC».
Ejemplo
{ "query": "kerberoasting", "limit": 3 }
Devuelve
FOUND: 3 playbook(s). Load the most relevant with load_skill(id).
{
"count": 3,
"results": [
{
"id": "cybersecurity/detecting-kerberoasting-attacks",
"name": "detecting-kerberoasting-attacks",
"source": "cybersecurity",
"category": "defensive",
"frameworks": ["MITRE ATT&CK", "NIST CSF", "MITRE D3FEND"],
"tags": ["threat-hunting", "kerberoasting", "credential-access", "kerberos", "t1558"],
"description": "Detect Kerberoasting attacks by monitoring for anomalous Kerberos TGS requests targeting service accounts with SPNs for offline password cracking."
},
{
"id": "cybersecurity/exploiting-kerberoasting-with-impacket",
"category": "offensive",
"frameworks": ["MITRE ATT&CK", "NIST CSF", "MITRE D3FEND"],
"description": "Perform Kerberoasting attacks using Impacket's GetUserSPNs to extract and crack Kerberos TGS tickets for Active Directory service accounts."
}
// …
]
}
Las descripciones se truncan a 300 caracteres — suficiente para que el agente elija, no para sustituir la carga del playbook.
Cómo se ordenan los resultados. Las coincidencias se puntúan por cada token de la consulta y se ordenan de mayor a menor, de modo que el playbook más pertinente aparece arriba:
| Dónde coincide el token | Puntos |
|---|---|
| El nombre del skill, exactamente | +100 |
| En cualquier parte del nombre del skill | +5 |
| Una etiqueta | +3 |
| Una etiqueta de marco | +3 |
| El subdominio | +2 |
| La descripción | +1 |
Como la puntuación es aditiva entre tokens, una consulta larga en lenguaje
natural siempre devuelve algo — a menudo poco relacionado. Si la descripción del
primer resultado no encaja claramente con la tarea, acote con category o
framework en lugar de añadir más palabras.
Cuando realmente no hay coincidencias, la línea de veredicto es explícita:
NO MATCH: no playbook matched this query. Try broader keywords, or drop the source/category/framework filters — the library is not exhaustive of all security work.
load_skill
Devuelve el playbook SKILL.md completo para un id devuelto por
search_skills — normalmente, cuándo usarlo, sus requisitos previos y sus pasos,
además de los criterios de verificación o validación que incluya.
Parámetros
| Nombre | Obligatorio | Descripción |
|---|---|---|
id | ✅ | Id de skill con la forma <source>/<name>, p. ej. cybersecurity/analyzing-dns-logs-for-exfiltration. |
Devuelve — el documento Markdown en sí, frontmatter incluido.
Cuando un playbook incluye recursos, se añade un pie. En Community ese pie es solo un recuento, sin revelar rutas ni tamaños de archivo:
---
_3 runnable bundled resource(s) ship with this skill; unlock them with a Pro license (read_skill_resource)._
Con Pro o Enterprise pasa a ser el inventario completo (rutas y tamaños), los
mismos datos que devuelve
list_skill_resources.
Errores
error: unknown skill id "cybersecurity/does-not-exist" (use search_skills to find valid ids)
Tome siempre el id de search_skills en lugar de deducirlo de un nombre de skill
visto en otro sitio.
list_skill_resources
Lista los archivos de referencia, scripts y payloads incluidos que acompañan a un playbook — rutas relativas y tamaños.
En Community esto devuelve un error: que explica la restricción. Los 857
playbooks siguen siendo gratuitos para buscar y cargar; lo que tiene licencia es
el material ejecutable.
Parámetros
| Nombre | Obligatorio | Descripción |
|---|---|---|
id | ✅ | Id de skill obtenido de search_skills. |
Devuelve
RESOURCES: 3 bundled file(s) ship with grc/iso27001. Fetch one with read_skill_resource.
{
"id": "grc/iso27001",
"resources": [
{ "path": "references/annex-a-2013.md", "size": 7753 },
{ "path": "references/annex-a-2022.md", "size": 10131 },
{ "path": "references/control-mapping.md", "size": 7001 }
]
}
read_skill_resource
Lee un archivo de recurso incluido que acompaña a un playbook.
La misma restricción que list_skill_resources.
Parámetros
| Nombre | Obligatorio | Descripción |
|---|---|---|
id | ✅ | Id de skill obtenido de search_skills. |
path | ✅ | Una ruta relativa tal y como la devuelve list_skill_resources, p. ej. references/standards.md o payloads/jinja2.txt. |
Devuelve — el contenido del archivo.
Las rutas se resuelven estrictamente dentro del propio directorio del skill, y los enlaces simbólicos nunca se listan ni se sirven, de modo que una ruta de recurso no puede usarse para leer nada fuera del playbook al que pertenece.
license_status
Informa de su edición activa y de exactamente qué fuentes y capacidades desbloquea su credencial. Útil cuando una herramienta devuelve un error de restricción inesperado.
Parámetros — ninguno.
Devuelve
EDITION: community — playbooks only.
{
"tier": "community",
"unlocked_sources": { "cybersecurity": true, "grc": true, "pentesterflow": true },
"bundled_resources": false,
"audit_log": false,
"usage_metering": false,
"status": "Hosted: capabilities are provisioned on your Cert-IX API key"
}
Los valores describen al llamante, no al operador. En alojado se resuelven a partir de su clave API por el borde de Cert-IX en cada petición — véase Seguridad y tratamiento de datos.
get_attribution
Devuelve la atribución y la licencia de terceros de cada biblioteca incluida, incluidos los textos completos de las licencias. Este es el aviso que debe reproducir si redistribuye este contenido.
Parámetros — ninguno.
Devuelve
ATTRIBUTION: 3 third-party sources, redistributed under their own permissive licences.
{
"notice": "This product redistributes third-party skill content under the licences below. All rights of the original authors are retained. Full licence texts are included.",
"sources": [
{ "source": "cybersecurity", "upstream": "Anthropic-Cybersecurity-Skills", "author": "mahipal (community project)", "license": "Apache-2.0", "homepage": "https://github.com/mukul975/Anthropic-Cybersecurity-Skills" },
{ "source": "grc", "upstream": "Claude-Skills-Governance-Risk-and-Compliance", "author": "Hemant Naik (Sushegaad)", "license": "MIT", "homepage": "https://github.com/Sushegaad/Claude-Skills-Governance-Risk-and-Compliance" },
{ "source": "pentesterflow", "upstream": "PentesterFlow", "author": "PentesterFlow", "license": "Apache-2.0", "homepage": "https://github.com/pentesterflow/agent" }
],
"license_texts": { "cybersecurity": "Apache License…", "grc": "MIT License…", "pentesterflow": "Apache License…" }
}
Un identificador SPDX y una página de inicio son una referencia, no un aviso — por eso el texto completo viaja con la respuesta en lugar de esperar que usted vaya a buscar el repositorio de origen.
Matriz de capacidades
| Herramienta | Community | Pro | Enterprise |
|---|---|---|---|
list_sources | ✅ | ✅ | ✅ |
search_skills | ✅ | ✅ | ✅ |
load_skill | ✅ | ✅ | ✅ |
list_skill_resources | — | ✅ | ✅ |
read_skill_resource | — | ✅ | ✅ |
license_status | ✅ | ✅ | ✅ |
get_attribution | ✅ | ✅ | ✅ |
Véase Flujos de trabajo de agentes para conectar todo esto al bucle de un agente, de modo que recurra a un playbook por defecto en lugar de improvisar.
¿Te resultó útil esta página?