Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card
Сервер FHIR MCP для ШІ-агентів
Підключіть Claude Code, Cursor, VS Code або Claude Desktop до API HL7 FHIR R4 через MCP: 20 інструментів для читання записів, контекст, готовий для ШІ, запис, імпорт лабораторії та скидання пісочниці, на 30 синтетичних пацієнтах, безкоштовно.
Anpheros FHIR — це віддалений MCP-сервер, який дозволяє ШІ-агенту (Claude, Claude Code, Cursor, VS Code, Claude Desktop) працювати з HL7 FHIR R4 API для медичних даних. Він підключається двома способами:
- За допомогою безкоштовного ключа пісочниці для розробників: ваш агент перелічує пацієнтів, читає їхні записи у форматі FHIR або як контекст, готовий для ШІ, з походженням, записує спостереження, імпортує лабораторні звіти та скидає тестові дані, все це на 30 синтетичних пацієнтах з реалістичною історією.
- За допомогою OAuth для особи та її власного запису: асистент реєструється, особа входить у систему та схвалює його на екрані згоди Anpheros, після чого асистент може читати цей один запис протягом обраного періоду, лише для читання, якщо особа не дозволила більше.
Адреса сервера: https://platform.anpheros.com/mcp (потоковий HTTP, без стану).
Підключення через OAuth (Claude та інші асистенти)
Додайте https://platform.anpheros.com/mcp як користувацький конектор (у Claude: Settings → Connectors → Add custom connector). Більше нічого налаштовувати не потрібно: асистент виявляє сервер авторизації, реєструється та відкриває екран згоди Anpheros. Там людина бачить, що це ШІ-асистент, куди надсилається прочитана інформація компанії, яка керує асистентом, що він може читати, як довго і куди повернеться після вибору. Доступ є тільки для читання, якщо не було запитано та дозволено більше, і людина може відкликати його в будь-який час.
Під час закритого бета-тестування OAuth-підключення використовують записи пісочниці (sandbox). Підключення до реальних записів відкриються після оновлення політики конфіденційності.
Підключення за допомогою ключа пісочниці (для розробників)
- Увійдіть на platform.anpheros.com/dashboard за допомогою Google та виберіть Get a sandbox key. Ви отримаєте ключ
sk_test_…та проєкт із 30 синтетичними пацієнтами. - Вставте ключ у змінну середовища, наприклад
ANPHEROS_KEY, та додайте сервер до свого інструменту.
Claude Code
claude mcp add --transport http anpheros-fhir https://platform.anpheros.com/mcp --header "Authorization: Bearer $ANPHEROS_KEY"
Cursor (~/.cursor/mcp.json або .cursor/mcp.json у проєкті)
{
"mcpServers": {
"anpheros-fhir": {
"url": "https://platform.anpheros.com/mcp",
"headers": { "Authorization": "Bearer ${env:ANPHEROS_KEY}" }
}
}
}
VS Code (.vscode/mcp.json)
{
"servers": {
"anpheros-fhir": {
"type": "http",
"url": "https://platform.anpheros.com/mcp",
"headers": { "Authorization": "Bearer ${env:ANPHEROS_KEY}" }
}
}
}
Claude Desktop (claude_desktop_config.json, через міст mcp-remote)
{
"mcpServers": {
"anpheros-fhir": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://platform.anpheros.com/mcp", "--header", "Authorization: Bearer ${ANPHEROS_KEY}"],
"env": { "ANPHEROS_KEY": "sk_test_…" }
}
}
}
Потім поставте своєму агенту запитання на кшталт: "List the sandbox patients, pick the one with diabetes and summarise her last six months of HbA1c."
Інструменти
| Інструмент | Що він робить |
|---|---|
list_patients |
пацієнти проєкту: 30 синтетичних персон та будь-які створені вами |
get_patient_context |
контекст для одного пацієнта, готовий для ШІ, в межах бюджету токенів, кожен елемент позначений джерелом |
get_patient_summary |
Міжнародний підсумок пацієнта (FHIR $summary), мовою, яку ви запитуєте |
get_timeline |
записи в хронологічному порядку за типами ресурсів |
get_health_patterns |
бета: що змінилося і що повторюється, кожне знахідка з її періодом, доказами та обмеженнями; не діагнози (посібник) |
get_pattern_evidence |
бета: кожен ресурс за однією знахідкою |
get_series |
бета: одне вимірювання як одне значення на день, з якістю даних |
compare_periods |
бета: одне вимірювання за два вибрані вами періоди |
search_fhir |
стандартний пошук FHIR R4, що повертає Bundle |
read_fhir_resource |
один ресурс або його попередню версію |
get_provenance |
хто створив ресурс, коли і з якої системи |
lookup_code |
коди LOINC за текстом або кодом (для ліків використовуйте search_health_terms) |
search_health_terms |
публічний каталог симптомів, станів та лікувань за назвою 20 мовами, синонімом, брендом або кодом (посібник) |
get_health_term |
один запис каталогу з його кодами, назвами, резюме MedlinePlus, посиланнями на джерела та цитованими показаннями EMA / FDA |
validate_fhir_resource |
перевіряє ресурс без його збереження |
create_fhir_resource |
валідує, а потім записує ресурс |
create_patient |
новий вигаданий пацієнт у проєкті |
import_lab_report |
CSV, HL7 v2 ORU^R01 або JSON звіт про лабораторні дослідження стає лабораторними спостереженнями |
sandbox_status |
записує використані сьогодні, пацієнтів, сховище, скидання |
reset_sandbox |
відновлює 30 синтетичних пацієнтів (запитує підтвердження) |
Інструменти для читання позначені як read-only, а скидання — як деструктивне, тому клієнти можуть запитувати перед ризикованими діями. Сервер також пропонує список синтетичних пацієнтів як ресурс і три підказки: резюме для клініциста, імпорт CSV для лабораторії та побудова вашої інтеграції на основі API.
Як це працює
- Ті ж правила, що й для API. Кожен інструмент викликає публічний API з вашим ключем: ті ж області доступу (scopes), обмеження швидкості (rate limits), валідація та аудит. Ключ тільки для читання (read-only) не може записувати.
- Походження (Provenance). Усе, що записує агент, фіксується з джерелом
urn:anpheros:mcp, тому ви завжди можете визначити, що походить від агента. - Дані пацієнта — це дані. Результати інструментів містять примітку про те, що вміст запису ніколи не слід використовувати як інструкції, що є базовим захистом від ін'єкції підказок (prompt injection) через медичні записи.
- Один запис, за згодою. Ключі для виробничого API (
sk_live_…) відхиляються, оскільки вони отримують доступ до кожного пацієнта проєкту. Реальний запис потрапляє до асистента лише через OAuth, після того, як людина його схвалить, і кожне читання реєструється в історії доступу. - Стандартне виявлення (discovery). Без облікових даних сервер відповідає 401 з заголовком
WWW-Authenticate, що вказує на його захищені OAuth метадані ресурсу (RFC 9728); асистенти реєструються через динамічну реєстрацію клієнта (RFC 7591) з PKCE. Реєстрація приймає лише loopback адреси, схеми додатків відомих редакторів та домени зворотного виклику (callback domains) відомих AI-асистентів.
Часті запитання
Що таке MCP сервер?
MCP (Model Context Protocol) — це відкритий протокол, за допомогою якого ШІ-агенти та помічники з написання коду викликають зовнішні інструменти. MCP сервер для FHIR дозволяє агенту читати та записувати медичні записи безпосередньо, замість того, щоб ви вставляли дані в чат.
Це безкоштовно?
Так. MCP сервер працює на безкоштовному пісочниці: 30 синтетичних пацієнтів на проєкт, до 10 000 записів на день, без картки.
Чи може помічник читати запис реального пацієнта?
Тільки через OAuth, після того, як ця особа схвалить помічника на екрані згоди, на вибраний нею період, і тільки її власний запис (або запис того, кого вона доглядає). Під час закритого бета-тестування OAuth-з'єднання використовують записи пісочниці.
Яку версію FHIR він використовує?
HL7 FHIR R4 (4.0.1), той самий API, що й https://platform.anpheros.com/fhir/R4, з Міжнародним резюме пацієнта, та REST-представлення тих самих даних.
Чи працює це з ChatGPT?
Конектори ChatGPT використовують OAuth з динамічною реєстрацією клієнта, яку підтримує сервер, і його домен зворотного виклику приймається. Ми протестували потік за допомогою офіційного клієнта MCP SDK; якщо з'єднання ChatGPT не вдається, напишіть на [email protected]. Claude Code, Cursor та VS Code також працюють з ключем пісочниці.
Пов'язане
- Як надати ШІ-агенту доступ до медичних записів: покроковий посібник у Python
- Безкоштовна база даних FHIR та пісочниця
- ШІ-агенти та медичні дані
- Застосування LLM та медичні дані
- API для охорони здоров'я з дозволом пацієнта
Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card