El Buen Agente MCP
An MCP server that implements the 'El Buen Agente' guide as actionable tools to evaluate, improve, and build LLM agents. It provides 17 tools for assessing agent roles, outputs, autonomy, context, and execution boundaries, including a birth checklist gate. It supports both new agent design and existing agent auditing, with bilingual output options.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://el-buen-agente-mcp-production.up.railway.app/mcpWhat its tools do
18 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Not annotated (18)
recomendar_flujoget_el_buen_agenteevaluar_necesidadrevisar_rol_y_fronterarevisar_outputsevaluar_autonomiarevisar_frontera_ejecucionaplicar_challengerauditar_contextochallenger_decisiondisenar_evaluaciongenerar_contratoevaluar_sistemaplan_exposicion_mcpchecklist_nacimientovalidar_veredictoconstruir_agenteplan_de_inicio
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Evaluate the necessity of building an agent versus using a prompt
- Audit existing agents using a 19-point birth checklist
- Generate formal contracts and final definitions for new agents
- Perform red-teaming on agent definitions with challenger tools
Source and maintenance
- Maintenance checked
Protocol and capabilities
- Server
- el-buen-agente 2.8.1
- MCP protocol negotiated in check
- 2025-11-25
- Tools
- 18 advertised
- Resources
- 14 advertised
- Resource templates
- 1 advertised
- Prompts
- 1 advertised
{
"tools": {
"listChanged": true
},
"prompts": {
"listChanged": true
},
"resources": {
"listChanged": true
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
18 advertised
recomendar_flujo — Recomendar el orden de las tools
Devuelve el flujo recomendado de tools según la situación: agente nuevo (diseño desde cero) o agente existente (mejora). Llamala PRIMERO si no sabés por dónde empezar.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"situacion"
],
"properties": {
"situacion": {
"enum": [
"nuevo",
"existente"
],
"type": "string",
"description": "'nuevo' = diseñar un agente desde cero; 'existente' = mejorar un agente que ya está definido o en producción."
}
},
"additionalProperties": false
}get_el_buen_agente — Obtener la guía completa
Devuelve la guía completa 'El Buen Agente (v2)' en Markdown. Usala para contexto general; para operar sobre un agente concreto usá las tools evaluar_*/revisar_*/auditar_*.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}evaluar_necesidad — §0: ¿De verdad hace falta un agente?
Evalúa si el problema justifica un agente o se resuelve con menos (prompt, workflow, skill). Detecta antipatrones: agente genérico, sobre-orquestación, agente sin contexto, autonomía total día 1. Usala ANTES de construir, o para cuestionar un agente existente.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"problema"
],
"properties": {
"language": {
"enum": [
"es",
"en"
],
"type": "string",
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
},
"problema": {
"type": "string",
"description": "Descripción del problema que se quiere resolver y, si existe, cómo lo resuelve el agente actual."
}
},
"additionalProperties": false
}revisar_rol_y_frontera — §1: Rol claro y frontera de responsabilidad
Verifica que el agente tenga rol claro, dominio acotado y frontera explícita de qué NO es su responsabilidad, escrita en el identity layer y enforced en código donde se pueda. Recibe la definición del agente y devuelve un brief de evaluación estructurado.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agent_definition"
],
"properties": {
"language": {
"enum": [
"es",
"en"
],
"type": "string",
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
},
"agent_definition": {
"type": "string",
"minLength": 1,
"description": "Definición completa del agente a mejorar: system prompt, frontmatter, configuración, descripción de tools y cualquier doc de diseño. Cuanto más completa, mejor la evaluación."
}
},
"additionalProperties": false
}revisar_outputs — §2: Inputs esperados y outputs útiles para humanos
Verifica que los outputs sean accionables: schema estricto (JSON Schema/Pydantic), resumen legible para humanos separado del razonamiento, y exposición de qué gates pasó/falló. Recibe la definición del agente y devuelve un brief de evaluación estructurado.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agent_definition"
],
"properties": {
"language": {
"enum": [
"es",
"en"
],
"type": "string",
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
},
"agent_definition": {
"type": "string",
"minLength": 1,
"description": "Definición completa del agente a mejorar: system prompt, frontmatter, configuración, descripción de tools y cualquier doc de diseño. Cuanto más completa, mejor la evaluación."
}
},
"additionalProperties": false
}evaluar_autonomia — §3: Nivel de autonomía permitido
Determina el nivel de autonomía adecuado (copiloto / ejecutor supervisado / autónomo con guardrails) y verifica los mecanismos de reducción de riesgo: sandbox/shadow mode, límites duros, frenos progresivos, override humano. Recibe la definición del agente y devuelve un brief de evaluación estructurado.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agent_definition"
],
"properties": {
"language": {
"enum": [
"es",
"en"
],
"type": "string",
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
},
"agent_definition": {
"type": "string",
"minLength": 1,
"description": "Definición completa del agente a mejorar: system prompt, frontmatter, configuración, descripción de tools y cualquier doc de diseño. Cuanto más completa, mejor la evaluación."
}
},
"additionalProperties": false
}revisar_frontera_ejecucion — §4: Qué recomienda y qué ejecuta (frontera explícita desde el diseño)
Verifica que la línea entre lo que el agente recomienda y lo que ejecuta esté definida en código (status + gates), no descubierta en producción: qué ejecuta directo, qué queda pendiente de aprobación, qué se rechaza. Recibe la definición del agente y devuelve un brief de evaluación estructurado.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agent_definition"
],
"properties": {
"language": {
"enum": [
"es",
"en"
],
"type": "string",
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
},
"agent_definition": {
"type": "string",
"minLength": 1,
"description": "Definición completa del agente a mejorar: system prompt, frontmatter, configuración, descripción de tools y cualquier doc de diseño. Cuanto más completa, mejor la evaluación."
}
},
"additionalProperties": false
}aplicar_challenger — §5: Relación con el humano: copiloto, reviewer, challenger
Aplica el patrón challenger/red-team a la definición o a una decisión del agente: contraargumentos basados en datos, autocrítica y gate de calidad. Útil como segunda pasada adversarial. Recibe la definición del agente y devuelve un brief de evaluación estructurado.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agent_definition"
],
"properties": {
"language": {
"enum": [
"es",
"en"
],
"type": "string",
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
},
"agent_definition": {
"type": "string",
"minLength": 1,
"description": "Definición completa del agente a mejorar: system prompt, frontmatter, configuración, descripción de tools y cualquier doc de diseño. Cuanto más completa, mejor la evaluación."
}
},
"additionalProperties": false
}auditar_contexto — §6: El contexto como activo estratégico
Audita el contexto del agente: separación en 3 capas (identidad/dominio/referencia), relevancia y caducidad de datos, estrategia de integración (directo/snapshot/RAG/estático), gobernanza, least-privilege, trazabilidad y defensa anti prompt-injection. Recibe la definición del agente y devuelve un brief de evaluación estructurado.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agent_definition"
],
"properties": {
"language": {
"enum": [
"es",
"en"
],
"type": "string",
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
},
"agent_definition": {
"type": "string",
"minLength": 1,
"description": "Definición completa del agente a mejorar: system prompt, frontmatter, configuración, descripción de tools y cualquier doc de diseño. Cuanto más completa, mejor la evaluación."
}
},
"additionalProperties": false
}challenger_decision — §5: Red-team de una decisión
Genera el brief para cuestionar una decisión concreta del agente: 3 razones basadas en datos para NO hacerla. No bloquea, informa al humano.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"decision"
],
"properties": {
"contexto": {
"type": "string",
"description": "Contexto y datos relevantes a la decisión."
},
"decision": {
"type": "string",
"description": "La decisión o recomendación del agente que se quiere cuestionar."
},
"language": {
"enum": [
"es",
"en"
],
"type": "string",
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"additionalProperties": false
}disenar_evaluacion — §7: ¿Cómo saber si funciona bien?
Evalúa el plan de evaluación del agente (o ayuda a crearlo): 3 dimensiones (capacidades/trayectoria/resultado), métricas (tasa de éxito, consistencia, coste por tarea, adopción), golden set de 20-50 tareas, monitoreo de drift y self-consistency para alto stake.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agent_definition"
],
"properties": {
"language": {
"enum": [
"es",
"en"
],
"type": "string",
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
},
"agent_definition": {
"type": "string",
"minLength": 1,
"description": "Definición completa del agente a mejorar: system prompt, frontmatter, configuración, descripción de tools y cualquier doc de diseño. Cuanto más completa, mejor la evaluación."
}
},
"additionalProperties": false
}generar_contrato — §8: Generar el contrato del agente
Genera el contrato formal del agente (patrón contractor de §8) a partir de los campos provistos. Los campos faltantes quedan marcados como [PENDIENTE] para completar.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"nombre"
],
"properties": {
"coste": {
"type": "string",
"description": "Modelo + estimado de tokens/mes + tope."
},
"puede": {
"type": "string",
"description": "Acciones autónomas dentro de límites."
},
"inputs": {
"type": "string",
"description": "Qué consume."
},
"nombre": {
"type": "string",
"description": "Nombre del agente."
},
"output": {
"type": "string",
"description": "Schema exacto + formato legible para humano."
},
"language": {
"enum": [
"es",
"en"
],
"type": "string",
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
},
"no_puede": {
"type": "string",
"description": "Acciones que requieren aprobación humana / fuera de alcance."
},
"problema": {
"type": "string",
"description": "Qué resuelve (1 frase) + qué deliberadamente NO toca."
},
"autonomia": {
"type": "string",
"description": "copiloto | supervisado | autónomo con guardrails (+ plan de progresión)."
},
"evaluacion": {
"type": "string",
"description": "Métricas de éxito (verde/amarillo/rojo) + cadencia de review."
}
},
"additionalProperties": false
}evaluar_sistema — §9: De skills aisladas a sistema coherente
Evalúa cómo el agente encaja en el sistema mayor: catálogo de skills, reutilización vs especialización, orquestación ligera vs orquestador, qué automatizar vs supervisar, y memorias separadas por agente.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agent_definition"
],
"properties": {
"language": {
"enum": [
"es",
"en"
],
"type": "string",
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
},
"ecosistema": {
"type": "string",
"description": "Otros agentes/skills existentes en el sistema, si los hay."
},
"agent_definition": {
"type": "string",
"minLength": 1,
"description": "Definición completa del agente a mejorar: system prompt, frontmatter, configuración, descripción de tools y cualquier doc de diseño. Cuanto más completa, mejor la evaluación."
}
},
"additionalProperties": false
}plan_exposicion_mcp — §10: Exponer el agente/skill vía MCP
Evalúa qué partes del agente conviene exponer a la economía de agentes y cómo: qué modelar como tool (capacidad accionable), resource (doc/dato legible) o prompt (plantilla), y qué merece UI vs API/MCP.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agent_definition"
],
"properties": {
"language": {
"enum": [
"es",
"en"
],
"type": "string",
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
},
"agent_definition": {
"type": "string",
"minLength": 1,
"description": "Definición completa del agente a mejorar: system prompt, frontmatter, configuración, descripción de tools y cualquier doc de diseño. Cuanto más completa, mejor la evaluación."
}
},
"additionalProperties": false
}checklist_nacimiento — §11: Checklist de nacimiento (19 puntos)
Corre el checklist completo de 19 puntos contra la definición del agente. Es el gate final antes de mergear: el agente debe NACER cumpliéndolo, no corregirse después. Devuelve veredicto punto por punto.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agent_definition"
],
"properties": {
"language": {
"enum": [
"es",
"en"
],
"type": "string",
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
},
"agent_definition": {
"type": "string",
"minLength": 1,
"description": "Definición completa del agente a mejorar: system prompt, frontmatter, configuración, descripción de tools y cualquier doc de diseño. Cuanto más completa, mejor la evaluación."
}
},
"additionalProperties": false
}validar_veredicto — Validar el veredicto del checklist (para CI)
Cierra el ciclo de checklist_nacimiento con un contrato a nivel protocolo. Pasale los 19 puntos con su estado (ok|parcial|falta) y devuelve structuredContent validado: conteos y veredicto normalizado (apto solo si faltas === 0). Pensada para consumo programático / gates de CI: no depende de parsear texto.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"puntos"
],
"properties": {
"puntos": {
"type": "array",
"items": {
"type": "object",
"required": [
"n",
"estado"
],
"properties": {
"n": {
"type": "integer",
"maximum": 19,
"minimum": 1
},
"estado": {
"enum": [
"ok",
"parcial",
"falta"
],
"type": "string"
}
},
"additionalProperties": false
},
"maxItems": 19,
"minItems": 19,
"description": "Los 19 puntos del checklist con su estado evaluado."
}
},
"additionalProperties": false
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"aptos",
"parciales",
"faltas",
"veredicto",
"completo"
],
"properties": {
"aptos": {
"type": "integer"
},
"faltas": {
"type": "integer"
},
"completo": {
"type": "boolean",
"description": "true si están los 19 puntos sin números repetidos."
},
"parciales": {
"type": "integer"
},
"veredicto": {
"enum": [
"apto",
"no_apto"
],
"type": "string"
}
},
"additionalProperties": false
}construir_agente — Construir la definición final del agente
El paso de CIERRE del flujo: toma la definición iterada (tras pasar por las revisiones) y produce el artefacto final listo para usar: identity layer, tools con least-privilege, límites duros, schema de output, gates, contexto, evaluación. Llamala cuando checklist_nacimiento dé APTO.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"definicion_final"
],
"properties": {
"formato": {
"enum": [
"markdown",
"claude_skill",
"system_prompt"
],
"type": "string",
"description": "Formato del artefacto: 'markdown' (doc de diseño completo, default), 'claude_skill' (SKILL.md con frontmatter), 'system_prompt' (prompt + config para cualquier framework)."
},
"contrato": {
"type": "string",
"description": "El contrato generado por generar_contrato, si existe."
},
"language": {
"enum": [
"es",
"en"
],
"type": "string",
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
},
"definicion_final": {
"type": "string",
"minLength": 1,
"description": "Definición completa del agente a mejorar: system prompt, frontmatter, configuración, descripción de tools y cualquier doc de diseño. Cuanto más completa, mejor la evaluación."
}
},
"additionalProperties": false
}plan_de_inicio — §12: Cómo empezar
Genera el plan de arranque correcto para un agente nuevo: un agente, un problema concreto, un humano revisando. Verifica que la tarea elegida sea recurrente, costosa en tiempo y con datos accesibles.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"problema"
],
"properties": {
"equipo": {
"type": "string",
"description": "Quiénes lo van a usar y revisar."
},
"language": {
"enum": [
"es",
"en"
],
"type": "string",
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
},
"problema": {
"type": "string",
"description": "El problema o tarea candidata para el primer agente."
}
},
"additionalProperties": false
}Prompts
1 advertised
el-buen-agente — El Buen Agente (v2)
Guía canónica y genérica para crear un agente LLM robusto y performante en cualquier sistema. Cubre cuándo construir (y cuándo no), anatomía mínima, contexto como activo, evaluación, el contrato de agente y la exposición vía MCP.
Resources
14 advertised
el-buen-agente — El Buen Agente (v2)
Guía canónica y genérica para crear un agente LLM robusto y performante en cualquier sistema. Cubre cuándo construir (y cuándo no), anatomía mínima, contexto como activo, evaluación, el contrato de agente y la exposición vía MCP.
guide://el-buen-agente§0: Antes de crear: ¿de verdad hace falta un agente? — Sección individual de la guía
Una sección (0-12) de El Buen Agente, para cargar solo el criterio que se necesita.
guide://el-buen-agente/seccion/0§1: Rol claro y frontera de responsabilidad — Sección individual de la guía
Una sección (0-12) de El Buen Agente, para cargar solo el criterio que se necesita.
guide://el-buen-agente/seccion/1§2: Inputs esperados y outputs útiles para humanos — Sección individual de la guía
Una sección (0-12) de El Buen Agente, para cargar solo el criterio que se necesita.
guide://el-buen-agente/seccion/2§3: Nivel de autonomía permitido — Sección individual de la guía
Una sección (0-12) de El Buen Agente, para cargar solo el criterio que se necesita.
guide://el-buen-agente/seccion/3§4: Qué recomienda y qué ejecuta (frontera explícita desde el diseño) — Sección individual de la guía
Una sección (0-12) de El Buen Agente, para cargar solo el criterio que se necesita.
guide://el-buen-agente/seccion/4§5: Relación con el humano: copiloto, reviewer, challenger — Sección individual de la guía
Una sección (0-12) de El Buen Agente, para cargar solo el criterio que se necesita.
guide://el-buen-agente/seccion/5§6: El contexto como activo estratégico — Sección individual de la guía
Una sección (0-12) de El Buen Agente, para cargar solo el criterio que se necesita.
guide://el-buen-agente/seccion/6§7: Cómo saber si un agente funciona bien — Sección individual de la guía
Una sección (0-12) de El Buen Agente, para cargar solo el criterio que se necesita.
guide://el-buen-agente/seccion/7§8: De agente a contractor: el contrato — Sección individual de la guía
Una sección (0-12) de El Buen Agente, para cargar solo el criterio que se necesita.
guide://el-buen-agente/seccion/8§9: De skills aisladas a sistema coherente — Sección individual de la guía
Una sección (0-12) de El Buen Agente, para cargar solo el criterio que se necesita.
guide://el-buen-agente/seccion/9§10: Economía de agentes: exponer la skill/servicio vía MCP — Sección individual de la guía
Una sección (0-12) de El Buen Agente, para cargar solo el criterio que se necesita.
guide://el-buen-agente/seccion/10§11: Checklist de nacimiento de un agente — Sección individual de la guía
Una sección (0-12) de El Buen Agente, para cargar solo el criterio que se necesita.
guide://el-buen-agente/seccion/11§12: Cómo empezar — Sección individual de la guía
Una sección (0-12) de El Buen Agente, para cargar solo el criterio que se necesita.
guide://el-buen-agente/seccion/12seccion — Sección individual de la guía
Una sección (0-12) de El Buen Agente, para cargar solo el criterio que se necesita.
guide://el-buen-agente/seccion/{numero}30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 1750 ms
- 95th percentile latency
- 1750 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 1750 ms · metadata changed · 18 tool(s), 14 resource(s), 1 resource template(s), 1 prompt(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http el-buen-agente-mcp https://el-buen-agente-mcp-production.up.railway.app/mcpCodex
codex mcp add el-buen-agente-mcp --url https://el-buen-agente-mcp-production.up.railway.app/mcpCursor
{
"mcpServers": {
"el-buen-agente-mcp": {
"url": "https://el-buen-agente-mcp-production.up.railway.app/mcp"
}
}
}Cline
{
"mcpServers": {
"el-buen-agente-mcp": {
"type": "streamableHttp",
"url": "https://el-buen-agente-mcp-production.up.railway.app/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"el-buen-agente-mcp": {
"type": "http",
"url": "https://el-buen-agente-mcp-production.up.railway.app/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http el-buen-agente-mcp https://el-buen-agente-mcp-production.up.railway.app/mcpClaude Desktop
https://el-buen-agente-mcp-production.up.railway.app/mcpWindsurf
{
"mcpServers": {
"el-buen-agente-mcp": {
"serverUrl": "https://el-buen-agente-mcp-production.up.railway.app/mcp"
}
}
}Let your agent find its tools
Find servers like El Buen Agente MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.