{"name":"Longevity Valley Expert Foundry","description":"Trust-verified wellness intelligence platform. Experts upload clinical knowledge, AI serves personalized causality-driven health guidance. Every response is MOAT-scored for confidence.","url":"https://app.longevityvalley.ai","version":"2.0.0","capabilities":{"tools":true,"streaming":true,"multiTenant":true,"trustVerification":true},"authentication":{"type":"bearer","description":"Public tools: no auth. Expert tools: X-MCP-API-Key header. Admin tools: X-MCP-API-Key with admin scope."},"intelligenceGraph":{"pipeline":{"name":"9-Step Flywheel","steps":[{"position":1,"name":"n1-ingest","purpose":"Extract biomarkers from uploaded documents","inputs":["patient documents"],"outputs":["biomarker readings"]},{"position":2,"name":"safety-entry","purpose":"Check query for safety concerns (self-harm, medication+mental health)","inputs":["user query"],"outputs":["gate status: clear/warn/block/escalate"]},{"position":3,"name":"personalfit-adapt","purpose":"Match patient context to expert rules + knowledge","inputs":["query, patient profile, rules"],"outputs":["matched rules, knowledge units, GRPO advantage"]},{"position":4,"name":"research-fetch","purpose":"Search expert knowledge base via vector similarity","inputs":["query embedding"],"outputs":["citations, knowledge matches"]},{"position":5,"name":"generate-response","purpose":"LLM generates response using matched rules + knowledge","inputs":["rules, knowledge, patient context"],"outputs":["response text"]},{"position":6,"name":"moat-evaluate","purpose":"Score response confidence: Y = S × [C×A×R + (1-C)×Prior]","inputs":["response, citations, rules"],"outputs":["confidence 0-1, decision: deliver/caveat/route-to-expert"]},{"position":7,"name":"decision-route","purpose":"Route based on MOAT score: deliver, add caveat, or send to expert","inputs":["MOAT score, thresholds"],"outputs":["routing decision"]},{"position":8,"name":"safety-exit","purpose":"Re-check generated response for safety (medication advice, PHI)","inputs":["response text"],"outputs":["safe/unsafe"]},{"position":9,"name":"spine-audit","purpose":"Log trust verification event for audit trail","inputs":["full trace"],"outputs":["verification_event row"]}]},"graphs":[{"name":"Causal Graph","purpose":"Maps symptom → mechanism → solution chains. Used by personalfit-adapt to match patient conditions to clinical reasoning.","nodeTypes":["symptom","mechanism","solution","contraindication"],"edgeTypes":["causes","implies","contraindicates","modifies"]},{"name":"Entity Graph","purpose":"Maps relationships: patient↔expert, expert↔product, patient↔session. Used for multi-tenant routing and assignment.","nodeTypes":["patient","expert","product","agent","tenant","session"],"edgeTypes":["assigned_to","recommended","referred_by","managed_by","enrolled_in"]},{"name":"Evidence Topology","purpose":"Epistemic evidence relationships: rule supports/contradicts citation, correction supersedes rule, biomarker measured_by claim. Used by step 4.5 resolver for convergence scoring and by Holmes for evidence quality investigation.","nodeTypes":["rule","citation","correction","measurement","principle","condition"],"edgeTypes":["supports","contradicts","supersedes","corrected_by","applies_to","measured_by","missed_for","principled_by"]},{"name":"Attribution Graph","purpose":"Tracks which rules contributed to each response. Used by MOAT for confidence scoring and by Holmes for quality investigation."},{"name":"Preference Graph","purpose":"Tracks patient preferences for personalization. Decays over time."},{"name":"Knowledge Units","purpose":"Expert-curated clinical knowledge with vector embeddings. Searched via cosine similarity. Each KU has category, evidence level, and causal links."},{"name":"Crystallized Rules","purpose":"Expert-approved decision rules. Matched to queries during personalfit-adapt. Drive the R-term in MOAT scoring."}],"scoringModel":{"name":"MOAT 4.0","formula":"Y = S × [C×A×R + (1-C)×Prior]","components":{"S":"Safety gate (0=blocked, 0.8=unknown, 1.0=clear)","C":"Certainty (citation density + expert coverage + historical reliability)","A":"Accuracy (citation alignment + rule consistency + cross-verification)","R":"Relevance (semantic alignment + intent fulfillment)"}}},"tools":[{"name":"ask_wellness_question","description":"Query the flywheel with a health question","inputSchemaUrl":"/api/gateway/schemas/ask_wellness_question"},{"name":"verify_trust","description":"verify trust","inputSchemaUrl":"/api/gateway/schemas/verify_trust"},{"name":"list_experts","description":"list experts","inputSchemaUrl":"/api/gateway/schemas/list_experts"},{"name":"start_intake","description":"start intake","inputSchemaUrl":"/api/gateway/schemas/start_intake"},{"name":"continue_intake","description":"continue intake","inputSchemaUrl":"/api/gateway/schemas/continue_intake"},{"name":"escalate_emergency","description":"escalate emergency","inputSchemaUrl":"/api/gateway/schemas/escalate_emergency"},{"name":"kiosk_generateRecoveryNote","description":"kiosk generateRecoveryNote","inputSchemaUrl":"/api/gateway/schemas/kiosk_generateRecoveryNote"},{"name":"kiosk_logCtaChoice","description":"kiosk logCtaChoice","inputSchemaUrl":"/api/gateway/schemas/kiosk_logCtaChoice"},{"name":"kiosk_saveNoteAndCaptureLead","description":"kiosk saveNoteAndCaptureLead","inputSchemaUrl":"/api/gateway/schemas/kiosk_saveNoteAndCaptureLead"},{"name":"kiosk_recognizeMember","description":"kiosk recognizeMember","inputSchemaUrl":"/api/gateway/schemas/kiosk_recognizeMember"},{"name":"report_platform_error","description":"report platform error","inputSchemaUrl":"/api/gateway/schemas/report_platform_error"}],"channels":{"toMaestro":"Write to agent_event_bus with target=maestro. Or escalate via convergence_findings with source=agent0.","fromMaestro":"Read agent_event_bus WHERE target=agent0 AND event_type=convergence_delegation.","toTenant":"Call queueChannelDelivery() with channel=telegram and chatId from device_integrations.","fromTenant":"Messages arrive via /api/channel/intake webhook. Parsed by intake route. Routed by expert slug or paired chat_id."}}