mcpfold

Conecta cada servidor MCP sin pagar el impuesto de la ventana de contexto.

Documentación

mcpfold

Conecta cada servidor MCP sin pagar el impuesto del contexto.
Una configuración canónica, desplegada a cada cliente — cargando solo las herramientas que cada agente necesita, y resolviendo referencias de secretos en lugar de codificar valores.

npm version downloads VS Code Marketplace Open VSX CI license node

mcpfold demo: init → import → sync → diff, cutting tool-schema tokens ~80%

Demo regenerada desde la CLI real con pnpm demo:record (una grabación de asciinema + este SVG; un GIF se renderiza en CI vía demo/mcpfold.tape). Los nombres de servidor mostrados son ejemplos — sin implicación de respaldo.

v1.0.0 está disponible. La CLI local-first y el núcleo son estables y gratis para siempre, con licencia MIT — instala abajo. La nube alojada opcional (cuentas, sincronización de configuración, equipos) es auto-alojable. La documentación completa está en docs/; el historial de construcción paso a paso está en prd.json.


Por qué mcpfold

El impuesto del contexto

Cada servidor MCP que conectas vuelca su esquema completo de herramientas en la ventana de contexto de tu agente en cada turno — usado o no. El proxy local de mcpfold selecciona el conjunto de herramientas por cliente. En un benchmark reproducible — github (20 herramientas), supabase (15), playwright (10), 45 herramientas en total — seleccionar solo las 9 realmente necesarias reduce los tokens del esquema de herramientas en ~80% (7,476 → 1,497), sin configuración adicional porque el shim ya en la ruta de lanzamiento hace el filtrado.

…y una configuración para cada cliente

La configuración de MCP se dispersa entre clientes (Claude Code, Cursor, VS Code, Windsurf, Zed, …), y los formatos han divergido silenciosamente: VS Code usa la clave raíz servers, Zed usa context_servers, todos los demás usan mcpServers. Los secretos se codifican en JSON de texto plano. mcpfold mantiene un archivo canónico y lo despliega a cada cliente — resolviendo referencias de secretos (nunca valores) y seleccionando qué servidores y herramientas carga cada cliente.

  • Una única fuente de verdad — un mcp.config.jsonc comentado, seguro para versiones y validado por el editor.
  • Seguro para secretos — las configuraciones llevan referencias ${scheme:path}; los valores resueltos nunca tocan el disco.
  • Menos tokens — selección de herramientas por cliente y por agente vía un proxy local.
  • Portátil — salida determinista y estable en bytes para cada formato de cliente.

Instalación

Cada canal resuelve a la misma versión para una versión dada (una verificación de CI impone la paridad), así que puedes mezclarlos entre máquinas. Detalles completos en docs/install.md.

npm / npx — sin instalación necesaria para probarlo:

npx mcpfold init
npm install -g mcpfold      # or: pnpm add -g mcpfold   (installs `mcpfold` + the `mcpf` alias)

Homebrew (macOS / Linux):

brew install dj-pearson/tap/mcpfold

Scoop (Windows):

scoop bucket add mcpfold https://github.com/dj-pearson/scoop-bucket
scoop install mcpfold

curl | sh (macOS / Linux) — binario independiente, sin Node, verificado por checksum:

curl -fsSL https://mcpfold.com/install.sh | sh

Binario independiente — descarga para tu plataforma desde el último lanzamiento (macOS arm64/x64, Linux x64/arm64, Windows x64), verifica el .sha256, y colócalo en tu PATH.

mcpfold --version

Inicio rápido

Requiere Node 20+ (para la instalación npm/npx; los binarios no necesitan nada). mcpfold detecta automáticamente cualesquiera clientes MCP que tengas instalados.

mcpfold init      # 1. scaffold a commented mcp.config.jsonc (+ $schema for editor autocomplete)
mcpfold import    # 2. scan installed clients and merge their servers into the canonical file
mcpfold sync      # 3. fold the canonical config out to every detected client (native formats)
mcpfold diff      # preview what sync would change, per client, before applying
mcpfold doctor    # health-check config, clients, and secret references

Otros comandos: secret (gestionar referencias de secretos), run (lanzar el proxy de selección), status, add. Consulta el Inicio rápido completo y la referencia de comandos.

Reduce el impuesto de tokens con la selección

Los ahorros anteriores provienen de la selección — exponer solo las herramientas que un agente realmente usa. curate escribe una lista de permitidos; sync despliega cada servidor seleccionado como un shim de proxy mcpfold run, así que los clientes solo cargan el conjunto de herramientas recortado:

mcpfold add fs --package @modelcontextprotocol/server-filesystem  # add a server
mcpfold curate fs --tools read_text_file,write_file,list_directory # keep only what you use
# → fs: keeping 3 of 14 tools, ~3.2k → ~684 tokens (approx)
mcpfold sync                                                       # fold it out (writes a proxy shim)

¿Ya has estado ejecutando tus servidores? El mcpfold curate simple lee el registro de auditoría local y recomienda la lista de permitidos desde tu uso real de herramientas. Verifica los ahorros medidos en tu propia configuración en cualquier momento con mcpfold status.

Clientes compatibles

18 clientes, cada uno leído y escrito en su propio formato nativo desde una única fuente de verdad:

Claude Code · Claude Desktop · Cursor · VS Code · Visual Studio · Windsurf · Zed · Cline · Continue · Roo Code · Gemini CLI · Codex CLI · Copilot CLI · JetBrains · Goose · LM Studio · Warp · opencode

Los nuevos adaptadores son una rampa de un solo PR.

Autocompletado del editor (JSON Schema)

mcpfold init añade una línea $schema para que los editores te den autocompletado + validación en línea:

{
  "$schema": "https://mcpfold.com/schema/v1.json",
  "version": 1,
  // …
}

El esquema se genera desde el código fuente zod (packages/schema); una verificación de CI falla si el mcp.config.schema.json confirmado se desvía — regenera con pnpm --filter @mcpfold/schema generate.


Cómo está construido

PaquetePropósito
packages/core@mcpfold/core — motor puro, sin I/O: esquema, resolución, deriva, diff.
packages/adapters@mcpfold/adapters — un módulo por cliente (renderizar nativo ↔ parsear canónico).
packages/secrets@mcpfold/secrets — env / dotenv / infisical / keychain / 1Password.
packages/proxy@mcpfold/proxy — proxy MCP local para selección a nivel de herramienta.
packages/climcpfold — el binario CLI (init/import/sync/diff/doctor/…).
packages/schemaJSON Schema publicado para mcp.config.jsonc.
apps/webEditor visual React/TS + directorio (Cloudflare Pages).
services/edgeServicio edge de Deno — autenticación de código de dispositivo, push/pull de configuración, equipos.

La pureza del núcleo está impuesta: packages/core no puede importar node:fs, node:os, node:path, ni ninguna biblioteca de red/proceso. Todo el I/O se inyecta a través de ClientAdapter / SecretProvider. Protegido por una regla de ESLint no-restricted-imports y la puerta de CI scripts/check-core-purity.mjs.

Seguridad

Los valores de secretos nunca tocan el disco ni los registros — solo se almacenan referencias (${scheme:path}), y los valores se resuelven en memoria al lanzar. Cada propiedad de seguridad está emparejada con la prueba o el trabajo de CI que la demuestra en el registro de Postura de seguridad (protegido por CI para que una afirmación no pueda sobrevivir a su evidencia); las páginas narrativas de Seguridad y Modelo de amenazas cubren las superficies y los límites honestos.

Desarrollo

Requiere Node 20+ y pnpm 10+ (corepack enable).

pnpm install          # install workspace deps
pnpm lint             # eslint + core-purity check
pnpm typecheck        # tsc --noEmit across packages
pnpm test             # vitest (unit + fixture snapshots)
pnpm -r build         # build every package
pnpm verify_all       # lint + typecheck + test + build (the full gate)

CI ejecuta verify_all en una matriz Windows/macOS/Linux × Node 20 — la resolución de rutas es central para este producto, así que la matriz multiplataforma es innegociable. Los nuevos adaptadores de cliente, proveedores de secretos y verificaciones doctor son especialmente bienvenidos — consulta CONTRIBUTING.md.

Precios, financiación y hoja de ruta

La CLI y todo lo local son gratis para siempre y con licencia MIT; la nube alojada es la superficie de pago (y puedes auto-alojarla tú mismo gratis). Consulta el modelo de precios, la hoja de ruta pública, y cómo se gestiona el proyecto en gobernanza.

Apoya el proyecto

Si mcpfold te ahorra tiempo, puedes ayudar a financiar el trabajo continuo:

Los patrocinios financian el núcleo gratuito de código abierto. Gracias 🙏

Licencia

MIT para el núcleo + CLI de packages/*. La capa de nube (apps/web, services/edge) es comercial/cerrada. Consulta prd.json meta.license.