Jede Agent-Lab-Anwendung bringt einen Model Context Protocol-Server
mit, der auf FastMCP basiert und unter /mcp eingebunden ist
(Streamable HTTP, zustandslos). MCP-Clients – Claude Desktop, IDEs, Ihre eigenen Agenten –
können die Agenten der Anwendung entdecken, den Dialogverlauf lesen und direkt mit Agenten kommunizieren. Der
Server und seine Tool-/Prompt-Registrare nutzen denselben Discovery-Mechanismus wie
Agenten: scan_packages und die Entry-Point-Gruppe agent_lab.agents.
Was der Server bereitstellt
| Tool | Beschreibung |
|---|---|
get_agent_list |
Listet die in der laufenden Anwendung registrierten Agenten auf |
get_message_list |
Liest den Dialogverlauf eines Agenten |
post_message |
Sendet eine Nachricht an einen Agenten – Agent-zu-Agent-Kommunikation |
read_prompt_mcp |
Liest ein Prompt-Template; wird auch als MCP-Prompt (prompts/get) und Ressource (prompt://) bereitgestellt |
Das Prompt-Tripel stellt die Standard-System-Prompts jedes Agententyps bereit, mit mandantenspezifischen
Überschreibungen über agent_type + setting_key.
Mit dem MCP Inspector ausprobieren
Starten Sie den MCP Inspector und
verbinden Sie ihn mit Ihrer Anwendung (z. B. http://localhost:18000/mcp, Transport: Streamable HTTP):
npx @modelcontextprotocol/inspectorÖffnen Sie die Webkonsole (verwenden Sie den in der Konsole ausgegebenen Proxy-Link).

Claude Desktop verbinden
Hinweis: Claude Desktop wird hier nur zu Demonstrationszwecken verwendet. Dieses Projekt steht in keiner Verbindung zu Anthropic AI.
Installieren Sie die Bridge mcp-proxy, die Claude Desktop verwendet, um entfernte HTTP-Server zu erreichen:
pip install mcp-proxyÖffnen Sie Settings → Developer → Edit Config und bearbeiten Sie
claude_desktop_config.json(passen Sie den Endpoint an Ihre Installation an; die Python-Umgebung mussmcp-proxyenthalten):



- Starten Sie Claude Desktop neu und navigieren Sie erneut zu Settings → Developer – Agent-Lab sollte nun sichtbar sein:

- Probieren Sie es aus: Bitten Sie Claude, die Agenten aufzulisten, den Dialogverlauf einer Instanz des Supervised-Coder-Agenten abzurufen oder ein Snippet anzuzeigen, das der Agent zuvor generiert hat:


OpenAI Responses API
Das gehostete Model-Context-Protocol-Tool (MCP) in der Responses API vereinfacht die Anbindung an externe Services: Konfigurieren Sie Ihr Modell einmalig so, dass es auf einen MCP-Server zeigt – dieser fungiert als zentraler Tool-Host. (Quelle: MCP Tool Guide)
Ein Notebook, das die Integration der OpenAI Responses API mit dem Agent-Lab-MCP-Server demonstriert, finden Sie unter notebooks/11_mcp_client-openai-responses.ipynb.
Eigene Tools und Prompts hinzufügen
Alles wird auf dieselbe Weise entdeckt wie Agenten – dekorieren Sie es und stellen Sie (als
Bibliotheksnutzer) sicher, dass Ihr Paket in scan_packages enthalten ist oder über die
Entry-Point-Gruppe agent_lab.agents veröffentlicht wird.
Ein Tool – eine einfache asynchrone Funktion; ihr führender Parameter container wird
aus dem DI-Container injiziert und vor Clients verborgen:
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}!"Ein Prompt – bereitgestellt über das vollständige Prompt-Tripel (Tool / prompts/get /
prompt://-Ressource):
from agent_lab import discoverable_mcp_prompt
@discoverable_mcp_prompt("my_greeting_prompt")
def greeting_prompt() -> str:
return "Greet the user warmly and briefly."Fortgeschritten – eine vollständige Unterklasse von McpRegistrar (oder PromptSetRegistrar) für eigene
Tool-/Prompt-/Ressourcen-Sets, über @discoverable_mcp_registrar(extra_deps=(...)). Um
MCP-Instructions für Clients hinzuzufügen, übergeben Sie bei der Komposition Fragmente:
app = create_app(mcp_instructions=["Extra guidance for MCP clients."])Ein ausgearbeitetes Beispiel ist im Scaffold enthalten (mcp/tools.py, mcp/prompts.py) – siehe
Ihr erster Agent.
Authentifizierung
Wenn die Authentifizierung aktiviert ist, authentifizieren sich MCP-Clients über einen OAuth-Proxy, der auf
Keycloak basiert: JWT-Prüfung gegen die JWKS des Realms (Scopes openid,
profile, email) und Speicherung der OAuth-Clients in Redis (verschlüsselt). Die Anwendung
veröffentlicht die standardmäßigen Metadaten-Endpoints
(/.well-known/oauth-protected-resource/mcp,
/.well-known/oauth-authorization-server/mcp), sodass konforme Clients sich selbst konfigurieren können.