warmplane
OfficialWarmplane
Controles de seguridad:
El plano de control local que mantiene las sesiones MCP activas con fachadas compactas de capacidades, recursos y avisos.
v0.25.2 — Registro de cambios · Guía de usuario · Rendimiento · Documento técnico · OpenAPI
Warmplane ejecuta múltiples servidores MCP ascendentes detrás de un único proceso local, mantiene esas sesiones persistentes y expone una superficie compacta y consciente de políticas para herramientas, recursos y avisos, accesible a través de HTTP, CLI y clientes nativos de MCP.
Inicio rápido
1. Instalación
Usando Homebrew (macOS y Linux):
brew tap warmplane/tap
brew install warmplaneO mediante Cargo:
cargo install warmplane
# Optional: with local ONNX vector embeddings (FastEmbed)
cargo install warmplane --features semantic-searchO desde el código fuente:
git clone https://github.com/Warmplane/warmplane.git
cd warmplane
cargo install --path . --features semantic-search2. Configurar servidores ascendentes
Gestione servidores de forma interactiva o impórtelos desde herramientas existentes:
# Interactive setup wizard
warmplane server add
# Or add non-interactively
warmplane server add filesystem --command npx --arg "-y" --arg "@modelcontextprotocol/server-filesystem" --arg "/tmp"
warmplane server add context7 --url "https://mcp.context7.ai/sse" --bearer-env "CONTEXT7_API_KEY"
# Or import directly from Claude Desktop / Cursor
warmplane config importO cree manualmente mcp_servers.json:
{
"port": 9090,
"toolTimeoutMs": 15000,
"capabilityAliases": { "sqlite.read_query": "db.query" },
"resourceAliases": { "filesystem.file:///tmp/readme.txt": "fs.readme" },
"promptAliases": { "github.code_review": "prompt.code-review" },
"policy": {
"allow": ["db.*", "fs.*", "prompt.*"],
"deny": ["fs.secret"],
"redactKeys": ["token", "api_key", "password"]
},
"profiles": {
"coding": {
"servers": ["filesystem", "sqlite"],
"description": "Local coding and data inspection tools"
}
},
"mcpServers": {
"sqlite": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-sqlite", "./test.db"] },
"filesystem": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"] }
}
}3. Validar y luego iniciar
warmplane server list
warmplane validate-config --config mcp_servers.json
warmplane daemon --config mcp_servers.jsonRelated MCP server: MCP Server Proxy
Modos de ejecución
Los tres modos comparten el mismo estado de backend, alias, comprobaciones de políticas y comportamiento de tiempo de espera.
Daemon HTTP
warmplane daemon --config mcp_servers.json
# Serves /v1/... on the configured port (default 9090)Puntos finales clave:
Método | Ruta | Descripción |
|
| Índice compacto de capacidades |
|
| Búsqueda híbrida léxica + semántica |
|
| Envoltorio de ejecución normalizado (admite claves de idempotencia, |
|
| Ejecución encadenada de múltiples pasos con interpolación de referencias |
|
| Lista los registros de ejecución de idempotencia en caché y los recuentos de reproducción |
|
| Inspecciona un único registro de idempotencia en caché |
|
| Índice de recursos |
|
| Leer recurso |
|
| Índice de avisos |
|
| Renderizar aviso |
|
| Flujo de eventos de cambio de catálogo |
|
| Cancelar una operación en curso |
Servidor MCP (stdio)
warmplane mcp-server --config mcp_servers.jsonApunte cualquier cliente nativo de MCP a este proceso. Expone herramientas de fachada ligeras (capabilities_list, capability_search, capability_describe, capability_call, capabilities_batch_call, resource_read, prompt_get, …) junto con métodos nativos resources/* y prompts/*.
Configuración de Claude Desktop / Cursor:
{
"mcpServers": {
"warmplane": {
"command": "warmplane",
"args": ["mcp-server", "--config", "mcp_servers.json"]
}
}
}Servidor MCP (HTTP/SSE)
Expone la misma fachada sobre HTTP/SSE transmisible para que clientes remotos (pipelines de CI, clústeres de agentes multihost o clientes de escritorio remotos) puedan conectarse sin un proceso local:
# Local-only (default, no auth required)
warmplane mcp-http-server --config mcp_servers.json
# Network-accessible (requires authToken in config)
warmplane mcp-http-server --config mcp_servers.json --bind 0.0.0.0 --port 9191
# Profile-restricted
warmplane mcp-http-server --config mcp_servers.json --profile codingConéctese desde cualquier cliente HTTP de MCP:
{
"mcpServers": {
"warmplane": {
"url": "http://localhost:9191/mcp"
}
}
}Alternativamente, agregue un bloque mcpHttpServer a mcp_servers.json y el daemon alojará ambos servidores en un solo proceso:
{
"mcpHttpServer": { "port": 9191 },
"mcpServers": { ... }
}Consulte §4.7 de la Guía de usuario para la referencia completa de configuración.
Operaciones y configuración de CLI
# Interactive server setup wizard
warmplane server add
# Import settings from Claude Desktop or Cursor
warmplane config import
# Hot-reload in-memory workers from mcp_servers.json without restarting
warmplane reload
# Inspect & test servers
warmplane server list
warmplane server test github
# Ecosystem config import (Claude Desktop, Cursor, Zed)
warmplane config import
# Aliases and Policies
warmplane config alias set tool git-commit github.create_commit
warmplane config policy allow "github.*" "fetch.*"
# Capability and Execution CLI (supports --profile <name>)
warmplane list-capabilities --profile coding
warmplane search-capabilities "triage logs" --limit 5 --profile coding
warmplane describe-capability db.query --profile coding
warmplane call-capability db.query \
--params '{"query":"SELECT 1"}' \
--request-id req-101 --actor-id user-7 \
--idempotency-key op-20-run-1 \
--profile coding
warmplane read-resource fs.readme --profile coding
warmplane get-prompt prompt.code-review --arguments '{"code":"fn main() {}"}' --profile coding
warmplane list-catalog-events --after evt_3
warmplane cancel-operation req-101Aspectos destacados de rendimiento
Warmplane está diseñado con abstracciones de costo cero en Rust puro, manteniendo los bucles de agentes ágiles:
50.4 ns Validación de caché ETag (
If-None-Match$\rightarrow$304 Not Modified)159.8 ns Deduplicación de aciertos de caché idempotente
1.58 µs Hash de versión de catálogo incremental SHA-256 ($N=10$)
15.9 µs Búsqueda de capacidades híbrida filtrada ($N=50$)
372.1 µs Búsqueda de etiquetas léxicas en memoria sin asignación en 1,000 herramientas
👉 Consulte los puntos de referencia completos y la metodología de perfilado en docs/PERFORMANCE.md.
Resumen de características
Característica | Desde | Resumen |
Extensión de tareas SEP-2663 y HITL unificado | v0.24.0 | Soporte oficial de |
Idempotencia exactamente una vez y libro de reproducción | v0.23.0 | Derivación determinista de claves automáticas ( |
Motor de biblioteca Rust integrado | v0.23.0 | Interfaz de biblioteca directa en proceso ( |
Modo de servidor MCP HTTP/SSE | v0.22.0 | Servidor MCP HTTP/SSE transmisible ( |
Manejo de señales y apagado elegante | v0.21.0 | Cancelación inmediata de señales ( |
3. Ejecutar y conectar |
# Start HTTP daemon & Web Control Deck on http://127.0.0.1:9090
warmplane daemon
# Expose warmplane as a standard stdio MCP facade to Claude Desktop or Cursor
warmplane mcp-serverCapacidades principales
Capacidad | Versión | Descripción |
Control Deck Tasks & HITL UI | v0.25.0 | Centro de Tasks y Approvals en vivo, formularios de resolución de entradas MRTR, conmutador asíncrono del Playground y API de tareas integrada |
SEP-2663 Tasks Extension | v0.24.0 | Capacidad no bloqueante |
In-Process Embedded Rust Engine | v0.23.0 |
|
Streamable HTTP/SSE MCP Transport | v0.22.0 | Transporte MCP |
Named Server Constellations | v0.21.0 | Agrupación de perfiles ( |
Multi-Tenant RBAC | v0.20.0 | Acceso mediante tokens basado en roles, particionado determinista del catálogo, propagación del contexto de inquilino |
Client-Delegated MCP Sampling | v0.19.0 | Muestreo RPC inverso ( |
Persistent State Subsystem | v0.18.0 | Almacenamiento en disco atómico y resistente a reinicios ( |
Graceful Shutdown & Signals | v0.18.0 | Manejo robusto de |
MCP Resource & Prompt Studio | v0.17.0 | Explorador de recursos de 360°, renderizador de plantillas de prompts con formularios dinámicos y sincronización SSE |
Multi-Step Batch Pipelines | v0.17.0 | Editor visual de pipelines con interpolación de parámetros por referencia ( |
Enterprise Security & Auth | v0.16.0 | Protección de middleware basada en tokens, verificación HMAC de auditoría WORM y enmascaramiento de secretos |
Fault Tolerance & Supervision | v0.15.0 | Arranque degradado, interruptores de circuito por servidor, supervisión de reinicio con backoff exponencial |
Agent Enrichment Suite | v0.14.0 | Búsqueda de fachada, destilación de contexto ( |
HITL Approval Engine | v0.13.0 | Motor de aprobación con puerta de operador, suspensión, edición de argumentos y despacho de webhooks HMAC |
WORM Audit & SIEM | v0.12.0 | Registro de auditoría de solo anexión encadenado por hash SHA-256, API de verificación y exportación SIEM a Splunk/Webhook |
Control Deck Web UI | v0.11.0 | Panel web embebido independiente para servidores, playground de pruebas, políticas y telemetría |
Dynamic Hot-Reloading | v0.11.0 | Montaje/desmontaje ascendente sin tiempo de inactividad, |
Registro de cambios
v0.25.2 — Empaquetado de bundles MCPB y pipeline del registro MCP oficial
Formato de distribución MCPB (
packaging/mcpb/,.github/workflows/release-artifacts.yml): Se añadió la compilación y el empaquetado automatizados de Model Context Protocol Bundles específicos de plataforma (.mcpb) que contienen binarios independientes, configuraciones de arranque y manifiestos estandarizados (manifest_version: "0.3").Metadatos oficiales del registro MCP (
server.json): Los flujos de trabajo de publicación ahora generan automáticamente metadatos de registro canónicos que cumplen con la especificación oficialserver.schema.json(io.github.warmplane/warmplane) con resúmenes SHA-256 de paquetes multiarquitectura.Homebrew Tap (
Warmplane/homebrew-tap): Se configuró la distribución oficial del tap con fórmulas precompiladas para macOS y Linux (brew tap warmplane/tap && brew install warmplane).
v0.25.1 — Corrección de la máquina de estados de finalización de tareas asíncronas
Finalización de tareas asíncronas (
src/engine/mod.rs,src/http_v1/execute.rs): Se resolvió una regresión por la cual las ejecuciones de capacidades asíncronas (async_task: trueoPrefer: respond-async) y las tareas reanudadas tras respuestas de entrada Human-in-the-Loop (HITL) permanecían indefinidamente enTaskStatus::Working. Los workers en segundo plano ahora registran de forma fiable el estado terminal (TaskStatus::Completedconresult, oTaskStatus::Failedcon error estructurado) directamente enTaskRegistry.Pruebas de ciclo de vida de tareas integradas (
tests/embedded_tests.rs,tests/tasks_tests.rs): Se añadieron pruebas de integración automatizadas exhaustivas que verifican queget_taskylist_tasksobservan el estado terminalcompletedcon la carga útil ascendente tras el envío de aprobaciones y llamadas asíncronas directas.
v0.25.0 — Tasks y UI HITL del Control Deck, API de tareas integradas en proceso
Centro de Tasks y Approvals del Control Deck (
ui/src/components/tasks.ts): Se actualizó la cola de revisión para convertirla en un panel unificado de Tasks y Approvals (data-tab="tasks") con KPIs de estado en vivo (input_required,working,completed,cancelled/failed), tarjetas de acción interactivas con formularios de resolución de entradas MRTR incrustados (booleanos, editores JSON, campos de texto), temporizadores de cuenta regresiva TTL y controles de cancelación cooperativa.Modo de ejecución asíncrona del Playground MCP: Se añadió el conmutador "⚡ Async Task Mode" en el playground de pruebas de herramientas y una vista previa interactiva de tarjeta de tarea
202 Acceptedcon navegación en 1 clic al panel de revisión de Tasks y Approvals.API de gestión de tareas en Rust integrada (
ControlPlaneHandle): Se expusieron métodos directos de gestión de tareas en elControlPlaneHandleen proceso (list_tasks,get_task,update_task,cancel_task), lo que permite a las aplicaciones embebidas gestionar tareas asíncronas SEP-2663 sin la sobrecarga de serialización HTTP o JSON-RPC.Integración del Overview Cockpit y las insignias: Se añadió la tarjeta de telemetría "Tasks & HITL State" en el Overview Cockpit y se vincularon las insignias de la barra lateral en tiempo real a las tareas pendientes
input_required.
v0.24.0 — Extensión de tareas SEP-2663, ejecución HITL unificada y alineación con la hoja de ruta de MCP
Implementación de la extensión de tareas SEP-2663 (
src/tasks.rs): Se implementó la capacidad oficialio.modelcontextprotocol/taskscon almacenamiento persistente atómico (tasks.json), detección segura de caducidad TTL y canales de respuesta de entrada oneshot (TaskWaitSender/TaskWaitReceiver).Máquina de estados unificada de aprobaciones HITL y tareas asíncronas: Se unificaron los flujos de trabajo de aprobación Human-in-the-Loop y las ejecuciones asíncronas de herramientas directamente sobre el ciclo de vida SEP-2663. Las ejecuciones de herramientas que requieren aprobación mediante puerta de operador o que se solicitan con
async_task: true/Prefer: respond-asyncdevuelven202 AcceptedconresultType: "task"ystatus: "input_required", incluyendo losinputRequestsMRTR.API REST HTTP de tareas (
/v1/tasks/*): Se añadieron endpoints REST completos para la inspección y el control de tareas:GET /v1/tasks(listar),GET /v1/tasks/:id(consultar estado/resultado),POST /v1/tasks/:id/update(enviarinputResponsespara despertar al worker) yPOST /v1/tasks/:id/cancel(cancelación cooperativa).Integración del servidor de fachada MCP: Se expusieron las herramientas
task_get,task_updateytask_cancelen el servidor de fachada MCP para la orquestación directa de agentes.Subcomandos de tareas de la CLI y flag de ejecución asíncrona: Se añadieron
warmplane tasks list,warmplane tasks get <id>,warmplane tasks update <id> -r '<json>',warmplane tasks cancel <id>y el flag--async-taskawarmplane call-capability.Análisis estratégico de la hoja de ruta del protocolo MCP: Se publicó
docs/MCP_ROADMAP_REPORT.mdque analiza la hoja de ruta oficial de MCP y la alineación arquitectónica de Warmplane en transportes sin estado, enrutamiento sin sesiones y descubrimiento progresivo de capacidades.
v0.23.0 — Motor Rust integrado, plano de control en proceso y refactorización del adaptador de fachada
Biblioteca de motor Rust integrada en proceso (
EmbeddedWarmplane,ControlPlaneHandle): Se expuso Warmplane como una biblioteca puramente en proceso, sin la sobrecarga de HTTP, proceso hijo daemon o serialización JSON-RPC. Los llamadores inician el motor directamente en su propio runtime de Tokio medianteEmbeddedWarmplane::start(config)oEmbeddedWarmplane::start_from_path(path)e interactúan a través de los métodos tipados deControlPlaneHandle(list_capabilities,describe_capability,search_capabilities,call_capability,batch_call,read_resource,get_prompt,health_status).Envoltorios genéricos fuertemente tipados y modelos de error: Se añadieron
Envelope<T>,WarmplaneError,CapabilitySummary,CapabilityDetail,ExecutionOptions,ReadResourceOptions,GetPromptOptionsyEngineHealthStatusenwarmplane::engine::types, preservando diagnósticos estructurados (request_id,trace_id,retry,operator) para la orquestación programática.Refactorización del adaptador de fachada del servidor MCP Stdio: Se refactorizó
mcp_server.rspara delegar toda la ejecución de llamadas a herramientas, búsqueda, descripciones, ejecución por lotes y despacho de recursos/prompts directamente aControlPlaneHandle, eliminando la lógica duplicada y unificando los pipelines de ejecución.Suite de pruebas de integración del motor integrado: Se añadieron pruebas de integración dedicadas en
tests/embedded_tests.rsque cubren el inicio del ciclo de vida integrado, el manejo de servidores degradados, la inspección del estado de salud y la cancelación ordenada.
v0.22.0 — Transporte MCP HTTP/SSE transmisible, Playground interactivo y pulido de la UI
Transporte de servidor MCP HTTP/SSE transmisible (
mcp-http-server): Se construyeron endpoints de servidor MCP HTTP/SSE independientes y co-alojados con el daemon (/mcp/sse,/mcp/messages), lo que permite a agentes de IA remotos e IDEs (Cursor, Windsurf, Claude Desktop) conectarse a través de redes HTTP/SSE estándar con keep-alives automáticos y cero deriva del cliente.Co-alojamiento y configuración con el daemon (
mcpHttpServer): Se añadió soporte de configuración de primera clase (mcpHttpServer) que permite la inicialización automática en segundo plano de instancias del servidor MCP HTTP/SSE directamente junto al daemon HTTP/v1principal.Restricción de perfil y puerta de autenticación vinculada: Se integró la restricción de perfil (
profile) en el transporte del servidor MCP, aislando estrictamente las herramientas y los recursos expuestos a clientes remotos. Se aplicó automáticamente la autenticación mediante token bearer al enlazar a interfaces de red públicas no loopback (0.0.0.0/ IPs externas).Ergonomía del Playground MCP interactivo: Se añadieron inyección de plantillas de ejemplo, cambio dinámico de formato, generación de argumentos basada en esquemas y validación de parámetros en vivo en el Playground MCP del Web Control Deck.
Transiciones de UI, comprobaciones de colisión y pulido: Se deduplicaron los encabezados de página en las pestañas del panel, se introdujeron transiciones CSS cubic-bezier muy fluidas, fondos modales animados con soporte de accesibilidad
prefers-reduced-motiony se añadieron protecciones contra colisiones con derivación automática de ID de servidor único.
v0.21.0 — Constelaciones de servidores con nombre (perfiles), ciclo de vida de señales y ecosistema de integradores
Constelaciones de servidores con nombre (Perfiles): Se añadió soporte de perfiles de primera clase (
ProfileConfig) que permite agrupar subconjuntos de servidores MCP ascendentes relevantes para una tarea en constelaciones con nombre (p. ej.coding,research,data_science).Selección dinámica de perfiles y partición de ETags con ámbito: Se añadió soporte de ámbito de perfil por solicitud mediante cabeceras
X-Warmplane-Profiley parámetros de consulta?profile=. Los endpoints de catálogo (/v1/capabilities,/v1/resources,/v1/prompts) y la búsqueda (/v1/capabilities/search) eliminan dinámicamente los elementos fuera del perfil activo y mantienen ETags deterministas particionados por perfil (sha256:...-p:<profile_id>).Filtrado de perfiles stdio de la fachada MCP: Se añadió la opción CLI
--profile <name>awarmplane mcp-serverywarmplane list-capabilities, proporcionando a los hosts de agentes una superficie de herramientas y recursos MCP estrictamente limitada.Centro de perfiles del Web Control Deck: Se añadió un gestor visual interactivo de perfiles en el panel de la interfaz web con cambio de constelación activa en 1 clic, alternancia de servidores y filtrado de catálogo en vivo.
Manejo de señales y refuerzo del cierre de procesos: Se integró el envío inmediato de
tokio_util::sync::CancellationTokenenSIGINT(Ctrl-C) /SIGTERM, se desbloqueó el vaciado del flujo SSE, se añadió prevención de procesos huérfanos mediantekill_on_drop(true)y se aplicó un tiempo de espera de cierre de seguridad acotado de 3 segundos.Guías para el ecosistema de desarrolladores e integradores: Se publicaron la Guía oficial para integradores de Rust, la Guía para integradores de TypeScript y el Editorial sobre la arquitectura de idempotencia.
v0.20.0 — RBAC multiinquilino y partición determinista del catálogo
Motor RBAC multiinquilino (
src/rbac): Se construyó un motor de control de acceso basado en roles compatible con tokens API estáticos, asignaciones de token a rol en la configuración (rbac.tokens) y verificación de firma JWT simétrica HMAC-SHA256 criptográfica con clave secreta configurable (rbac.jwt_secret).Partición determinista del catálogo y poda por ámbito: Se reestructuraron
/v1/capabilities,/v1/resources,/v1/promptsy/v1/capabilities/searchpara filtrar dinámicamente los elementos según el rol del llamador y la política efectiva. Los elementos no autorizados son completamente invisibles en los listados de catálogo y las consultas de búsqueda.Inyección de contexto de inquilino y auditoría de no repudio: Se inyectó
TenantContextresuelto (tenant_id,role,actor_id,grant_id,effective_policy) en las extensiones de solicitud mediante el middleware de guardia RBAC (src/rbac/middleware.rs). Los metadatos verificados de inquilino/actor se vincularon automáticamente en los eventos de auditoría WORM.Anulaciones de políticas de rol y delegación HITL: Se admitieron definiciones de roles detalladas (
RolePolicyConfig) con reglas personalizadasallow,deny,require_approvalyredact_keys, que anulan o se cruzan con la política base del sistema.Suite de pruebas de integración: Se añadieron pruebas de integración RBAC dedicadas (
tests/rbac_integration.rs) que cubren autenticación por token, filtrado de búsqueda, aislamiento de catálogo, aplicación de límites de políticas y verificación de auditoría multiinquilino.
v0.19.0 — Muestreo MCP delegado por el cliente, bucle de supervisión HTTP/SSE y refuerzo
Muestreo MCP delegado por el cliente (
sampling/createMessage): Se implementó el manejo de RPC inversa de finalización LLM delegada por el cliente (src/sampling.rs). Los servidores o agentes ascendentes envían solicitudes de muestreo, generando tickets rastreados (samp_<timestamp>_<seq>) con endpoints de ciclo de vida síncronos de sondeo largo o asíncronos (POST /v1/sampling/create_message,GET /v1/sampling/requests,GET /v1/sampling/requests/:id,POST /v1/sampling/requests/:id/respond).Estado de muestreo persistente: Se añadió almacenamiento en disco atómico y resistente a reinicios (
sampling.json) medianteAtomicFile<HashMap<String, PendingSamplingRequest>>con tareas automáticas de caducidad y recolección.Supervisor HTTP/SSE transmisible autocurativo: Se integraron servidores MCP remotos HTTP/SSE en el bucle de supervisión con retroceso de reconexión automático, reconciliación de catálogo e informes de estado de arranque degradado.
Refuerzo de seguridad y DoS: Se limitaron los embeddings de capacidades candidatas para la búsqueda vectorial semántica a
MAX_VECTOR_SEARCH_CANDIDATES = 250; se acotaron las consultas de exportación de auditoría aMAX_IN_MEMORY_AUDIT_EVENTS(20.000); se impusieron comprobaciones de la cabecera Host y del origen de bucle invertido en las solicitudes del proxy OAuth.Puertas de CI y verificación de tipos TypeScript: Se añadió la verificación de tipos TypeScript automatizada (
tsc --noEmit) al pipeline de CI de la interfaz web y se restringieron los disparadores de push amainpara eliminar ejecuciones duplicadas.Cumplimiento pragmático de Rust: Se logró una adherencia del 100% en los 51 archivos fuente con cabeceras de cumplimiento estándar (
// Rust guideline compliant YYYY-MM-DD).
v0.18.0 — Subsistema de estado persistente, cierre gradual, automatización de CI de la UI y suite de pruebas E2E
Subsistema de estado persistente: Se añadió almacenamiento en disco atómico y resistente a reinicios (
AtomicFile<T>yStateDirectory) para aprobaciones pendientes de humano en el bucle (approvals.json), registros de ejecución idempotentes (idempotency.json), tokens OAuth2 (oauth_tokens.json) y eventos de mutación de catálogo (catalog_events.json). Se añadió el bloquestateenMcpConfigy los comandos CLIwarmplane config state show/set.Manejo gradual de señales y cierre de subsistemas: Se añadió captura robusta de
SIGINT(Ctrl+C) ySIGTERMen Unix y Windows, se integró el vaciado gradual del servidor HTTP, los vaciados del trabajador de auditoría asíncrono (AuditWorkerMsg::FlushAndShutdown) y la terminación limpia de los procesos de subprocesos stdio al apagar.Cumplimiento pragmático de Rust: Se logró una adherencia del 100% en los 51 archivos fuente con cabeceras de cumplimiento estándar (
// Rust guideline compliant YYYY-MM-DD).Compilación automatizada de la interfaz web en CI y puerta de deriva: Se integró Bun en el CI de GitHub Actions (
ci.yml) y en los pipelines de publicación (release-artifacts.yml), con pasos de compilación automatizados y detección estricta de deriva mediantegit diff --exit-code ui/dist/index.html.Suite de pruebas integral de extremo a extremo: Se implementó un banco de pruebas E2E dedicado (
tests/e2e_tests.rs) que ejercita negociaciones de protocolo MCP stdio, transmisión SSE TCP en vivo, recarga de configuración en caliente, recorridos completos de proveedor OAuth2 simulado según RFC 8414 con renovación de tokens 401 silenciosa y recuperación del supervisor.
v0.17.0 — Explorador MCP 360°, constructor visual de pipelines por lotes y paginación de auditoría WORM
Búsqueda multifactorial y paginación de auditoría WORM: Se añadió búsqueda de subcadenas sin distinción de mayúsculas y minúsculas en 11 campos de metadatos, filtros de estado de resultado y servidor, particionado de paginación con límite/desplazamiento (
/v1/audit/events) y descargas de exportación CSV y JSONL conscientes del contexto (/v1/audit/export).Explorador de recursos MCP y lector de contenido en vivo: Se añadió un navegador de descubrimiento de recursos de 360° con insignias de esquema de protocolo (
file://,postgres://,github://,memory://,sqlite://, etc.), visor de metadatos/MIME y lector de contenido en vivo compatible con destilación de contexto (_jsonpath,_limit_lines,_truncate_bytes).Estudio de plantillas de mensajes MCP: Se añadió navegación dinámica de plantillas de mensajes y generación de formularios de argumentos con insignias de validación
REQUIRED, que muestran los envoltorios de mensajes de sistema/usuario resueltos (/v1/prompts/get).Cancelación de operaciones en curso: Se añadieron controles interactivos de cancelación de ejecución en la interfaz con temporizadores de ejecución en vivo y cancelación cooperativa instantánea (
POST /v1/operations/:id/cancel).Constructor visual de pipelines por lotes de varios pasos: Se añadió un editor modal interactivo de pipelines para encadenar herramientas con interpolación de variables de parámetros (
${steps[0].result.id}) y tolerancia a fallos por nodo (POST /v1/tools/batch_call).Sincronización de estado SSE en tiempo real: Se conectó el flujo SSE
/v1/resources/updatespara actualizar automáticamente los recursos, mensajes y fuentes de catálogo en el Control Deck.
v0.16.0 — Refuerzo de seguridad empresarial, integridad criptográfica de auditoría y resiliencia del ciclo de vida
Autenticación por token API y protección con middleware: Se añadió el parámetro CLI
--auth-token, el campo de configuraciónMcpConfig.auth_tokeny la compatibilidad con la variable de entornoWARMPLANE_AUTH_TOKENpara proteger de forma segura los endpoints del daemon con autenticación Bearer/X-Warmplane-Key.Seguridad del proxy OAuth y enmascaramiento de secretos: Se reforzó el listener del proxy OAuth con validación de Host y bloqueo de navegadores de origen cruzado; se enmascararon los secretos
stateycode_challengePKCE en la salida de registros.Integridad criptográfica de auditoría WORM y firma HMAC: Se incluyeron los 20 campos de metadatos persistidos en los resúmenes de la cadena hash (
work_item_id,client_ip,resource_uri,execution_latency_us,error_message); se añadieron cálculos de resumen con clave HMAC-SHA256 y generación de puntos de control para anclaje criptográfico externo.Saneamiento y redacción de secretos: Se mejoró la coincidencia de redacción sin distinción de mayúsculas y minúsculas con una lista integrada de claves sensibles predeterminadas (
token,secret,password,key,authorization, etc.); se restringieron los eventos de webhook HITL externos a solo transmitirsanitized_args; se sanearon los secretos antes de imprimirlos en los comandos CLI.Coordinación del supervisor y del interruptor de circuito: Se restablecieron automáticamente los interruptores de circuito al reconectar el supervisor correctamente; se añadieron límites de sondeo de vuelo único en el estado
HalfOpendel interruptor de circuito; se implementó un retroceso de reinicio de ventana deslizante de 60 segundos; se podaron los elementos eliminados durante la reconciliación del catálogo; se limpiaron los interruptores de circuito al desmontar el servidor.Límites de recursos y controles de seguridad: Se aplicaron los presupuestos de ejecución
MAX_BATCH_STEPS = 50yDEFAULT_BATCH_TIMEOUT_MS = 60_000; se limitó la expansión de salida JSONPath con comodines a 10.000 elementos y los resultados de búsqueda a 100; se devolvieronPOLICY_DENIED(HTTP 403) y 404 para la cancelación de operaciones desconocidas; se sanearon las exportaciones de auditoría CSV contra la inyección de fórmulas.Puertas de calidad de CI y auditorías de dependencias: Se integró el escaneo nativo
cargo-auditen el CI de GitHub Actions; se actualizaron las dependencias resolviendo todos los avisos notificados.Indicador de versión CLI: Se habilitaron los indicadores estándar
--versiony-Ven el analizador del binariowarmplane.
v0.15.0 — Tolerancia a fallos, resiliencia de arranque y paridad de funciones del Control Deck
Resiliencia de arranque y inicio degradado: Arranque gradual del daemon cuando los servidores ascendentes (como Docker, endpoints SSE remotos o herramientas no configuradas) fallan o agotan el tiempo de espera. Los servidores con errores se marcan como
degradedsin bloquear el daemon ni obstaculizar otros ascendentes saludables.Supervisor de procesos e interruptores de circuito: Interruptores de circuito por servidor y globales (
failureThreshold,cooldownMs,autoRestart,maxRestarts) con seguimiento de estado (CLOSED,OPEN,HALF-OPEN) y supervisión de reinicio con retroceso exponencial.Paridad completa de funciones de la interfaz web:
Centro de servidores: flujo de edición de tarjetas de servidor (
✏️ Edit), insignias de telemetría de interruptor de circuito en vivo e indicadores de resiliencia del servidor.Asistente de plantillas: acordeón de configuración de tolerancia a fallos y supervisor directamente dentro de la configuración de servidor curada en 1 clic.
Parque de juegos interactivo: controles de destilación de contexto (
_jsonpath,_limit_lines,_truncate_bytes) y mediciones de latencia de ejecución.Tarjetas de resumen responsivas en cuadrícula bento con puntos indicadores de salud en tiempo real (
connected🟢,degraded🟡,error🔴).
Configuración de resiliencia CLI:
warmplane config resilience setywarmplane config resilience showpara la gestión de interruptores de circuito sin interfaz gráfica.
v0.14.0 — Suite de enriquecimiento de agentes: búsqueda de fachada, destilación de contexto y procesamiento por lotes de varios pasos
Búsqueda híbrida de fachada MCP: Se expuso la herramienta
capability_searcha través de la fachada stdio MCP con filtros de palabra clave, etiqueta, ID de servidor y modo de ejecución.Destilación y truncamiento de contexto: Se añadieron los modificadores
_jsonpath,_limit_linesy_truncate_bytesa/v1/tools/callycapability_callpara proteger las ventanas de contexto LLM de salidas sobredimensionadas.Llamadas por lotes encadenadas de varios pasos: Se añadieron
POST /v1/tools/batch_callycapabilities_batch_callpara ejecuciones de herramientas dependientes en un solo recorrido de ida y vuelta con interpolación de referencias$step.field.
v0.13.0 — Motor de aprobación de humano en el bucle (HITL) y webhooks firmados
Approval Interceptor: Suspensión basada en políticas para llamadas de capacidades sensibles (
requireApproval).Operator REST API: Endpoints para listar (
/v1/approvals), inspeccionar, aprobar con argumentos modificados (/v1/approvals/:id/approve) o rechazar (/v1/approvals/:id/reject).Signed HMAC Webhooks: Despacho de webhooks en tiempo real con cabeceras de firma HMAC SHA-256 en eventos del ciclo de vida de aprobaciones.
Configurable TTL Expiration: Expiración automática por tiempo de espera (
approvalTimeoutSecs) que devuelve sobres de cancelación estructurados.
v0.12.0 — Registro de auditoría WORM criptográfico y transmisión SIEM
Encadenamiento lineal de hashes SHA-256 de solo añadidura sobre eventos de ejecución de herramientas y decisiones HITL.
Endpoints de verificación y exportación de auditoría (
/v1/audit/...), ingesta de Splunk HEC y Webhook genérico.
v0.11.0 — Control Deck Web UI y recarga dinámica en caliente de upstream
Control Deck Web UI: Panel web integrado sin dependencias en
/uiy/con telemetría en vivo, administrador de servidores, área de pruebas interactiva de herramientas, administrador de políticas/redacción y registro de alias.Zero-Downtime Dynamic Upstream Mounting: Montar y desmontar dinámicamente trabajadores upstream de stdio, HTTP y OAuth2 a través de REST/UI/CLI sin reiniciar el proceso demonio.
Dynamic Catalogs & ETags: Gestión de estado segura para concurrencia con recálculo automático de ETag SHA256 y notificaciones de recursos SSE en cambios de servidor.
Explicit Config Hot-Reload: Se añadió el comando CLI
warmplane reloady el endpointPOST /v1/config/reloadpara reconciliar limpiamente los trabajadores en memoria con las ediciones manuales demcp_servers.json.
v0.10.0 — Gestión de configuración CLI e importadores de ecosistema
Se añadieron los comandos
warmplane server(add,remove,list,get,test) con asistentes interactivosinquirey automatización sin interfaz controlada por banderas.Se añadió
warmplane config(init,show,import,alias,policy) para mutaciones de configuración seguras y transaccionales.Se añadió auto-descubrimiento e importación desde ajustes de Claude Desktop, Cursor y Zed.
Se añadieron escrituras atómicas de archivos de configuración (
fs::rename) que previenen la corrupción de JSON.
v0.9.0 — Cumplimiento de especificación MCP 2026-07-28, MRTR y suscripciones
Se actualizó al SDK oficial de MCP para Rust
rmcp 3.1.2yreqwest 0.13.Se estableció la versión de protocolo predeterminada a
"2026-07-28"con compatibilidad hacia atrás para"2025-11-25".Se añadió soporte para Solicitudes de Múltiples Viajes de Ida y Vuelta (MRTR) (
input_responsesyrequest_state) en HTTP REST, fachada stdio y trabajadores upstream.Se añadieron sugerencias de caché (
ttl_ms: 300000,cache_scope: "public") y ordenamiento alfabético determinista en los listados de catálogo.Se añadió la herramienta
subscriptions_listena la fachada stdio y el flujo SSE/v1/resources/updatespara notificaciones en tiempo real.Se validó la verificación de callback
issRFC 9207 / SEP-2468 para flujos OAuth 2.0.
v0.8.0 — Embeddings vectoriales semánticos y pipeline FastEmbed ONNX
Se integró el pipeline de embeddings FastEmbed ONNX con similitud de vectores coseno densos bajo el opcional
--features semantic-search.Fusión híbrida de rango recíproco que combina coincidencia de palabras clave BM25 y búsqueda de vectores densos.
v0.7.0 — Modernización pragmática de Rust y patrones de constructor
Adopción completa de las Directrices Pragmáticas de Rust de Microsoft (AGENTS.md). Se implementó el Builder Pattern (M-INIT-BUILDER) para el estado central (AppStateBuilder), filtros de búsqueda (SearchFilterBuilder) y contexto de solicitud (RequestContextBuilder). Se mejoró la seguridad de errores (M-PANIC-IS-STOP), el registro estructurado (M-LOG-STRUCTURED), la documentación canónica (M-CANONICAL-DOCS) y la interoperabilidad flexible de traits (M-IMPL-ASREF).
v0.6.0 — Idempotencia, cancelación y metadatos de reintento
Pase Idempotency-Key / X-Idempotency-Key para deduplicar llamadas de herramientas concurrentes. Aborte cualquier solicitud en curso mediante el endpoint de cancelación o CLI. Cada sobre de respuesta ahora incluye metadatos estructurados "retry" (classification + state) para lógica de reintento consciente del orquestador.
v0.5.0 — Contexto de solicitud y correlación
RequestContext estructurado (operation_id, work_item_id, actor_id, grant_id) entrelazado a través de todos los sobres de ejecución y tramos de trazado. Respaldo de cabeceras HTTP (X-Request-ID, X-Operation-ID, X-Actor-ID, X-Grant-ID).
v0.4.0 — Versionado de catálogo y validación de caché
Versión de catálogo SHA-256. Cabeceras ETag en todas las lecturas de catálogo, solicitudes condicionales If-None-Match que devuelven 304 Not Modified. Fuente de cambios GET /v1/catalog/events con paginación basada en cursor.
v0.3.0 — Búsqueda híbrida
POST /v1/capabilities/search con puntuación BM25, embeddings vectoriales FastEmbed opcionales, filtros de etiqueta/ID de servidor y resultados clasificados.
POST /v1/capabilities/search con puntuación BM25, embeddings vectoriales FastEmbed opcionales, filtros de etiqueta/ID de servidor y resultados clasificados.
Documentación
Document | Description |
Guía de uso completa: configuración, modos, todos los comandos CLI, autenticación, políticas | |
Metodología de evaluación comparativa, percentiles de latencia y resultados de perfilado | |
Especificación OpenAPI 3.1 | |
Esquema JSON para | |
Registros estructurados, configuración OTLP, correlación de trazas | |
Variantes de compilación, notas de distribución | |
Manual de despliegue en producción |
This server cannot be installed
Maintenance
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
- FlicenseNot gradedqualityBmaintenanceAggregates multiple child MCP servers into a single MCP server endpoint, enabling clients to use various tools (e.g., filesystem, Brave Search) through one interface.34
- AlicenseNot gradedqualityDmaintenanceAggregates multiple MCP servers into a single endpoint, enabling LLM clients to access tools, resources, and prompts from various backends through one connection.15MIT
- AlicenseNot gradedqualityBmaintenanceCentralized MCP control plane that proxies multiple upstream MCP servers with tool namespacing, filtering, policy enforcement, audit logging, and health checks.16MIT
- FlicenseNot gradedqualityAmaintenanceActs as a gating proxy for MCP servers, merging tools and applying policy, verification, and audit layers.
Related MCP Connectors
Hosted AgentLux MCP server for marketplace, identity, creator, services, and social flows.
Agent-native collaboration network: orchestrate a team of long-running agents from any MCP client.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Warmplane/warmplane'
If you have feedback or need assistance with the MCP directory API, please join our Discord server