el-buen-agente-mcp
La guía 'El Buen Agente' como 18 tools para evaluar, mejorar y construir agentes LLM. En español.
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (6)
- LOWin recomendar_flujo
- LOWin evaluar_necesidad
- LOWin aplicar_challenger
- LOWin generar_contrato
- LOWin plan_exposicion_mcp
- LOWin plan_de_inicio
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"el-buen-agente-mcp": {
"url": "https://el-buen-agente-mcp-production.up.railway.app/mcp"
}
}
}Remote-Endpunkte
https://el-buen-agente-mcp-production.up.railway.app/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (18)
⚪recomendar_flujo(situacion)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"situacion": {
"type": "string",
"enum": [
"nuevo",
"existente"
],
"description": "'nuevo' = diseñar un agente desde cero; 'existente' = mejorar un agente que ya está definido o en producción."
}
},
"required": [
"situacion"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_el_buen_agente
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_*.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪evaluar_necesidad(problema, language)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"problema": {
"type": "string",
"description": "Descripción del problema que se quiere resolver y, si existe, cómo lo resuelve el agente actual."
},
"language": {
"type": "string",
"enum": [
"es",
"en"
],
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"required": [
"problema"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪revisar_rol_y_frontera(agent_definition, language)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"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."
},
"language": {
"type": "string",
"enum": [
"es",
"en"
],
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"required": [
"agent_definition"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪revisar_outputs(agent_definition, language)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"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."
},
"language": {
"type": "string",
"enum": [
"es",
"en"
],
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"required": [
"agent_definition"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪evaluar_autonomia(agent_definition, language)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"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."
},
"language": {
"type": "string",
"enum": [
"es",
"en"
],
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"required": [
"agent_definition"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪revisar_frontera_ejecucion(agent_definition, language)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"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."
},
"language": {
"type": "string",
"enum": [
"es",
"en"
],
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"required": [
"agent_definition"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪aplicar_challenger(agent_definition, language)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"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."
},
"language": {
"type": "string",
"enum": [
"es",
"en"
],
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"required": [
"agent_definition"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪auditar_contexto(agent_definition, language)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"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."
},
"language": {
"type": "string",
"enum": [
"es",
"en"
],
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"required": [
"agent_definition"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪challenger_decision(decision, contexto, language)
Genera el brief para cuestionar una decisión concreta del agente: 3 razones basadas en datos para NO hacerla. No bloquea, informa al humano.
Eingabe-Schema
{
"type": "object",
"properties": {
"decision": {
"type": "string",
"description": "La decisión o recomendación del agente que se quiere cuestionar."
},
"contexto": {
"type": "string",
"description": "Contexto y datos relevantes a la decisión."
},
"language": {
"type": "string",
"enum": [
"es",
"en"
],
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"required": [
"decision"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡disenar_evaluacion(agent_definition, language)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"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."
},
"language": {
"type": "string",
"enum": [
"es",
"en"
],
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"required": [
"agent_definition"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪generar_contrato(nombre, problema, inputs, output, puede, ...)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"nombre": {
"type": "string",
"description": "Nombre del agente."
},
"problema": {
"type": "string",
"description": "Qué resuelve (1 frase) + qué deliberadamente NO toca."
},
"inputs": {
"type": "string",
"description": "Qué consume."
},
"output": {
"type": "string",
"description": "Schema exacto + formato legible para humano."
},
"puede": {
"type": "string",
"description": "Acciones autónomas dentro de límites."
},
"no_puede": {
"type": "string",
"description": "Acciones que requieren aprobación humana / fuera de alcance."
},
"coste": {
"type": "string",
"description": "Modelo + estimado de tokens/mes + tope."
},
"evaluacion": {
"type": "string",
"description": "Métricas de éxito (verde/amarillo/rojo) + cadencia de review."
},
"autonomia": {
"type": "string",
"description": "copiloto | supervisado | autónomo con guardrails (+ plan de progresión)."
},
"language": {
"type": "string",
"enum": [
"es",
"en"
],
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"required": [
"nombre"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪evaluar_sistema(agent_definition, ecosistema, language)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"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."
},
"ecosistema": {
"type": "string",
"description": "Otros agentes/skills existentes en el sistema, si los hay."
},
"language": {
"type": "string",
"enum": [
"es",
"en"
],
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"required": [
"agent_definition"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪plan_exposicion_mcp(agent_definition, language)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"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."
},
"language": {
"type": "string",
"enum": [
"es",
"en"
],
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"required": [
"agent_definition"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪checklist_nacimiento(agent_definition, language)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"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."
},
"language": {
"type": "string",
"enum": [
"es",
"en"
],
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"required": [
"agent_definition"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪validar_veredicto(puntos)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"puntos": {
"type": "array",
"items": {
"type": "object",
"properties": {
"n": {
"type": "integer",
"minimum": 1,
"maximum": 19
},
"estado": {
"type": "string",
"enum": [
"ok",
"parcial",
"falta"
]
}
},
"required": [
"n",
"estado"
],
"additionalProperties": false
},
"minItems": 19,
"maxItems": 19,
"description": "Los 19 puntos del checklist con su estado evaluado."
}
},
"required": [
"puntos"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"aptos": {
"type": "integer"
},
"parciales": {
"type": "integer"
},
"faltas": {
"type": "integer"
},
"veredicto": {
"type": "string",
"enum": [
"apto",
"no_apto"
]
},
"completo": {
"type": "boolean",
"description": "true si están los 19 puntos sin números repetidos."
}
},
"required": [
"aptos",
"parciales",
"faltas",
"veredicto",
"completo"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪construir_agente(definicion_final, contrato, formato, language)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"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."
},
"contrato": {
"type": "string",
"description": "El contrato generado por generar_contrato, si existe."
},
"formato": {
"type": "string",
"enum": [
"markdown",
"claude_skill",
"system_prompt"
],
"description": "Formato del artefacto: 'markdown' (doc de diseño completo, default), 'claude_skill' (SKILL.md con frontmatter), 'system_prompt' (prompt + config para cualquier framework)."
},
"language": {
"type": "string",
"enum": [
"es",
"en"
],
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"required": [
"definicion_final"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪plan_de_inicio(problema, equipo, language)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"problema": {
"type": "string",
"description": "El problema o tarea candidata para el primer agente."
},
"equipo": {
"type": "string",
"description": "Quiénes lo van a usar y revisar."
},
"language": {
"type": "string",
"enum": [
"es",
"en"
],
"description": "Idioma de la respuesta (default \"es\"). / Response language: pass \"en\" for English output."
}
},
"required": [
"problema"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Nachweis