Open Source · Rust-Native Runtime v0.28.0 · Real-Time MCP list_changed & Native Passthrough Tools

Keep your MCP
sessions warm & hot

Warmplane is the local control plane that multiplexes upstream Model Context Protocol (MCP) servers behind one hot, policyable runtime. Cut token overhead by up to 96% with lazy capability indexes, Multi Round-Trip Requests (MRTR), hybrid vector search, fine-grained RBAC governance, and deterministic execution envelopes.

View on GitHub Read User Guide →
95.8%
Copilot MCP Token Savings
< 1 ms
Warm Session Reuse Latency
4
Client Modes (HTTP / CLI / MCP / UI)
0
Tokens on ETag 304 Cache Hit
AI Client (Claude / Cursor / CLI)
Single Gateway Endpoint
Warmplane Runtime
Policy • Hybrid Search • Idempotency • ETag
Upstream MCP Sessions (Hot)
SQLite • Filesystem • GitHub • Postgres
// High-Performance Local Control Plane Warmplane manages the lifecycle of upstream MCP servers. - Maintains warm sub-process stdio & HTTP/SSE sessions - Eliminates startup penalties on tool invocations - SEP-2663 Tasks Extension (`io.modelcontextprotocol/tasks`) - Unified Human-in-the-Loop (HITL) approval state machine - Enforces fine-grained RBAC allow/deny rules & key redaction - Exposes BM25 + ONNX vector embedding hybrid search - Embedded Rust engine (`EmbeddedWarmplane`, `ControlPlaneHandle`) - Provides standardized execution envelopes & OTLP tracing

The description tax is real

Before an LLM agent executes a single tool call, it ingests the full schema catalog of every connected MCP server on every turn. As server count grows, prompt tokens balloon rapidly—adding cost, latency, and context distraction.

Direct MCP Pattern
Uncontrolled Overhead
Every turn re-transmits full JSON schemas, detailed descriptions, resource trees, and prompt definitions from every upstream server.
54,715 tokens per discovery pull (GitHub Copilot MCP)
547,150 tokens over a 10-turn mixed agent loop
No cross-server caching, no search, no policy profile
With Warmplane
Compact Control Plane
Index-first discovery with lazy schema expansion. Agents pull compact alias indices and query expanded schemas on demand.
2,386 tokens per discovery pull (95.6% reduction)
22,895 tokens over same 10-turn mixed loop
SHA-256 ETag caching → 0 tokens on 304 Not Modified

Proven Token Savings

Reproducible evaluation measured with the cl100k_base tokenizer. Run the evaluation suite in eval/token-efficiency/ to verify on your own workloads.

GitHub Copilot MCP Suite
95.8%
Token Savings · 10-turn mixed loop
Discovery pull 54,715 → 2,386 tokens
5-turn tool loop 260,005 → 11,173 tokens
10-turn mixed loop 547,150 → 22,895 tokens
Filesystem Control Suite
58.2%
Token Savings · 10-turn mixed loop
Discovery pull 2,552 → 1,066 tokens
5-turn tool loop 12,760 → 5,349 tokens
10-turn mixed loop 25,520 → 10,669 tokens
Token Efficiency Benchmark | Measured Eval Harness Output Tokenizer: cl100k_base
Suite: github_copilot_only
Discovery      54,715 -> 2,386   (95.6% savings)
5-turn loop   260,005 -> 11,173  (95.7% savings)
10-turn mixed 547,150 -> 22,895  (95.8% savings)

Control: public_filesystem_only
Discovery       2,552 -> 1,066   (58.2% savings)
5-turn loop    12,760 -> 5,349   (58.1% savings)
10-turn mixed  25,520 -> 10,669  (58.2% savings)

Built for Hot Production Stacks

Everything ships in a single zero-dependency Rust binary compliant with Microsoft Pragmatic Rust guidelines.

Unified Control Plane
Unified Facade for Tools, Resources & Prompts
Build a clean, stable contract across heterogeneous upstream MCP servers. Enumerate compact aliases, fetch full schemas lazily, and route standard invocations with complete correlation.
Alias Registry Compact Schemas On-demand Expansion MCP Native Exposure Hybrid Search
v0.25.0 Spec Extension
SEP-2663 Tasks & Unified HITL
Official io.modelcontextprotocol/tasks capability: asynchronous long-running tool execution (202 Accepted + resultType: "task"), MRTR inputRequests delegation, cooperative cancellation, and persistent atomic task registry.
Vector & Lexical
Hybrid BM25 + Vector Search
Find the right tool by name or natural language intention using BM25 keyword matching plus optional ONNX vector embeddings.
v0.23.0 Resiliency
Exactly-Once Idempotency & Replay Ledger
Deterministic auto-key derivation (idk_<sha256>), X-Warmplane-Deduplicated caching, replay count tracking, WORM audit trail linking, and in-flight cancellation.
Multi-Tenant Governance
Fine-Grained RBAC & Policy Constellations
Named server constellations (profiles), static/JWT token auth, per-role policy overrides, dynamic catalog/search pruning, and automated secret redaction.
Observability & WORM
OTLP Traces, SIEM & Cryptographic Audit
Append-only SHA-256 hash-chained audit logging, Splunk/Webhook SIEM export, and end-to-end OpenTelemetry trace propagation across execution envelopes.
In-Process Rust Engine
🦀
Embedded Rust Control Plane
Embed Warmplane directly into Rust applications via EmbeddedWarmplane and ControlPlaneHandle — zero HTTP/IPC serialization overhead on your Tokio runtime.
Enterprise Auth
OAuth 2.1 & OIDC Client Infrastructure
Complete OAuth 2.1 authorization code flow with PKCE, dynamic discovery, scope accumulation, and silent background token refresh with rotation for HTTP upstreams.
Catalog Engine
Catalog Versioning & ETag Validation
SHA-256 state hashing with conditional 304 Not Modified responses, profile-scoped ETag partitioning, and cursor-based SSE event feeds for zero-token client revalidation.

Interactive Control Plane Endpoints

Explore the primary RESTful HTTP/v1 endpoints exposed by Warmplane daemon.

GET /v1/capabilities INDEX
GET /v1/tasks/:id TASK
POST /v1/capabilities/search SEARCH
POST /v1/tools/call EXEC
GET /v1/resources/updates SSE
POST /v1/completion/complete AUTO
// HTTP GET /v1/capabilities // ETag header matching yields HTTP 304 Not Modified (0 tokens) { "etag": "\"3a8f9c1b-p:default\"", "capabilities": [ { "alias": "db.query", "upstream_id": "sqlite.read_query", "summary": "Execute a read-only SQL query against SQLite", "policy_group": "read_only" }, { "alias": "fs.read", "upstream_id": "filesystem.read_file", "summary": "Read text contents of a file", "policy_group": "read_only" } ] }

Four Client Modes, One Engine

All interfaces share identical policy rules, session warmers, idempotency layers, and execution envelopes.

HTTP Daemon
RESTful /v1/ API exposing capability indices, SEP-2663 tasks, hybrid search, SSE streams, and operation cancellation.
warmplane daemon --config mcp_servers.json
MCP Server (Stdio / SSE)
Standard MCP facade. Point Claude Desktop, Cursor, or remote agents at Warmplane via stdio or streamable HTTP/SSE.
warmplane mcp-server --config mcp_servers.json
🦀
Embedded Rust Engine
Direct in-process library interface (EmbeddedWarmplane, ControlPlaneHandle) with zero HTTP/IPC overhead.
EmbeddedWarmplane::start(config).await
CLI Interface
Direct terminal commands for scripting, manual tool execution, SEP-2663 task control, and catalog inspection.
warmplane tasks list

Running in Three Minutes

Configure your upstreams, validate your profile, and start serving warm sessions.

mcp_servers.json json
{
  "port": 9090,
  "toolTimeoutMs": 15000,
  "capabilityAliases": {
    "sqlite.read_query": "db.query"
  },
  "policy": {
    "allow": ["db.*", "fs.*"],
    "deny":  ["fs.secret"],
    "redactKeys": ["token", "api_key"]
  },
  "mcpServers": {
    "sqlite": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-sqlite", "./db"]
    }
  }
}
Terminal Commands shell
# Install binary from source or crates.io
$ cargo install warmplane

# Interactively add servers, or import from Claude Desktop / Cursor
$ warmplane server add
$ warmplane config import

# Start the local control plane daemon
$ warmplane daemon --config mcp_servers.json

# Perform vector/keyword hybrid tool search
$ warmplane search-capabilities "query database" --limit 5

# Execute tool through control plane
$ warmplane call-capability db.query \
    --params '{"query":"SELECT 1"}' \
    --idempotency-key op-42-run-1
Open Source · MIT License

The cheapest token is
the one never sent

Start cutting AI agent token overhead while adding enterprise policy control.

GitHub Repository ↗ User Guide Performance Guide
Copied to clipboard!