CEIR-OS Bedienungsanleitung
0.1.0 - ci-build
Germany
CEIR-OS Bedienungsanleitung - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
Die MCP-OpenAI Bridge verbindet lokale LLMs mit den MCP-Tools von CEIR-OS. Sie übersetzt MCP-Tool-Definitionen in das OpenAI Function Calling Format und führt Tool-Aufrufe automatisch aus.
| Eigenschaft | Wert |
|---|---|
| Container | ceir-mcp-bridge |
| Port | 8000 |
| Framework | FastAPI + Uvicorn |
| Protokoll | OpenAI-kompatible REST API |
| Endpunkt | Methode | Beschreibung |
|---|---|---|
/v1/chat/completions |
POST | Chat-Completions mit Tool-Unterstützung |
/v1/models |
GET | Verfügbare Modelle (Proxy zu Ollama) |
/v1/tools |
GET | Verfügbare Tools auflisten |
/health |
GET | Health Check |
Beim Start fragt die Bridge alle konfigurierten MCP-Server nach ihren Tools ab:
| MCP-Server | URL | Tools |
|---|---|---|
| Terminology MCP | http://terminology-mcp:3000 |
8 Terminologie-Tools |
| AskMII | http://ask-mii:2026 |
FDPG Query Tools |
| FHIR Spec MCP | http://fhir-spec-mcp:8080 |
FHIR-Navigations-Tools |
Die entdeckten Tools werden in das OpenAI Function Format konvertiert und bei jedem Chat-Request an Ollama mitgegeben.
Falls die Discovery fehlschlägt, werden Fallback-Tools verwendet (lookup_code, search_common_loinc, get_german_label, search_across_versions).
Folgende Tools werden bei der Discovery übersprungen:
| Tool | Grund |
|---|---|
search_codes |
Probleme mit ICD-10-GM |
validate_biomedical_identifier |
Nicht relevant für typische Abfragen |
Bei search_across_versions verwendet die Bridge eine intelligente Retry-Strategie:
Dies kompensiert das Problem, dass lokale LLMs oft zu spezifische Suchbegriffe generieren.
Lokale LLMs erzeugen Tool-Aufrufe nicht immer im nativen Format. Die Bridge unterstützt drei Formate:
Das LLM nutzt die tools-Eigenschaft der Ollama-API direkt.
<function=lookup_code><parameter=system>http://snomed.info/sct</parameter><parameter=code>84114007</parameter></function>
🔧 lookup_code(system=http://snomed.info/sct, code=84114007)
Die Bridge erkennt diese Formate automatisch, extrahiert die Tool-Aufrufe, führt sie aus und entfernt die Formatierung aus der Antwort.
Um Context-Overflow bei lokalen LLMs zu vermeiden, werden Tool-Ergebnisse gekürzt:
| Regel | Wert |
|---|---|
| Maximale Ergebnisgröße | 4000 Zeichen |
search_across_versions |
Nur neueste Version + max. 10 Codes |
| Generisches Trimming | Abschneiden bei Überschreitung des Limits |
Die Bridge generiert automatisch einen System-Prompt, der:
| Umgebungsvariable | Standard | Beschreibung |
|---|---|---|
BRIDGE_PORT |
8000 |
Host-Port |
OLLAMA_URL |
http://host.docker.internal:11434 |
Ollama-Endpunkt |
TERMINOLOGY_URL |
http://terminology-mcp:3000 |
Terminology MCP URL |
ASKMII_URL |
http://ask-mii:2026 |
AskMII URL |
Hinweis zu OLLAMA_URL: Der Standard host.docker.internal ist für Apple-Metal-GPU-Unterstützung optimiert (Ollama läuft nativ auf dem Host). Für Docker-Ollama (CPU) setze OLLAMA_URL=http://ollama:11434.
curl -s http://localhost:8000/health | jq .
Antwort:
{
"status": "ok",
"service": "mcp-openai-bridge",
"tools": 12
}