oncofiles
oncofiles
Sus registros médicos están dispersos en Gmail, Google Drive y Calendar. Oncofiles lee todo, lo organiza y lo pone a disposición a través de IA, para que pueda preguntar sobre su salud de forma natural en Claude o ChatGPT.
oncofiles.com | Panel de demostración | Política de privacidad
¿Qué es esto?
Oncofiles es un servidor MCP creado para pacientes con cáncer y sus cuidadores. Se conecta a su Google Drive, Gmail y Calendar, lee todos sus documentos médicos (resultados de laboratorio, tomografías, informes de patología, recetas) y los hace accesibles a través de cualquier chat de IA: Claude, ChatGPT o cualquier cliente MCP.
Creado por una necesidad real: Desarrollado por un cuidador que gestionaba el tratamiento contra el cáncer de su esposa. Cientos de documentos, docenas de médicos, resultados de laboratorio que cambian constantemente. Oncofiles organiza el caos para que pueda concentrarse en el tratamiento, no en buscar papeles.
Proyecto hermano: Oncoteam: un agente de IA que analiza sus datos de Oncofiles: rastrea tendencias de laboratorio, busca ensayos clínicos y prepara preguntas para su oncólogo.
Sus datos, su control: Todo permanece en su Google Drive. Sin procesamiento de datos por parte de terceros. Desconéctese en cualquier momento: sus archivos siempre son suyos.
Soporte para múltiples pacientes (v4.0+)
Oncofiles admite varios pacientes en una sola instancia. Cada paciente obtiene:
Aislamiento total de datos: los documentos, laboratorios, eventos de tratamiento, correos electrónicos y entradas de calendario están limitados al paciente.
Tokens de portador separados: cada paciente (o cuidador) obtiene su propio token
onco_*.OAuth por paciente: Google Drive, Gmail y Calendar se autorizan por paciente.
Selector de pacientes en el panel: cambie entre pacientes en el panel web.
Incorporación de un nuevo paciente
Asistente del panel: Abra el panel, haga clic en "+ Nuevo paciente" y siga el asistente de 4 pasos.
API:
POST /api/patientscon{patient_id, display_name}: devuelve un token de portador.Conectar GDrive: Visite
/oauth/authorize/drive?patient_id=Xpara autorizar la sincronización de documentos.Activar la primera sincronización:
POST /api/sync-triggercon{patient_id}para importar documentos.
Características
76 herramientas MCP en 14 módulos para una gestión integral de datos médicos.
14 categorías de documentos: laboratorios, patología, imágenes, genética, cirugía, consultas, recetas y más.
Seguimiento de valores de laboratorio: almacene valores, rastree tendencias, comprobaciones de seguridad previas al ciclo para protocolos de quimioterapia.
Sincronización con Google Drive: sincronización bidireccional con archivos complementarios de OCR automáticos.
Escaneo de Gmail y Calendar: los correos electrónicos médicos y las citas se detectan y clasifican automáticamente.
Investigación clínica: busque en PubMed y ClinicalTrials.gov, registre decisiones de investigación.
Cronología del tratamiento: realice un seguimiento de los ciclos de quimioterapia, cirugías y otros eventos de tratamiento.
Control de versiones de documentos: realice un seguimiento de las revisiones de documentos con un historial completo.
Metadatos impulsados por IA: resúmenes automáticos, etiquetas y extracción de datos estructurados.
Registro de auditoría: cada llamada a la herramienta se registra para mayor responsabilidad.
Arquitectura
┌─────────────────┐ MCP Protocol ┌──────────────┐
│ Claude / GPT │◄────────────────────► │ Oncofiles │
│ (AI Assistant) │ streamable-http │ MCP Server │
└─────────────────┘ └──────┬───────┘
│
┌─────────────┼─────────────┐
│ │ │
┌─────▼─────┐ ┌────▼────┐ ┌─────▼─────┐
│ SQLite / │ │ Google │ │ Anthropic │
│ Turso │ │ Drive │ │ Files API │
└───────────┘ └─────────┘ └───────────┘Stack: Python 3.12+ · FastMCP 3.1 · Pydantic · SQLite/Turso · Railway
Inicio rápido
# Clone and install
git clone https://github.com/peter-fusek/oncofiles.git
cd oncofiles
uv sync --extra dev
# Run locally (stdio mode for Claude Desktop)
uv run oncofiles-mcp
# Run tests
uv run pytest
# Lint
uv run ruff checkVariables de entorno
# Required
DATABASE_PATH=data/oncofiles.db
# Optional — cloud database
TURSO_DATABASE_URL=libsql://...
TURSO_AUTH_TOKEN=...
# Optional — Google Drive sync
GOOGLE_DRIVE_FOLDER_ID=...
GOOGLE_OAUTH_CLIENT_ID=...
GOOGLE_OAUTH_CLIENT_SECRET=...
# Optional — remote access
MCP_TRANSPORT=streamable-http # default: stdio
MCP_HOST=0.0.0.0
MCP_PORT=8080
MCP_BEARER_TOKEN=...Conectar a Claude Desktop
Añada a su configuración de Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"oncofiles": {
"command": "uv",
"args": ["run", "oncofiles-mcp"],
"cwd": "/path/to/oncofiles"
}
}
}Conectar a ChatGPT
Oncofiles funciona con la integración MCP de ChatGPT (Modo desarrollador). Apunte ChatGPT al endpoint /mcp de su instancia con un token de portador.
Desplegar en Railway
El Dockerfile incluido está listo para el despliegue en Railway:
Envíe a GitHub
Conecte el repositorio en Railway
Establezca las variables de entorno
Railway realiza el despliegue automático al enviar cambios
Instancia en vivo: oncofiles.com
Estructura del proyecto
src/oncofiles/
├── server.py # FastMCP server, auth, routes, scheduler
├── database/ # Mixin-based DB layer (SQLite/Turso)
├── tools/ # 14 tool modules (76 tools)
│ ├── documents.py # CRUD, search, view, versioning
│ ├── lab_trends.py # Lab values, trends, safety checks
│ ├── clinical.py # Treatment events, research log
│ ├── research.py # PubMed, ClinicalTrials.gov search
│ └── ...
├── sync.py # Bidirectional Google Drive sync
├── gmail_sync.py # Medical email detection and import
├── calendar_sync.py # Calendar event classification
├── enhance.py # AI metadata extraction (Haiku)
├── patient_middleware.py # Per-patient token → context resolution
├── patient_context.py # Patient clinical profile
└── models.py # Pydantic modelsRegistro MCP
Listado en el Registro MCP como io.github.peter-fusek/oncofiles.
Contribución
Consulte CONTRIBUTING.md para conocer las pautas.
Licencia
Quién está detrás de esto
Las personas
Peter Fusek — CEO y fundador
Emprendedor en serie y estratega de IA. 4 años en Tatra banka. Cofundador de marketlocator (salida a Deutsche Telekom). Asesor del CEO de VÚB Bank. Más de 18 años creando productos tecnológicos.
Construyó Oncofiles por necesidad personal: gestionando el tratamiento contra el cáncer de su esposa a través de cientos de documentos, docenas de médicos y resultados de laboratorio que cambian constantemente.
LinkedIn · peter.fusek@instarea.com
Peter Čapkovič — CTO y cofundador
Arquitecto de TI senior con más de 20 años en banca empresarial (VÚB). Experto en .NET, Python, SQL y arquitectura de sistemas. Lideró la arquitectura en todos los productos de Instarea.
Arquitectura, desarrollo, operaciones: todo bajo un mismo techo.
La empresa
Instarea — 18 años, 23 productos lanzados. Desde análisis de telecomunicaciones y clientes empresariales (Callinspector) hasta fintech móvil (InventButton), salidas de big data (marketlocator → Deutsche Telekom), plataformas IoT y productos de IA (PulseShape, ReplicaCity, HomeGrif).
Oncofiles y Oncoteam son los últimos productos de Instarea, creados con la misma disciplina de ingeniería que entregó productos de nivel empresarial para las industrias bancaria, de telecomunicaciones y de datos.
Más de 10 miembros del equipo verificados y sincronizados disponibles en front-end, back-end, integración, ciencia de datos, UX/UI, marketing y operaciones en la nube.
"Nos lo tomamos personalmente, con nuestras propias caras, como en familia y en el trabajo".
Latest Blog Posts
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/peter-fusek/oncofiles'
If you have feedback or need assistance with the MCP directory API, please join our Discord server