Ackrite
Ackrite
ACKRITE. DEMUÉSTRALO.
Un servidor MCP que hace que los agentes de IA demuestren sus suposiciones antes de actuar según ellas.
Ackrite es una utilidad de verificación centrada para agentes de IA. No intenta resolver todos los problemas, buscar respuestas convenientes ni inventar corroboraciones. En cambio, cuestiona una afirmación técnica del agente usando solo la evidencia que se le ha proporcionado, distingue hechos de hipótesis, identifica la prueba que falta y recomienda la comprobación más pequeña que pueda resolver la cuestión.
Su propósito es prevenir un modo de fallo habitual: un agente ve un error, supone la causa, reescribe con confianza la mitad del sistema y solo entonces descubre que la suposición era errónea. Ackrite empuja al agente hacia la evidencia, experimentos específicos, cambios acotados e incertidumbre explícita.
Ackrite hace | Ackrite no hace |
Clasifica afirmaciones a partir de la evidencia proporcionada | Inventa, obtiene o implica evidencia que no se le ha dado |
Detecta contradicciones y suposiciones sin respaldo | Presenta una inferencia como un hecho |
Cuestiona reescrituras y la expansión del alcance antes de la implementación | Aplica cambios de código o llama a sistemas externos |
Mantiene un historial de verificación acotado dentro del proceso | Persiste un gran sistema de memoria o depende de L-Dopa |
Enmascara secretos comunes de la salida de diagnóstico | Garantiza la detección perfecta de secretos para cada formato de credencial personalizado |
Por qué existe
La confianza de un agente no es evidencia. Una afirmación como «la API eliminó la autenticación nativa» suele ser una hipótesis útil, pero se vuelve peligrosa cuando se trata como un hecho establecido y se usa para justificar una reescritura. Ackrite plantea cuatro preguntas concretas:
¿Qué establece realmente la evidencia proporcionada?
¿Qué contradice la afirmación, si es que algo la contradice?
¿Qué suposición está haciendo el trabajo?
¿Cuál es la comprobación empírica más pequeña que se debe ejecutar a continuación?
El resultado es deliberadamente conciso para poder volver a colocarlo directamente en la ventana de contexto del agente.
Related MCP server: Veritas MCP
Estados de las afirmaciones
Ackrite utiliza un modelo de clasificación deliberadamente conservador.
Estado | Significado | Umbral de evidencia |
| La evidencia directa proporcionada de alta fiabilidad respalda la afirmación. | Al menos un elemento directo de alta fiabilidad, como un resultado de prueba específico, una respuesta HTTP, un comportamiento observado o un hecho proporcionado por el usuario. |
| La evidencia directa proporcionada respalda la afirmación, pero sigue siendo limitada en alcance o fiabilidad. | Evidencia directa de apoyo sin un elemento de alta fiabilidad que la cualifique. |
| La afirmación puede ser cierta, pero el material es indirecto, neutral o inferido. | Solo evidencia neutral o inferencia. |
| Ninguna evidencia de apoyo proporcionada establece la afirmación. | No hay evidencia relevante. |
| Al menos un elemento de evidencia proporcionado contradice la afirmación. | La contradicción tiene prioridad hasta que se reconcilie. |
Regla fundamental: Ackrite nunca convierte una inferencia en un hecho. En su lugar, señala el límite entre la observación y la conclusión.
Arquitectura
Ackrite es intencionadamente pequeño. La frontera MCP, el análisis de dominio, el manejo de evidencia y el estado acotado son independientes para que las reglas de verificación puedan probarse sin un cliente MCP en ejecución.
Capa | Ubicación | Responsabilidad |
Transporte y esquemas MCP |
| Registra cinco herramientas y las sirve a través de la entrada/salida estándar. |
Orquestación de herramientas |
| Produce respuestas listas para el agente: desafío, verificación, auditoría, plan de prueba y comprobación de la realidad. |
Modelo de evidencia |
| Normaliza la procedencia, la fiabilidad, la polaridad, los extractos y el enmascaramiento de secretos. |
Análisis de afirmaciones |
| Determina el estado, la confianza, las suposiciones, la prueba que falta y la siguiente acción. |
Historial de sesión |
| Mantiene un registro acotado en el proceso de afirmaciones, evidencia, intentos, conclusiones y suposiciones no resueltas. |
Pruebas |
| Ejercita la lógica de dominio y el comportamiento real del cliente/servidor stdio de MCP. |
Ackrite está implementado en TypeScript utilizando los paquetes oficiales de servidor y cliente MCP para TypeScript. Expone un servidor stdio: un cliente inicia Ackrite como subproceso e intercambia mensajes JSON-RPC a través de la entrada y salida estándar, que es un transporte MCP estándar. [1] [2]
Instalación
Ackrite requiere Node.js 20 o posterior.
git clone https://github.com/mshanghai570/Ackrite.git
cd Ackrite
npm install
npm run buildInicie el servidor directamente después de compilar:
npm startEl proceso se comunica a través de la entrada/salida estándar, por lo que puede parecer inactivo al ejecutarse en un terminal. Esto es lo esperado: su cliente MCP proporciona las solicitudes. Mantenga los registros normales fuera de la salida estándar; MCP stdio la reserva para los mensajes de protocolo. [1]
Configuración del cliente MCP
Compile primero el proyecto y luego añada una entrada como la siguiente a la configuración de su cliente MCP. Reemplace /absolute/path/to/Ackrite por el directorio que contiene este repositorio.
{
"mcpServers": {
"ackrite": {
"command": "node",
"args": ["/absolute/path/to/Ackrite/dist/index.js"]
}
}
}Si su cliente admite la ejecución de scripts del paquete, el comando equivalente es node dist/index.js con el repositorio como directorio de trabajo. Ackrite no acepta credenciales ni realiza llamadas de red en v0.1.
Herramientas disponibles
Las cinco herramientas se declaran de solo lectura y devuelven tanto texto JSON legible como contenido estructurado. Aceptan un sessionId opcional; use el mismo valor durante una investigación relacionada para conservar el historial acotado dentro del proceso en ejecución.
Herramienta | Úsela cuando | Resultado principal |
| Un agente hace una afirmación técnica y necesita ser cuestionado. | Estado, confianza, evidencia que respalda y contradice, suposiciones, prueba que falta y siguiente acción. |
| Necesita un registro de evidencia estructurado para una afirmación. | Lo que se sabe, lo que se asume, lo que se contradice, lo que falta y el experimento decisivo. |
| Se propone un cambio de código o un plan de implementación. | Hallazgos concisos sobre reescrituras innecesarias, alcance, suposiciones de contrato de API, trabajo sensible a la seguridad, detalle del manejo de errores y pruebas. |
| Quiere la evidencia mínima necesaria para establecer una afirmación. | Una lista de verificación de prueba específica del dominio de la afirmación y un experimento falsable. |
| Un agente puede estar atascado, repitiéndose o afirmando un éxito demasiado pronto. | El fallo de razonamiento más importante primero, además de riesgos observados adicionales. |
Entrada de evidencia compartida
Pase la evidencia explícitamente en lugar de incrustarla en un contexto no estructurado. context puede proporcionar información de fondo, pero no se cuenta como prueba.
{
"type": "http_response",
"source": "staging request, 2026-08-27",
"content": "POST /v1/session returned 401 with code AUTH_REQUIRED.",
"polarity": "contradicts",
"reliability": 0.9
}Campo | Requerido | Descripción |
| No | Uno de |
| No | Una etiqueta de procedencia concisa, como un nombre de prueba, una fuente de registro o una ubicación de código. |
| Sí | La observación, el extracto, el resultado o la inferencia proporcionados. |
| No |
|
| No | Número evaluado por quien llama de |
Ejemplos de interacción
Cuestionar una afirmación de API sin respaldo
Afirmación: «La API ya no admite la autenticación nativa.»
{
"claim": "The API no longer supports native authentication.",
"evidence": [
{
"type": "code",
"source": "current client",
"content": "The current client implementation does not obtain credentials.",
"polarity": "supports"
},
{
"type": "observed_behavior",
"source": "older working application",
"content": "The older application successfully signs in.",
"polarity": "contradicts",
"reliability": 0.9
}
]
}Ackrite responde con CONTRADICTED, conserva ambas procedencias y recomienda inspeccionar el flujo de autenticación antiguo antes de reemplazar el cliente. No concluye que la autenticación nativa exista ni que el flujo antiguo sea aplicable; eso excedería la evidencia proporcionada.
Auditar una propuesta de reescritura
{
"reportedProblem": "Login returns an unexpected response.",
"proposal": "Rewrite the authentication client to replace the API endpoint integration.",
"proposedChanges": [
{
"path": "src/auth.ts",
"description": "Rewrite authentication client and route handling."
},
{
"path": "src/theme.ts",
"description": "Change unrelated color palette."
}
]
}La auditoría señala el mayor nivel de evidencia exigido por la reescritura, la suposición de contrato de API sin respaldo, la falta de un plan de pruebas y el cambio de tema aparentemente no relacionado. No afirma haber inspeccionado src/auth.ts ni src/theme.ts a menos que su contenido se haya proporcionado como evidencia.
Romper un bucle de fallos repetidos
{
"sessionId": "auth-investigation",
"reasoning": "The rewrite will work and the issue is fixed.",
"attempts": [
{ "approach": "Replace the auth client", "outcome": "Failed with timeout." },
{ "approach": "Replace the auth client", "outcome": "Failed with timeout again." },
{ "approach": "Replace the auth client", "outcome": "Failed with the same timeout." }
]
}El problema principal es una estrategia repetida. Ackrite recomienda detenerse, identificar la suposición que hace que el reemplazo parezca necesario y verificar esa suposición en lugar de intentar la misma intervención otra vez.
Modelo de fiabilidad y seguridad
Ackrite es deliberadamente conservador. En v0.1 no realiza escaneo de repositorios, solicitudes HTTP, consultas de documentación externa, ejecución de código ni reparación autónoma. Cada conclusión incluye la procedencia que la limita al material proporcionado por quien llama. La evidencia que falta es un resultado, no un error que ocultar.
El servidor enmascara los patrones comunes de credenciales antes de devolver el texto de diagnóstico, incluidos los valores de autorización bearer/basic, asignaciones similares a contraseñas, prefijos de token comunes, claves de cadena de consulta y campos de clave de API. Esto es defensa en profundidad, no un permiso para enviar secretos reales. No envíe credenciales de producción a las herramientas de diagnóstico.
El almacén de sesiones es local al proceso y limitado: conserva las afirmaciones, la evidencia, los intentos, las conclusiones y las suposiciones sin resolver recientes para un máximo de 32 sesiones con nombre. Cada colección por sesión está limitada, las sesiones usadas hace más tiempo se expulsan y todo el historial se pierde cuando el proceso termina. Esto mantiene v0.1 útil para una investigación centrada sin convertirse en una plataforma de memoria.
Desarrollo
Command | Purpose |
| Instalar las dependencias de desarrolo y de ejecución. |
| Compilar TypeScript a |
| Ejecutar una comprobación estricta de TypeScript sin generar salida. |
| Compilar, ejecutar pruebas unitarias, poner a prueba el descubrimiento de herramientas MCP e invocar cada herramienta mediante un subproceso stdio real. |
| Iniciar Ackrite compilado mediante stdio. |
| Observar los archivos fuent de TypeScript durante el desarrolo. |
El conjunto de pruebas incluye cobertura positiva y negativa para la clasificación de afirmaciones, evidencia contradictoria, afirmaciones no respaldadas, redacción, estado limitado, cada herramienta principal, fallos repetidos, inicio del servidor, descubrimiento de herramientas y llamadas a herramientas a través del protocolo MCP.
Limitaciones
El análisis de Ackrite es determinista y está basado en la evidencia, en lugar de ser un sistema completo de razonamiento autónomo. La herramienta audit revisa descripciones de una propuesta; no es un analizador estático y no inspecciona un árbol de trabajo. La detección de estrategias repetidas utiliza términos normalizados de las descripciones de intentos proporcionadas, por lo que intentos semánticamente idénticos pero con una redacción muy diferente pueden no agruparse. Las reglas de redacción de secretos cubren patrones comunes, pero no pueden reconocer todos los formatos propietarios de credenciales.
Ackrite solo usa stdio en v0.1. Está diseñado para permanecer independiente de L-Dopa y de otros servidores MCP. Un futuro transporte HTTP, capa de persistencia o adaptador consciente del repositorio debe seguir siendo opcional y debe preservar las mismas garantías de no fabricación y de redacción.
Licencia
Ackrite se publica bajo la Licencia MIT.
Referencias
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Tools
Related MCP Servers
- AlicenseAqualityDmaintenanceUniversal Search-First Knowledge Acquisition Plugin for LLMs. Enables real-time web search and deep page browsing via MCP or CLI. Zero-cost, privacy-first, supports DuckDuckGo, Bing, Google, Brave, Wikipedia, Arxiv, YouTube, Reddit and more.21316MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to conduct evidence-grounded forensic triage of compromised hosts, with architectural safeguards against evidence spoliation and hallucinated findings, supporting self-correction and chain of custody.MIT
- AlicenseNot gradedqualityBmaintenanceEnables agents to verify claims with evidence-based truth scores and confidence levels by running a deterministic pipeline of evidence lanes and adversarial checks.4MIT
- AlicenseNot gradedqualityBmaintenanceEnables agents to verify their own output mid-task by checking every claim against provided sources, returning supported, partial, unsupported, or contradicted verdicts with exact citations.MIT
Related MCP Connectors
Evidence-backed x402 web verification for AI agents, with auditable decisions for every condition.
Deterministic fact verification for AI agents — checksums & curated data, not guesses.
Real-time fact-check, citation verification, and source-freshness for AI agents.
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/mshanghai570/Ackrite'
If you have feedback or need assistance with the MCP directory API, please join our Discord server