Jidoseal MCP
Escanea una carpeta de documentos Markdown y corrige los campos faltantes del formato Open Knowledge para que los agentes de IA puedan usarlos. Se ejecuta localmente; nada sale de tu máquina.
Documentación
jidoseal-mcp
Revisa una carpeta de notas en Markdown contra el Formato de Conocimiento Abierto (OKF) v0.2 — desde Claude Code, Claude Desktop, Cursor, GitHub Copilot, OpenAI Codex, Gemini CLI, Zed, Cline, Continue, JetBrains AI Assistant o un modelo local, en tu propia máquina.
Elige una carpeta, escanéala. jidoseal-mcp es un servidor local de Model Context Protocol que lee el frontmatter YAML de cada archivo *.md bajo una carpeta, informa qué nivel alcanza la base de conocimiento (Bronce / Plata / Oro) y lista — por archivo — los campos de frontmatter exactos que faltan para el siguiente nivel. Nada sale de tu máquina: ni archivos, ni nombres de archivo, ni contenido.
pip install jidoseal-mcp
claude mcp add jidoseal -- jidoseal-mcp # Claude Code; every other tool is below
Luego pregúntale a tu asistente: "Escanea ~/notes con JidoSeal y dime qué falta para Plata."
Independiente. OKF es una especificación abierta de Google Cloud. JidoSeal no está afiliado, patrocinado ni respaldado por Google o ISO. ISO no nombra campos: los campos de Plata y Oro a continuación son la forma de JidoSeal de evidenciar las cláusulas ISO, y un certificado de JidoSeal no es una certificación ISO.
Qué comprueba
El escaneo es determinista — presencia de campos de frontmatter completados, sin llamadas a modelos, sin puntuación por opinión. Un campo solo cuenta si tiene contenido real (title: sin nada después no aporta nada).
| Nivel | Un archivo debe tener (completado) | Qué evidencia |
|---|---|---|
| Bronce | type | OKF v0.2 tal como está escrito — type es su único campo obligatorio |
| Plata | Bronce + title, description, timestamp, owner | ISO 9001 §7.5.2, que pide identificación y descripción apropiadas de un documento y da ejemplos ("un título, fecha, autor o número de referencia"). Estos cuatro campos son una forma razonable de evidenciarlo. |
| Oro | Plata + status, review_policy, reviewed_at, next_review_at | La gobernanza de conocimiento mantenido al día de ISO 30401. La norma no establece un intervalo de revisión; una política de revisión declarada con fechas de revisión reales es cómo lo evidencias, y la cadencia es tuya para elegir. |
El nivel de un corpus es el nivel de su archivo más débil. La cobertura es la proporción de archivos que alcanzan cada nivel. La referencia completa de campos — alias aceptados, qué cuenta como "completado", qué se excluye — está en docs/tiers.md.
Un archivo mínimo de nivel Oro:
---
type: policy
title: Leave policy
description: How leave accrues and how to request it.
timestamp: 2026-09-01
owner: dept:people-ops
status: stable
review_policy: yearly
reviewed_at: 2026-09-01
next_review_at: 2027-09-01
---
Ejemplos trabajados para cada nivel, y una carpeta mixta, están en examples/tiers/.
Herramientas
| Herramienta | Qué hace | Red |
|---|---|---|
jidoseal_scan | La autoverificación gratuita sobre una carpeta en esta máquina: nivel del corpus, campos faltantes por archivo para el siguiente nivel (cada uno marcado AUTO — un valor que JidoSeal puede proponer — o NEEDS-CLIENT — solo el propietario puede responder), cobertura por nivel, una puntuación de 0–100 y una raíz Merkle del corpus. | ninguna |
jidoseal_certification_offer | Qué costaría la certificación opcional para este corpus, por qué, qué incluye y exactamente qué hechos enviaría una compra. Calcula localmente; no inicia nada. | ninguna |
jidoseal_start_checkout | Solo con tu aprobación explícita: pide a jidoseal.com crear una sesión de Stripe Checkout y devuelve el enlace para que lo abras. No toma pagos. | solo jidoseal.com |
Ejemplo de resultado de jidoseal_scan para examples/tiers/mixed (tres archivos, uno Oro, uno Bronce, uno sin frontmatter):
{
"corpus": { "file_count": 3, "tier": "none",
"coverage": { "bronze": 66.7, "silver": 33.3, "gold": 33.3 } },
"score": 44,
"certified_eligible": false,
"files": [
{ "name": "expenses.md", "tier": "bronze",
"missing": { "silver": [ { "field": "description", "fix": "AUTO" },
{ "field": "timestamp", "fix": "AUTO" },
{ "field": "owner", "fix": "NEEDS-CLIENT" } ] } }
// …
]
}
frontmatter_ok: false en un archivo significa que su bloque de frontmatter existe pero no se puede analizar; ninguna escritura de campo puede cerrar sus brechas hasta que se corrija a mano.
Instalar y conectar a tu herramienta
Requiere Python 3.9+. pip install jidoseal-mcp también instala jidoseal (el motor de escaneo y CLI) y pone un comando jidoseal-mcp en tu PATH. Sin cuenta y sin clave API. El escaneo en sí no necesita red — funciona igual sin conexión.
Cada herramienta a continuación lanza el mismo comando local, jidoseal-mcp, sobre stdio. Solo difiere el lugar donde lo escribes.
Claude Code
claude mcp add jidoseal -- jidoseal-mcp
o confirma un .mcp.json a nivel de proyecto:
{ "mcpServers": { "jidoseal": { "command": "jidoseal-mcp" } } }
Claude Desktop
Configuración → Desarrollador → Editar configuración abre claude_desktop_config.json. Añade:
{ "mcpServers": { "jidoseal": { "command": "jidoseal-mcp", "args": [] } } }
Reinicia Claude Desktop después.
Cursor
~/.cursor/mcp.json (o .cursor/mcp.json en un proyecto):
{ "mcpServers": { "jidoseal": { "type": "stdio", "command": "jidoseal-mcp", "args": [] } } }
GitHub Copilot (modo agente de VS Code, y Visual Studio, JetBrains, Eclipse, Xcode)
Copilot Chat usa herramientas MCP en modo Agente. En VS Code, añade .vscode/mcp.json al proyecto (o ejecuta MCP: Open User Configuration para cada proyecto):
{ "servers": { "jidoseal": { "type": "stdio", "command": "jidoseal-mcp" } } }
Copilot en Visual Studio, IDEs JetBrains, Eclipse y Xcode toma la misma entrada servers en su propia configuración MCP. En un asiento de Copilot Business o Enterprise, tu organización debe tener activada la política "MCP servers in Copilot"; está desactivada por defecto.
OpenAI Codex (CLI, extensión de IDE y aplicación)
codex mcp add jidoseal -- jidoseal-mcp
o en ~/.codex/config.toml:
[mcp_servers.jidoseal]
command = "jidoseal-mcp"
Gemini CLI
gemini mcp add -s user jidoseal jidoseal-mcp
o en ~/.gemini/settings.json (o .gemini/settings.json en un proyecto):
{ "mcpServers": { "jidoseal": { "command": "jidoseal-mcp" } } }
Zed
En settings.json de Zed (o Configuración → IA → Servidores MCP → Añadir servidor local):
{ "context_servers": { "jidoseal": { "command": "jidoseal-mcp", "args": [], "env": {} } } }
Cline
Servidores MCP → Configurar → Configurar servidores MCP, luego añade:
{ "mcpServers": { "jidoseal": { "type": "stdio", "command": "jidoseal-mcp", "args": [], "disabled": false } } }
Continue
.continue/mcpServers/jidoseal.yaml en tu espacio de trabajo (las herramientas MCP se ejecutan en el modo agente de Continue):
name: JidoSeal
version: 0.0.1
schema: v1
mcpServers:
- name: jidoseal
type: stdio
command: jidoseal-mcp
JetBrains AI Assistant
Configuración → Herramientas → AI Assistant → Model Context Protocol (MCP) → Añadir → STDIO, y pega:
{ "mcpServers": { "jidoseal": { "command": "jidoseal-mcp", "args": [] } } }
Un modelo local
Cualquier cliente MCP que pueda lanzar un servidor stdio y se sitúe frente a un modelo local toma los mismos dos datos — un nombre y un comando:
{ "mcpServers": { "jidoseal": { "command": "jidoseal-mcp", "args": [], "env": {} } } }
Sin herramienta de IA — solo la línea de comandos
pipx install jidoseal && jidoseal --root ~/notes
Mismo escaneo, mismo veredicto, desde una terminal. Consulta el CLI jidoseal en PyPI.
Si tu host usa un Python diferente al que instalaste, apúntalo al módulo: "command": "/path/to/python", "args": ["-m", "jidoseal_mcp"].
Comprueba la conexión a mano, sin ningún host:
printf '%s\n' \
'{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"x","version":"0"}}}' \
'{"jsonrpc":"2.0","id":2,"method":"tools/list"}' \
| jidoseal-mcp
Deberías ver un resultado initialize que nombra jidoseal, luego las tres herramientas.
Ejecutarlo en CI
El CLI escribe .jidoseal/manifest.json; unas pocas líneas lo convierten en una puerta. Consulta docs/ci.md para un flujo de trabajo de GitHub Actions que falla la compilación cuando cualquier archivo cae por debajo de Plata.
Qué sale de tu máquina
Un escaneo: nada. Ni los archivos, ni sus nombres, ni sus contenidos. Eso es una propiedad del grafo de importación, no una promesa sobre qué ramas se ejecutan: jidoseal_mcp.py, scan_result.py y offer.py no importan socket, ni urllib, ni cliente HTTP, y tampoco nada de lo que traen. checkout_client.py es el único módulo que puede alcanzar la red, y se importa solo dentro del manejador de checkout.
Una compra, solo si eliges una: la empresa, nombre y correo que escribiste, el nivel, una puntuación de 0–100, la raíz Merkle del corpus, el id del escaneo local y qué precio de Bronce aplica. Sin contenidos de archivos, sin nombres de archivos, sin hashes por archivo, sin rutas. La raíz Merkle es un resumen unidireccional.
Verifícalo tú mismo:
strace -f -o /tmp/trace.txt -e trace=network jidoseal-mcp < your-jsonrpc-input # no network syscalls during a scan
bwrap --unshare-net --dev-bind / / jidoseal-mcp < your-jsonrpc-input # the scan works with no network at all
El escaneo escribe sus propios registros — manifest.json y un progress.ndjson añadido — bajo <folder>/.jidoseal/ y en ningún otro lugar. Nunca modifica tus notas.
Certificación opcional
El escaneo es gratuito e ilimitado, y también lo son las correcciones. Si quieres un certificado con fecha para el grado que alcanzó tu carpeta, vinculado a la raíz Merkle de tu corpus, con una página de verificación pública y un listado en el registro público, eso es un paso de pago en jidoseal.com; los precios actuales se publican allí, un precio fijo por grado sin importar cuántos archivos. Una persona en JidoSeal lo firma basándose solo en el grado, la puntuación y esa huella digital, nunca en el contenido de tus archivos.
Enlaces
- Sitio web: https://jidoseal.com
- Registro público de bases de conocimiento certificadas: https://jidoseal.com/registry
- PyPI:
jidoseal-mcp·jidoseal - Registro MCP:
com.jidoseal/jidoseal-mcp - Especificación OKF (Google Cloud, Apache-2.0): https://github.com/GoogleCloudPlatform/open-knowledge-format
- Contacto: support@jidoseal.com
Acerca de este repositorio
Este repositorio contiene el código fuente del paquete jidoseal-mcp: un servidor MCP implementado solo con la biblioteca estándar de Python (sin SDK de MCP), que habla JSON-RPC 2.0 sobre stdio. Depende del paquete publicado por separado jidoseal para el motor de escaneo, que no es parte de este repositorio. Los problemas son bienvenidos; no hay suite de pruebas en este repositorio, así que incluye las versiones de jidoseal-mcp y jidoseal y la carpeta más pequeña que reproduzca un problema.
Licencia
Apache-2.0 para el código en este repositorio — consulta LICENSE. El motor jidoseal del que depende se distribuye por separado bajo sus propios términos.