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

Listed on mcpservers.org

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).

NivelUn archivo debe tener (completado)Qué evidencia
BroncetypeOKF v0.2 tal como está escrito — type es su único campo obligatorio
PlataBronce + title, description, timestamp, ownerISO 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.
OroPlata + status, review_policy, reviewed_at, next_review_atLa 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

HerramientaQué haceRed
jidoseal_scanLa 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_offerQué 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_checkoutSolo 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

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.