OTSkit.ts
← Paquetes·v0.8.2

@otskit/mcp

Servidor MCP que expone las operaciones de OTSkit como herramientas para agentes AI. Hashea archivos localmente, crea pruebas pendientes, actualiza a confirmación Bitcoin, inspecciona el estado y verifica timestamps — sin que el agente necesite entender el protocolo.

MCP serverCLI incluidaSQLite localSchedulerNode ≥ 20MIT

Por qué MCP

Por qué MCP

MCP convierte las operaciones de OTSkit en herramientas que un agente puede llamar directamente — sin que el agente entienda el protocolo OpenTimestamps.

El agente recibe herramientas pequeñas y auditables con IDs locales, resultados explícitos y verificación independiente. No inventa comandos. No deduce rutas. Solo llama a la herramienta correcta.

@otskit/core

El protocolo. Para librerías y herramientas que trabajan a bajo nivel.

@otskit/client

El SDK de red. Para apps que integran stamp/upgrade/verify en código.

@otskit/mcp

Para agentes AI que necesitan preservar, listar, actualizar y verificar pruebas.

Setup

Setup para agentes

Instala el paquete globalmente una vez:

$ npm install -g @otskit/mcp

Luego elige tu agente:

Claude Desktop

$ ots-mcp setup claude

Inyecta la config en ~/Library/Application Support/Claude/claude_desktop_config.json

Claude Code

$ ots-mcp setup claude-code

Inyecta la config en ~/.claude.json y reinicia el servidor MCP.

Codex

$ ots-mcp setup codex

Añade el servidor al registro de herramientas de Codex.

O configura manualmente en tu cliente MCP:

config.jsonjson
{
  "mcpServers": {
    "ots-mcp": {
      "command": "ots-mcp",
      "args": ["serve"]
    }
  }
}

Ciclo de vida

Pending → confirmed

El agente no necesita entender el ciclo. Solo llama a las herramientas. El servidor gestiona el estado.

hash_file / stamp_filepending en SQLitecalendarios respondenupgrade_timestampconfirmedverify_timestamp
hash_file / stamp_file
El archivo se hashea localmente. Solo el SHA-256 sale de la máquina.
pending en SQLite
El servidor guarda la prueba y el id en ~/.ots-mcp/ots-mcp.db. Estado: pending.
calendarios responden
Los calendarios registran el hash y devuelven una promesa pendiente de Bitcoin.
upgrade_timestamp
El agente (o el scheduler) consulta los calendarios más tarde. Si Bitcoin confirmó, fusiona la attestation.
confirmed
La prueba tiene attestation Bitcoin. isTimestampComplete() = true.
verify_timestamp
Verifica la prueba contra Bitcoin directamente. Devuelve { valid, blockHeight, timestamp }.
watch no es un watcher de directorio. Es un monitor de pruebas pendientes: reintenta upgrade_timestamp periódicamente hasta que aparezca una attestation Bitcoin.

Herramientas

Herramientas MCP

Crear

create_timestampSella un hash SHA-256 contra los calendarios. Devuelve un id local y guarda el estado en SQLite.
stamp_filePipeline completo: hashea el archivo localmente y llama a create_timestamp. Una sola herramienta.

Hash local

hash_fileCalcula SHA-256 en streaming. El archivo no sale de la máquina. Devuelve el hex del digest.

Seguir estado

inspect_timestampDecodifica la estructura interna de una prueba: attestations, ops, estado pending/confirmed.
list_pendingLista las pruebas pendientes almacenadas en SQLite con su edad y cuántos reintentos han fallado.
watchMonitoriza pruebas pendientes y reintenta upgrade periódicamente hasta que Bitcoin confirme.

Confirmar

upgrade_timestampConsulta los calendarios y fusiona la attestation Bitcoin en la prueba pendiente.

Verificar

verify_timestampVerifica la prueba contra Bitcoin directamente. Devuelve { valid, blockHeight, timestamp }.

CLI

CLI incluida

También puedes operar sin agente. La CLI expone las mismas operaciones directamente desde el terminal.

ots-mcp serveArranca el servidor MCP en modo stdio
ots-mcp stamp <sha256>Sella un hash desde CLI (no un archivo)
ots-mcp upgrade <id>Reintenta upgrade de una prueba por su id local
ots-mcp verify <id>Verifica una prueba por su id local
ots-mcp list [status]Lista pruebas — all, pending o confirmed
ots-mcp watch [minutes]Monitoriza pendientes durante N minutos
ots-mcp check-pendingEjecuta un ciclo de upgrade de todos los pendientes
ots-mcp scheduler installInstala el scheduler como servicio del sistema
ots-mcp backup [dest]Copia la base de datos y los .ots locales a dest

Datos y confianza

Modelo local y trust

El agente trabaja con hashes y pruebas. No custodia archivos, no requiere cuenta, no manda telemetría. La prueba resultante se puede verificar offline sin confiar en OTSkit.

El archivo no se sube

hash_file y stamp_file operan localmente. Solo el digest SHA-256 sale de tu máquina.

Todo en ~/.ots-mcp/

Base SQLite, archivos .ots y config.json viven en tu máquina. Sin nube propietaria.

SQLite local: ots-mcp.db

El agente lee y escribe una base de datos local. Tú puedes inspeccionarla directamente.

Verificación sin confiar en el agente

La prueba .ots es auditable sin pasar por OTSkit. Cualquier cliente OTS puede verificarla.

Calendarios públicos

Sello contra los cuatro calendarios OpenTimestamps públicos: alice, bob, finney, catallaxy.

Logs locales

El servidor escribe logs en ~/.ots-mcp/. Sin telemetría ni callbacks a servidores externos.

Config y scheduler

Config y scheduler

Todos los parámetros son opcionales. Los valores por defecto funcionan con los cuatro calendarios públicos.

~/.ots-mcp/config.jsonjson
{
  "dataDir": "~/.ots-mcp",
  "calendars": ["alice", "bob", "finney", "catallaxy"],
  "scheduler": {
    "intervalMinutes": 60,
    "maxRetries": 3
  },
  "log": {
    "level": "info",
    "file": "~/.ots-mcp/ots-mcp.log"
  }
}

Scheduler como servicio del sistema

El scheduler reintenta upgrades automáticamente aunque el agente no esté activo. Un comando lo instala como servicio nativo en cada plataforma.

$ ots-mcp scheduler install

macOS

launchd — plist en ~/Library/LaunchAgents/

Linux

systemd — unit en ~/.config/systemd/user/

Windows

Task Scheduler — tarea en carpeta OTSkit

Siguiente paso

¿Quieres que el agente entienda el contexto — qué preservar, cuándo, por qué? Sigue con @otskit/skills.

@otskit/skills — Preservación digital para agentes →