oncofiles
oncofiles
Ваши медицинские записи разбросаны по Gmail, Google Drive и Календарю. Oncofiles считывает всё, систематизирует и делает доступным через ИИ — чтобы вы могли задавать вопросы о своем здоровье естественным образом в Claude или ChatGPT.
oncofiles.com | Демо-панель | Политика конфиденциальности
Что это такое?
Oncofiles — это MCP-сервер, созданный для онкологических пациентов и их опекунов. Он подключается к вашим Google Drive, Gmail и Календарю, считывает все ваши медицинские документы (результаты анализов, КТ, патологоанатомические отчеты, рецепты) и делает их доступными через любой ИИ-чат — Claude, ChatGPT или любой другой MCP-клиент.
Создано из реальной необходимости: Разработано опекуном, который занимался лечением рака у своей жены. Сотни документов, десятки врачей, постоянно меняющиеся результаты анализов. Oncofiles упорядочивает этот хаос, чтобы вы могли сосредоточиться на лечении, а не на поиске бумаг.
Родственный проект: Oncoteam — ИИ-агент, который анализирует ваши данные из Oncofiles: отслеживает динамику анализов, ищет клинические испытания и готовит вопросы для вашего онколога.
Ваши данные, ваш контроль: Всё остается в вашем Google Drive. Никакой обработки данных третьими лицами. Отключитесь в любое время — ваши файлы всегда принадлежат вам.
Поддержка нескольких пациентов (v4.0+)
Oncofiles поддерживает нескольких пациентов в рамках одного экземпляра. Каждый пациент получает:
Полную изоляцию данных — документы, анализы, события лечения, электронные письма и записи в календаре привязаны к конкретному пациенту
Отдельные токены доступа (bearer tokens) — каждый пациент (или опекун) получает свой собственный токен
onco_*OAuth для каждого пациента — Google Drive, Gmail и Календарь авторизуются отдельно для каждого пациента
Выбор пациента в панели управления — переключение между пациентами в веб-интерфейсе
Подключение нового пациента
Мастер настройки: Откройте панель управления, нажмите «+ New Patient» и следуйте 4-шаговому мастеру
API:
POST /api/patientsс{patient_id, display_name}— возвращает токен доступаПодключение GDrive: Перейдите по адресу
/oauth/authorize/drive?patient_id=Xдля авторизации синхронизации документовЗапуск первой синхронизации:
POST /api/sync-triggerс{patient_id}для импорта документов
Функции
76 MCP-инструментов в 14 модулях для комплексного управления медицинскими данными
14 категорий документов — анализы, патология, визуализация, генетика, хирургия, консультации, рецепты и многое другое
Отслеживание показателей анализов — хранение значений, отслеживание динамики, проверки безопасности перед циклами химиотерапии
Синхронизация с Google Drive — двусторонняя синхронизация с автоматическими сопутствующими файлами OCR
Сканирование Gmail и Календаря — медицинские письма и приемы автоматически распознаются и классифицируются
Клинические исследования — поиск в PubMed и ClinicalTrials.gov, регистрация решений по исследованиям
Хронология лечения — отслеживание циклов химиотерапии, операций и других событий лечения
Версионность документов — отслеживание правок документов с полной историей
Метаданные на базе ИИ — автоматические сводки, теги и извлечение структурированных данных
Аудит-логирование — каждый вызов инструмента логируется для обеспечения подотчетности
Архитектура
┌─────────────────┐ MCP Protocol ┌──────────────┐
│ Claude / GPT │◄────────────────────► │ Oncofiles │
│ (AI Assistant) │ streamable-http │ MCP Server │
└─────────────────┘ └──────┬───────┘
│
┌─────────────┼─────────────┐
│ │ │
┌─────▼─────┐ ┌────▼────┐ ┌─────▼─────┐
│ SQLite / │ │ Google │ │ Anthropic │
│ Turso │ │ Drive │ │ Files API │
└───────────┘ └─────────┘ └───────────┘Стек: Python 3.12+ · FastMCP 3.1 · Pydantic · SQLite/Turso · Railway
Быстрый старт
# 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 checkПеременные окружения
# 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=...Подключение к Claude Desktop
Добавьте в конфигурацию Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"oncofiles": {
"command": "uv",
"args": ["run", "oncofiles-mcp"],
"cwd": "/path/to/oncofiles"
}
}
}Подключение к ChatGPT
Oncofiles работает с интеграцией MCP в ChatGPT (режим разработчика). Укажите ChatGPT конечную точку /mcp вашего экземпляра с токеном доступа.
Развертывание на Railway
Включенный Dockerfile готов к развертыванию на Railway:
Отправьте код в GitHub
Подключите репозиторий в Railway
Установите переменные окружения
Railway автоматически развернет приложение при пуше
Рабочий экземпляр: oncofiles.com
Структура проекта
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 modelsРеестр MCP
Указан в реестре MCP как io.github.peter-fusek/oncofiles.
Участие в разработке
См. CONTRIBUTING.md для получения инструкций.
Лицензия
Кто за этим стоит
Команда
Петер Фусек — Генеральный директор и основатель
Серийный предприниматель и ИИ-стратег. 4 года в Tatra banka. Сооснователь marketlocator (выход через продажу Deutsche Telekom). Советник генерального директора VÚB Bank. Более 18 лет создания технологических продуктов.
Создал Oncofiles из личной необходимости — управляя лечением рака у своей жены, проходя через сотни документов, десятки врачей и постоянно меняющиеся результаты анализов.
LinkedIn · peter.fusek@instarea.com
Петер Чапкович — Технический директор и сооснователь
Старший ИТ-архитектор с более чем 20-летним опытом в корпоративном банковском секторе (VÚB). Эксперт в .NET, Python, SQL и системной архитектуре. Руководил архитектурой всех продуктов Instarea.
Архитектура, разработка, операции — всё под одной крышей.
Компания
Instarea — 18 лет, 23 выпущенных продукта. От телекоммуникационной аналитики и корпоративных клиентов (Callinspector) до финтеха с приоритетом мобильных устройств (InventButton), выходов из Big Data (marketlocator → Deutsche Telekom), IoT-платформ и продуктов с приоритетом ИИ (PulseShape, ReplicaCity, HomeGrif).
Oncofiles и Oncoteam — последние разработки Instarea, созданные с той же инженерной дисциплиной, которая обеспечила создание продуктов корпоративного уровня для банковской, телекоммуникационной и информационной отраслей.
Более 10 проверенных, синхронизированных членов команды, доступных в сферах фронтенда, бэкенда, интеграции, науки о данных, UX/UI, маркетинга и облачных операций.
«Мы относимся к этому лично, открыто, как к семье и работе».
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