Cada aplicación Agent-Lab incluye un servidor de Model Context Protocol
construido sobre FastMCP y montado en /mcp
(Streamable HTTP, sin estado). Los clientes MCP (Claude Desktop, IDE, tus propios agentes)
pueden descubrir los agentes de la aplicación, leer el historial de diálogos y hablar directamente con los agentes. El
servidor y sus registradores de herramientas y prompts participan en el mismo mecanismo de descubrimiento que los
agentes: scan_packages y el grupo de entry points agent_lab.agents.
Qué expone el servidor
| Herramienta | Descripción |
|---|---|
get_agent_list |
Lista los agentes registrados en la aplicación en ejecución |
get_message_list |
Lee el historial de diálogos de un agente |
post_message |
Envía un mensaje a un agente: comunicación entre agentes |
read_prompt_mcp |
Lee una plantilla de prompt; también se expone como prompt MCP (prompts/get) y como recurso (prompt://) |
Este trío de prompts expone los prompts de sistema predeterminados de cada tipo de agente, con
anulaciones por tenant mediante agent_type + setting_key.
Pruébalo con MCP Inspector
Inicia el MCP Inspector y
conéctate a tu aplicación (p. ej., http://localhost:18000/mcp, transporte: Streamable HTTP):
npx @modelcontextprotocol/inspectorAccede a la consola web (usa el enlace del proxy que se muestra en la consola).

Conecta Claude Desktop
Nota: Aquí se usa Claude Desktop solo como demostración. Este proyecto no está afiliado a Anthropic AI.
Instala el puente mcp-proxy que usa Claude Desktop para conectarse a servidores HTTP remotos:
pip install mcp-proxyAbre Settings → Developer → Edit Config y edita
claude_desktop_config.json(adapta el endpoint a tu instalación; el entorno de Python debe contenermcp-proxy):



- Reinicia Claude Desktop y vuelve a ir a Settings → Developer; Agent-Lab debería aparecer:

- Pruébalo: pídele a Claude que liste los agentes, que obtenga el historial de diálogos de una instancia de agente programador supervisado o que muestre un fragmento de código que el agente generó antes:


API Responses de OpenAI
La herramienta alojada de Model Context Protocol (MCP) en la API Responses facilita la conexión con servicios externos: configura tu modelo una sola vez para que apunte a un servidor MCP, que actúa como host centralizado de herramientas. (Fuente: MCP Tool Guide)
Hay un notebook que demuestra la integración de la API Responses de OpenAI con el servidor MCP de Agent-Lab disponible en notebooks/11_mcp_client-openai-responses.ipynb.
Agrega tus propias herramientas y prompts
Todo se descubre de la misma forma que los agentes: decora y (si consumes la
biblioteca) asegúrate de que tu paquete esté en scan_packages o publicado mediante el
grupo de entry points agent_lab.agents.
Una herramienta: una función async simple; su primer parámetro, container, se inyecta
desde el contenedor de DI y queda oculto para los clientes:
from agent_lab import discoverable_mcp_tool
@discoverable_mcp_tool(
"my_hello_tool",
description="Returns a friendly greeting.",
annotations={"readOnlyHint": True},
)
async def hello_tool(container, name: str) -> str:
return f"Hello, {name}!"Un prompt: se expone en el trío completo de prompts (herramienta / prompts/get /
recurso prompt://):
from agent_lab import discoverable_mcp_prompt
@discoverable_mcp_prompt("my_greeting_prompt")
def greeting_prompt() -> str:
return "Greet the user warmly and briefly."Avanzado: una subclase completa de McpRegistrar (o de PromptSetRegistrar) para conjuntos personalizados
de herramientas, prompts y recursos, mediante @discoverable_mcp_registrar(extra_deps=(...)). Para
agregar instrucciones MCP para los clientes, pasa fragmentos al componer la aplicación:
app = create_app(mcp_instructions=["Extra guidance for MCP clients."])La estructura generada incluye un ejemplo práctico (mcp/tools.py, mcp/prompts.py); consulta
Tu primer agente.
Autenticación
Cuando la autenticación está habilitada, los clientes MCP se autentican mediante un proxy OAuth respaldado por
Keycloak: verificación de JWT contra el JWKS del realm (scopes openid,
profile, email) y almacenamiento de clientes OAuth en Redis (cifrado). La aplicación
publica los endpoints de metadatos estándar
(/.well-known/oauth-protected-resource/mcp,
/.well-known/oauth-authorization-server/mcp) para que los clientes compatibles puedan configurarse por sí solos.