real-world-mcp
Servidor MCP de Evidencia del Mundo Real y Viabilidad Clínica
Repositorio: Krv-Labs/how-to-train-your-dragon
Clasifica organizaciones de salud de EE. UU. por sujetos aleatorizados esperados por 12 meses para un protocolo de enfermedad de Graves (NCT07570316) a partir de reclamaciones longitudinales (Komodo) y registros públicos (ClinicalTrials.gov), expuesto como un servidor de Model Context Protocol (MCP) interactivo para agentes de IA.
El paquete de Python es httyd; el servidor MCP se registra como real-world-mcp. Puntos de entrada de CLI: httyd, realworld-mcp y how-to-train-your-dragon.
¿Por qué el nombre? Construido sobre datos de reclamaciones de Komodo Health: domar y entrenar al dragón de Komodo para convertirlo en modelos de viabilidad accionables.
1. Arquitectura y estructura del paquete
how-to-train-your-dragon/
├── httyd/ # Main Python package
│ ├── models/ # L1–L5 parameters, provenance registry, recruitment math
│ ├── analysis/ # Scoring pipeline, catchment, accrual, site linkage
│ ├── data/ # Dataset catalog, loaders, CTG fetch
│ ├── evaluations/ # Temporal holdout validation
│ ├── auth/ # Kubernetes token auth & scope enforcement
│ ├── engine.py # In-memory FeasibilityEngine singleton
│ ├── cache.py # Precomputed site/geo cache loader
│ └── server.py # MCP server (16 tools, 4 resources, 2 prompts)
├── ui/ # Local observation dashboard (offline HTML)
│ ├── build_dashboard.py
│ └── (writes to output/site_feasibility.html)
├── data/ # Claims & registry assets (not committed — see below)
├── docs/ # Methodology, scoring review, evidence
├── deploy/helm/httyd/ # GKE Helm chart
├── scripts/precompute.py # Build startup cache (Docker + local dev)
├── tests/
├── pyproject.toml
└── README.mdNota sobre los datos: Los CSV de reclamaciones de Komodo están en gitignore. Solo se confirma data/nct07570316_sites.json (fixture de verdad de referencia). Coloque los archivos de datos con licencia en data/ localmente antes de ejecutar el motor.
Metodología y evidencia de validación: docs/README.md.
2. Inicio rápido
Instalación
uv syncPrecalcular caché (recomendado)
Una reconstrucción completa de la puntuación nacional tarda ~90s. Precalcule una vez y reutilice:
uv run python scripts/precompute.py
export REALWORLD_CACHE_DIR=./cache # optional; defaults to ./cache when presentEjecutar pruebas
REALWORLD_CACHE_DIR=./cache uv run pytestAlgunas pruebas (rescore de sensibilidad, validación) desencadenan una reconstrucción completa y tardan ~2 minutos en total.
Iniciar el servidor MCP
# stdio transport (default — Claude Desktop, Cursor)
uv run httyd
# streamable-http (local dev)
AUTH_ENABLED=false REALWORLD_CACHE_DIR=./cache uv run httyd streamable-http
curl http://localhost:8080/healthGenerar panel de vista previa local
uv run python ui/build_dashboard.py
open output/site_feasibility.html3. Superficie de herramientas MCP
real-world-mcp expone 16 herramientas en 6 áreas:
A. Descubrimiento e inspección de conjuntos de datos
list_datasets,describe_dataset,get_cohort_summary
B. Registro de modelos y procedencia
list_models,get_provenance
C. Búsqueda de sitios y análisis en profundidad
search_and_score_sites,get_site_details,explain_site_score
D. Captación espacial y optimización de cesta
compute_basket_catchment,find_nearby_competitors
E. Previsión de acumulación y sensibilidad
simulate_accrual_timeline,update_interim_accrual,compute_sensitivity_rescore,match_trial_facility
F. Validación y limitaciones
run_model_validation,get_model_limitations
4. Configuración del agente MCP
{
"mcpServers": {
"real-world-mcp": {
"command": "uv",
"args": [
"--directory",
"/path/to/how-to-train-your-dragon",
"run",
"httyd"
],
"env": {
"REALWORLD_CACHE_DIR": "/path/to/how-to-train-your-dragon/cache"
}
}
}
}5. Despliegue interno en GKE
Despliegue como un servicio MCP ClusterIP interno. Los pods de subagente se autentican con tokens de ServiceAccount de Kubernetes validados mediante la API TokenReview.
Arquitectura
Transporte:
streamable-httpen el puerto 8080 en/mcpAutenticación: token Bearer = token de ServiceAccount proyectado (
audience: httyd)Autorización: ConfigMap asigna
system:serviceaccount:<ns>:<name>→ alcancesRed: NetworkPolicy permite el tráfico entrante solo desde namespaces etiquetados con
httyd-client: "true"
Alcance | Acceso |
| Herramientas de descubrimiento, búsqueda, explicación y procedencia |
| Simulación de acumulación, rescore de sensibilidad, captación de cesta |
Compilar y desplegar
docker build -t httyd:0.1.0 .
helm upgrade --install httyd deploy/helm/httyd \
-n realworld --create-namespace \
--set image.repository=REGION-docker.pkg.dev/PROJECT/REPO/httyd \
--set image.tag=0.1.0Registre los ServiceAccounts de subagente en deploy/helm/httyd/scopes.yaml antes de desplegar.
Configuración del pod de subagente
kubectl label namespace app httyd-client=trueserviceAccountName: subagent-feasibility-reader
volumes:
- name: mcp-token
projected:
sources:
- serviceAccountToken:
audience: httyd
expirationSeconds: 3600
path: token
volumeMounts:
- name: mcp-token
mountPath: /var/run/secrets/tokens
readOnly: true
env:
- name: HTTYD_MCP_URL
value: "http://httyd.httyd.svc:8080/mcp"
- name: HTTYD_MCP_TOKEN_FILE
value: "/var/run/secrets/tokens/token"Variables de entorno
Variable | Default | Propósito |
|
| Habilitar autenticación de token de K8s |
|
| Identificador de recurso OAuth |
|
| Asignación de SA → alcance |
|
| Audiencia de token esperada |
|
| JSON de sitios/geo precalculados |
|
| Puerto de escucha HTTP |
|
| Dirección de enlace HTTP |
|
| Sesiones MCP sin estado (recomendado para K8s) |
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Physician-reviewed medical opinions and prescriptions for AI agents.
Guardrailed FHIR access for AI agents: PHI redaction, audit trail, step-up auth, tenant isolation
FDA and CMS evidence for AI medical devices: 510(k), postmarket, reimbursement, and compliance.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Krv-Labs/how-to-train-your-dragon'
If you have feedback or need assistance with the MCP directory API, please join our Discord server