Decispher

Decispher captura las decisiones, convenciones y restricciones de las conversaciones que tu equipo ya mantiene en Slack, GitHub, GitLab y Jira, y luego las devuelve a cada persona y a cada agente que las necesita. Automáticamente.

Documentación

Servidor MCP

Una instalación. Cada herramienta de IA que tu equipo use obtiene acceso en vivo a tu grafo de conocimiento. Cursor, Claude Code y VS Code Copilot consultan el mismo contexto, siempre actualizado.

Inicio rápido

Configura el servidor MCP de Decispher en Claude Code en 5 minutos

Tres pasos: genera una clave, registra el servidor, haz una pregunta. Claude Code ejecuta el servidor mediante npx, así que no hay nada que instalar.

1. Genera una clave de API con alcance de proyecto y asígnale un nombre en esta máquina. En el panel de control ve a Proyecto → Integraciones → Servidor MCP → Generar clave. Cópiala ahora; la clave completa solo se muestra una vez. Luego guárdala con un nombre:

npx decispher@latest link

El nombre es público y está pensado para ser confirmado. La clave permanece en ~/.decispher/links.json y nunca llega a un archivo del proyecto.

2. Registra el servidor con Claude Code. Ejecuta:

claude mcp add decispher \
  -e DECISPHER_LINK=acme \
  -- npx -y @decispher/mcp-server

Verifica que se registró con claude mcp list (o /mcp dentro de Claude Code). Deberías ver las herramientas de Decispher listadas.

3. Haz tu primera pregunta. En una sesión de Claude Code, solo pregunta, y Claude llamará a ask_knowledge_base y responderá desde el registro de tu equipo, con citas:

> What did we decide about the worker queue, and why?

Decispher → ask_knowledge_base
We use BullMQ over SQS: SQS cold-starts add latency to the worker
fleet, so BullMQ + Redis keeps workers warm.
Captured from #engineering, approved 2026-06-18.  [decision:8f2c…]

Esa respuesta provino de tu registro de decisiones, no de una suposición, y la recuperación se registra con los tokens que ahorró. ¿Quieres lo mismo en Cursor o VS Code? Las configuraciones están abajo, o sigue la guía de contexto de equipo para Cursor.

¿Qué es?

El grafo de conocimiento de tu equipo, en vivo a través de MCP

El servidor MCP de Decispher es un paquete npm que implementa el Protocolo de Contexto de Modelo, una interfaz estándar que las herramientas de codificación con IA usan para obtener contexto externo en el momento de la consulta. Una vez instalado, cualquier agente compatible con MCP puede llamar a las herramientas de Decispher para recuperar las decisiones, restricciones y convenciones de tu equipo en tiempo real.

A diferencia de los archivos CLAUDE.md o .cursorrules, que son instantáneas estáticas cargadas una vez al inicio de la sesión, el servidor MCP sirve datos en vivo. Una decisión capturada en Slack a las 9 a. m. es consultable por tus agentes a las 9:01 a. m.

📄

Archivos estáticos (CLAUDE.md, .cursorrules)

Cargados una vez al inicio de la sesión. Desactualizados hasta la siguiente sincronización de Git. Sin medición de tokens. Sin frescura por consulta.

⚡

Servidor MCP

Consultado bajo demanda. Siempre actualizado. Con recibo por llamada. Aislamiento con alcance de proyecto. Recuperación mediante grafo de símbolos.

¿Por qué usarlo?

Porque los archivos de contexto estáticos tienen un problema de frescura

Un CLAUDE.md confirmado en tu repositorio era preciso el día en que se generó. Al día siguiente, tu equipo publica tres decisiones, una restricción queda superada y se adopta una nueva convención. El archivo confirmado no tiene idea.

El servidor MCP resuelve esto sirviendo contexto desde el grafo de conocimiento en vivo de Decispher, la misma fuente de verdad que consulta tu panel de control. El agente siempre obtiene el estado actual, no una instantánea de la última sincronización de Git.

Siempre actualizado

El contexto nuevo capturado desde Slack o GitHub es consultable de inmediato, sin necesidad de confirmaciones, solicitudes de extracción ni invalidación de caché.

Aislamiento con alcance de proyecto

Una clave de API con alcance de proyecto solo devuelve unidades de contexto activas en ese proyecto. El agente del proyecto A no puede ver accidentalmente decisiones rechazadas o irrelevantes del proyecto B.

Recuperación mediante grafo de símbolos

get_context_for_file coincide con nombres de funciones, identificadores de tipos y etiquetas tecnológicas canónicas, no solo con búsqueda por palabras clave o similitud de incrustaciones.

Con recibo por llamada

Cada llamada MCP se registra con los tokens ahorrados, el modelo utilizado y el alcance del proyecto. Tu panel de control muestra exactamente qué consume cada agente y cuánto te ahorra.

Lo que obtienes

Ahorro de tokens medible, con recibo por llamada

Cada llamada MCP que devuelve contexto evita que tu agente tenga que descubrir ese contexto de la manera lenta: buscando, preguntando o alucinando. Decispher mide este ahorro en cada llamada y te muestra el total acumulado en tu panel de control.

Ejemplo: una sola llamada a check_intent

tokens de consulta del agente: 240

contrafactual (sin MCP): 1,840 ← costo estimado de redescubrimiento

tokens ahorrados (neto): +1,600

a tarifas de modelos de frontera: ≈ $0.0048 ahorrados

El conjunto de herramientas

Una herramienta para cada patrón de consulta

check_intent 1 crédito

Envía una descripción de lo que el agente está a punto de hacer. Decispher devuelve reglas en conflicto Y unidades de contexto relevantes antes de que se escriba cualquier código. Devuelve BLOQUEADO (conflicto duro, detente), ADVERTENCIA (tensión, procede con cautela) o CLARO. Llama a esto antes de cada cambio significativo.

decispher.check_intent({ description: "add redis caching to the auth token lookup", files: ["src/auth/token-manager.ts"] })

search_decisions 1 crédito

Búsqueda semántica en los 7 tipos de contexto. Pasa tipos para acotar (p. ej., ["constraint", "decision"]) u omítelos para buscar en todo. Los resultados se clasifican por relevancia para la consulta y frescura.

decispher.search_decisions({ query: "why BullMQ not SQS", types: ["decision", "rationale"] })

get_constraints 1 crédito

Obtén todas las restricciones arquitectónicas activas del proyecto: las reglas duras que el agente no debe violar. Admite paginación mediante cursor y un presupuesto de tokens. Llama una vez por sesión y guarda en caché para la ejecución.

decispher.get_constraints()

check_conventions 1 crédito

Recupera todas las convenciones de codificación activas. Úsalo para alinear el código generado con los estándares del equipo antes de enviarlo. Cubre nombres, patrones, elecciones de bibliotecas y decisiones de estilo.

decispher.check_conventions()

get_context_for_file 1 crédito

Pasa una ruta de archivo (o hasta 10 mediante filePaths[]). Decispher lee el archivo del disco, extrae identificadores y símbolos, y devuelve unidades de contexto cuyas decisiones capturadas se relacionan con ese archivo o esos símbolos. Usa puntuación híbrida de símbolos + incrustaciones.

decispher.get_context_for_file({ filePath: "src/auth/token-manager.ts" })

ask_knowledge_base 1–8 créditos

Haz una pregunta en lenguaje natural. Decispher recupera unidades de contexto relevantes y sintetiza una respuesta de LLM con citas de fuentes. El costo escala con el modo de esfuerzo (Ahorrador 1 / Equilibrado 2 / Pro 6). Cada respuesta muestra de qué unidades se basó.

decispher.ask_knowledge_base({ question: "why do we use HNSW not IVFFlat for vector indexes?" })

list_topics Gratis

Enumera todos los slugs de temas canónicos disponibles en este proyecto. Gratis: la primitiva de descubrimiento. Úsalo primero cuando necesites explorar un área desconocida o confirmar un ID de tema antes de llamar a get_context_for_topic.

decispher.list_topics()

get_context_for_topic 1 crédito

Obtén el clúster de contexto curado para un tema. Devuelve unidades principales en línea (las reglas CRÍTICAS de carga siempre) más IDs y títulos de unidades de expansión; llama a get_decision en cualquiera de esos IDs para el cuerpo completo.

decispher.get_context_for_topic({ topic: "auth" })

get_decision Gratis

Obtén el cuerpo completo de una unidad de contexto específica por ID: título, declaración del problema, justificación, alternativas consideradas, archivos afectados y fuentes. Úsalo después de que cualquier herramienta devuelva un ID que valga la pena recuperar en profundidad. Búsqueda directa, sin LLM.

decispher.get_decision({ decisionId: "0e3f1c2a-bc91-d109-..." })

get_related_context 1–4 créditos

Recorre el grafo de conocimiento alrededor de una unidad antes de cambiarla o contradecirla: qué supera, extiende, deriva, documenta, confirma o con lo que entra en conflicto, devuelto como un subgrafo acotado en lugar de una cadena de búsquedas por ID. Profundidad 1 o 2, filtrable por tipo de relación. Las unidades fuera del alcance del proyecto de tu clave aparecen como stubs solo de relación y nunca se expanden, así que un conflicto que no puedes leer sigue siendo un conflicto del que te informan. Recorrido determinista, sin LLM.

decispher.get_related_context({ decisionId: "0e3f1c2a-…", depth: 2 })

capture_decision Gratis

Escribe nuevo conocimiento de vuelta en la base de conocimiento del equipo. Úsalo solo para conocimiento duradero y reutilizable que valga la pena recordar en la próxima sesión. Si ya existe un casi duplicado, se devuelve el ID de la unidad existente con alreadyExists: true y no se inserta nada, así que un agente que recaptura lo mismo es seguro en lugar de ruidoso. Las capturas de agentes se etiquetan como tales para que los humanos que revisan el registro puedan distinguirlas.

decispher.capture_decision({ type: "constraint", title: "Use HNSW not IVFFlat for new vector indexes", decision: "...", rationale: "..." })

copy_chat 1–8 créditos

Comprime la conversación actual de IA en una instantánea portátil. El servidor devuelve una clipKey aleatoria que puedes compartir entre máquinas, IDEs o herramientas de IA. El modelo destila un resumen estructurado: título, objetivo, estado, qué estaba en curso, decisiones, código y archivos, restricciones, errores y correcciones, preguntas abiertas, las alternativas exploradas, cada turno del usuario textualmente, y los próximos pasos trazados hasta la solicitud que los autorizó. Se almacena solo en Redis, nunca entra al grafo de conocimiento. TTL de 7 días. Se cobra por copia, más un pequeño recargo por transcripciones muy grandes.

decispher.copy_chat({ messages: history }) // → { clipKey: "dsk-clip-…", estimatedReadySeconds: 30 }

paste_chat Gratis

Restaura una instantánea mediante clipKey. El contenido devuelto se convierte en la memoria de trabajo de la nueva sesión, así que el agente la lee en frío y continúa exactamente donde terminó la sesión anterior. Las secciones que no caben en el presupuesto de respuesta se nombran y se mantienen detrás de un cursor de continuación gratuito, o se obtienen una a la vez. Siempre gratis. Funciona en cualquier máquina y cualquier herramienta de IA conectada a Decispher. Devuelve un estado vacío elegante si la clave es incorrecta o la instantánea ha expirado.

decispher.paste_chat({ clipKey: "dsk-clip-…" }) decispher.paste_chat({ clipKey: "dsk-clip-…", section: "errors_fixes" })

list_clips Gratis

Enumera las instantáneas que tu equipo ha guardado, de más reciente a más antigua, con sus claves, títulos, tamaños y expiración. Una clipKey se lee una vez de una terminal y es fácil de perder; así es como la recuperas. Solo metadatos, nunca los cuerpos de las instantáneas.

decispher.list_clips({ status: "ready" })

update_context_metadata Gratis

Parchea los metadatos del ciclo de vida de una unidad existente: expiración, etiquetas, archivos afectados, severidad. O establece stillAccurate para reiniciar su reloj de frescura después de revalidarla. Los cuerpos nunca se editan aquí; una decisión que realmente cambió debe capturarse como una nueva unidad que la supera. Desactivado por defecto hasta que un administrador habilite las actualizaciones de agentes.

decispher.update_context_metadata({ contextId: "0e3f1c2a-…", stillAccurate: true })

store_read Gratis

Lee el almacén de rama: la memoria de trabajo compartida para una rama de git. Devuelve el encabezado de resumen (último estado y preguntas abiertas), unidades en etapa de espera para revisión, entradas atribuidas recientes de otros agentes y humanos, y unidades vinculadas del grafo de conocimiento. Llámalo al inicio de una sesión en una rama existente para comenzar en caliente en lugar de en frío.

decispher.store_read({ repo: "acme/api", branch: "feat/token-refresh" })

store_write Gratis

Agrega una entrada atribuida al almacén de rama. entryType impulsa el encabezado de resumen: state y handoff reemplazan el último estado, question abre una, answer cierra una, note es solo línea de tiempo. Escribe un handoff antes de detenerte para que el próximo agente continúe exactamente donde lo dejaste.

decispher.store_write({ repo: "acme/api", branch: "feat/token-refresh", entryType: "handoff", content: "Refresh path done, rotation still open" })

store_list Gratis

Enumera los almacenes de rama visibles para esta clave: rama, repositorio, último estado, cantidad de preguntas abiertas, última actividad. Úsalo para encontrar dónde ya hay trabajo en curso antes de retomar una rama.

decispher.store_list()

store_link Gratis

Vincula la rama a una unidad existente del grafo de conocimiento por ID, como una decisión que esta rama implementa o de la que depende. Las unidades vinculadas aparecen entonces por título en cada store_read de esa rama.

decispher.store_link({ repo: "acme/api", branch: "feat/token-refresh", decisionId: "0e3f1c2a-…" })

session_record Gratis

Autoinforma un momento notable de esta sesión: una decisión no obvia, una restricción descubierta de la manera difícil, un enfoque probado y abandonado, o una pregunta aclaratoria cuya respuesta dio forma al trabajo. El informe se pone en etapa para que un humano lo promueva, nunca se escribe directamente en el registro. Úsalo con moderación para conocimiento duradero; usa store_write para notas de progreso.

decispher.session_record({ repo: "acme/api", branch: "feat/token-refresh", type: "history", statement: "Tried rotating on every request, hit the provider rate limit" })

remember 1–3 créditos Guarda una memoria duradera personal o de equipo: una preferencia, un estilo de trabajo, un dato del entorno, una norma del equipo. Las solicitudes humanas explícitas se guardan como activas; cualquier cosa que el agente ofrezca voluntariamente se convierte en una propuesta que el propietario confirma. El ámbito predeterminado es la memoria privada del usuario, y compartir más ampliamente es una solicitud que un administrador aprueba. Requiere que Memory esté habilitado para tu empresa.

decispher.remember({ body: "Use pnpm, never npm, in this org", userRequested: true })

get_memory Gratis

Desreferencia una memoria por ID desde un manifiesto servido, devolviendo el cuerpo completo y la procedencia. Deliberadamente no hay herramienta de búsqueda de memoria: la memoria relevante se inyecta en la sesión para ti, por lo que el agente solo desreferencia.

decispher.get_memory({ memoryId: "b41c7e90-…" })

Instalación

Un paquete npm, tres archivos de configuración

El servidor se distribuye como @decispher/mcp-server. No necesitas instalarlo globalmente; los tres ejemplos de configuración a continuación usan npx para obtener la última versión automáticamente.

Configuración de Cursor

Ámbito de proyecto o global

Añade a .cursor/mcp.json en la raíz de tu proyecto (limitado a este repositorio) o ~/.cursor/mcp.json (todos los proyectos).

{
  "mcpServers": {
    "decispher": {
      "command": "npx",
      "args": ["-y", "@decispher/mcp-server"],
      "env": {
        "DECISPHER_LINK": "acme"
      }
    }
  }
}

Confirmar este archivo comparte el nombre, nunca la clave. Cada compañero ejecuta npx decispher@latest link una vez y sus propias credenciales responden a él.

Configuración de Claude Code

Mediante la CLI de Claude Code

claude mcp add decispher \
  -e DECISPHER_LINK=acme \
  -- npx -y @decispher/mcp-server

O añádelo directamente mediante la interfaz de Claude Code: Configuración → Servidores MCP → Añadir servidor.

Configuración de VS Code

GitHub Copilot + MCP

Añade a .vscode/mcp.json en la raíz de tu espacio de trabajo:

{
  "servers": {
    "decispher": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@decispher/mcp-server"],
      "env": {
        "DECISPHER_LINK": "acme"
      }
    }
  }
}

Claves en la configuración

La vía de escape, y los tres lugares donde es la respuesta correcta

Todo lo anterior pone un nombre en el archivo y mantiene la clave en tu máquina. Poner la clave en la propia configuración es totalmente compatible y no va a desaparecer, porque tres situaciones realmente lo necesitan:

  • El Decispher Worker inyecta credenciales por ejecución en un sandbox que no tiene directorio de inicio para contener un almacén de enlaces, y nunca debería tenerlo.
  • CI y contenedores se reconstruyen desde cero en cada ejecución, por lo que una variable de entorno es lo único que sobrevive.
  • Probar MCP antes de instalar la CLI, donde aún no hay enlace que nombrar.

Toda configuración existente sigue funcionando sin cambios. Las mismas tres formas:

{
  "mcpServers": {
    "decispher": {
      "command": "npx",
      "args": ["-y", "@decispher/mcp-server"],
      "env": {
        "DECISPHER_API_URL": "https://api.decispher.com",
        "DECISPHER_API_KEY": "dsk_your_key_here",
        "DECISPHER_COMPANY_ID": "your-company-uuid"
      }
    }
  }
}
claude mcp add decispher \
  -e DECISPHER_API_KEY=dsk_your_key_here \
  -e DECISPHER_API_URL=https://api.decispher.com \
  -e DECISPHER_COMPANY_ID=your-company-uuid \
  -- npx -y @decispher/mcp-server
{
  "servers": {
    "decispher": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@decispher/mcp-server"],
      "env": {
        "DECISPHER_API_URL": "https://api.decispher.com",
        "DECISPHER_API_KEY": "dsk_your_key_here",
        "DECISPHER_COMPANY_ID": "your-company-uuid"
      }
    }
  }
}

DECISPHER_COMPANY_ID ahora es opcional. Si está presente, se usa y se omite un viaje de ida y vuelta; si está ausente, el servidor lo resuelve desde la clave en la primera llamada a la herramienta. La memoria también funciona aquí, mediante DECISPHER_IDENTITY_KEY y DECISPHER_SET_KEY.

Establecer tanto un enlace como una variable de entorno es válido: se componen campo por campo, y cada variable anula solo ese campo del enlace.

Claves de API

Ámbito de empresa o de proyecto

Genera claves desde la página de Integraciones de tu proyecto: Proyecto → Integraciones → Servidor MCP → Generar clave. Las claves se muestran una sola vez, así que cópialas de inmediato.

Clave de empresa dsk_co_…

Devuelve resultados en todos los proyectos. Úsala para un entorno de desarrollo personal donde trabajes en varios repositorios.

Clave de proyecto dsk_pr_…

Devuelve solo las unidades de contexto activas en este proyecto. Úsala para CI por repositorio, configuración de IDE específica del proyecto o pipelines de agentes limitados a un servicio.

Variables de entorno: DECISPHER_LINK (un enlace en esta máquina) · DECISPHER_SET (conjuntos de memoria a adjuntar, por nombre) · DECISPHER_API_KEY (en lugar de un enlace, para CI y contenedores) · DECISPHER_API_URL · DECISPHER_COMPANY_ID (opcional, resuelto desde la clave cuando está ausente)

Costos de créditos

Paga solo por lo que consultas

Costos por llamada

  • list_topics GratisDescubrimiento de espacio de nombres de solo lectura, sin LLM ni consulta vectorial
  • get_decision GratisBúsqueda directa por ID, sin llamada a LLM
  • capture_decision GratisLa escritura es gratuita: queremos que los agentes registren lo que aprenden
  • update_context_metadata GratisParche de ciclo de vida o restablecimiento de frescura, sin llamada a LLM
  • store_read / store_write GratisMemoria de trabajo de rama, siempre gratuita
  • store_list / store_link GratisDescubrimiento y vinculación de ramas, siempre gratuito
  • session_record GratisPreparado para revisión humana, siempre gratuito
  • get_memory GratisDesreferencia una memoria servida, sin llamada a LLM
  • paste_chat GratisLee el portapapeles, siempre gratuito, páginas de continuación incluidas (TTL de 7 días)
  • list_clips GratisEncuentra una instantánea cuya clave perdiste, solo metadatos
  • check_intent 1 créditoEscaneo de conflictos vectorial + de palabras clave (Saver/Balanced 1 · Pro 2)
  • search_decisions 1 créditoBúsqueda semántica en los 7 tipos de contexto
  • get_constraints 1 créditoConsulta filtrada de solo lectura
  • check_conventions 1 créditoConsulta filtrada de solo lectura
  • get_context_for_file 1 créditoHíbrido de grafo de símbolos + incrustaciones
  • get_context_for_topic 1 créditoClúster de temas curado con columna vertebral en línea
  • remember 1–3 créditosIncorpora y fusiona antes de devolver: Saver 1 · Balanced 2 · Pro 3
  • ask_knowledge_base 1–8 créditosRespuesta sintetizada por LLM: Saver 1 · Balanced 2 · Pro 6
  • copy_chat 1–8 créditosLLM comprime la conversación al portapapeles: Saver 1 · Balanced 2 · Pro 4 · Super 8, más 1–4 para un transcripto muy extenso

¿Listo para conectar tus agentes?

Solicita acceso beta y obtén tu primera clave de API en minutos.

Request Access