# FHIR MCP server για AI agents

> Συνδέστε Claude Code, Cursor, VS Code ή Claude Desktop σε ένα HL7 FHIR R4 API μέσω MCP: 20 εργαλεία για ανάγνωση εγγραφών, AI-ready context, εγγραφή, εισαγωγή εργαστηριακών αποτελεσμάτων και επαναφορά sandbox, σε 30 συνθετικούς ασθενείς, δωρεάν.

Source: https://developers.anpheros.com/el/guides/mcp

**Το Anpheros FHIR είναι ένας απομακρυσμένος MCP server που επιτρέπει σε έναν AI agent (Claude, Claude Code, Cursor, VS Code, Claude Desktop) να εργάζεται με ένα HL7 FHIR R4 health-data API.** Συνδέεται με δύο τρόπους:

- **Με δωρεάν κλειδί sandbox**, για developers: ο agent σας καταγράφει ασθενείς, διαβάζει τις εγγραφές τους ως FHIR ή ως AI-ready context με provenance, γράφει παρατηρήσεις, εισάγει εργαστηριακές αναφορές και επαναφέρει τα δεδομένα δοκιμής του, όλα σε 30 συνθετικούς ασθενείς με ρεαλιστικά ιστορικά.
- **Με OAuth**, για ένα άτομο και το δικό του αρχείο: ο βοηθός καταχωρείται, το άτομο συνδέεται και το εγκρίνει στην οθόνη συναίνεσης του Anpheros, και ο βοηθός μπορεί στη συνέχεια να διαβάσει αυτό το ένα αρχείο, για την επιλεγμένη περίοδο, μόνο για ανάγνωση εκτός αν το άτομο επέτρεψε περισσότερα.

Διεύθυνση server: `https://platform.anpheros.com/mcp` (Streamable HTTP, stateless).

## Σύνδεση με OAuth (Claude και άλλοι βοηθοί)

Προσθέστε το `https://platform.anpheros.com/mcp` ως προσαρμοσμένο σύνδεσμο (στο Claude: Settings → Connectors → Add custom connector). Δεν απαιτείται άλλη ρύθμιση: ο βοηθός ανακαλύπτει τον διακομιστή εξουσιοδότησης, καταχωρείται μόνος του και ανοίγει την οθόνη συναίνεσης του Anpheros. Εκεί το άτομο βλέπει ότι πρόκειται για έναν βοηθό AI, ότι ό,τι διαβάζει αποστέλλεται στην εταιρεία που διαχειρίζεται τον βοηθό, τι μπορεί να διαβάσει, για πόσο χρονικό διάστημα και πού θα επιστρέψει μετά την επιλογή. Η πρόσβαση είναι μόνο για ανάγνωση, εκτός αν ζητήθηκε κάτι παραπάνω και επιτράπηκε, και το άτομο μπορεί να την ανακαλέσει ανά πάσα στιγμή.

Κατά τη διάρκεια της ιδιωτικής beta, οι συνδέσεις OAuth χρησιμοποιούν αρχεία sandbox. Οι συνδέσεις με πραγματικά αρχεία θα ανοίξουν μετά την ενημέρωση της πολιτικής απορρήτου.

## Σύνδεση με κλειδί sandbox (προγραμματιστές)

1. Συνδεθείτε στη διεύθυνση [platform.anpheros.com/dashboard](https://platform.anpheros.com/dashboard/) με τον λογαριασμό σας Google και επιλέξτε **Get a sandbox key**. Θα λάβετε ένα κλειδί `sk_test_…` και ένα project με 30 συνθετικούς ασθενείς.
2. Τοποθετήστε το κλειδί σε μια μεταβλητή περιβάλλοντος, για παράδειγμα `ANPHEROS_KEY`, και προσθέστε τον διακομιστή στο εργαλείο σας.

**Claude Code**

```bash
claude mcp add --transport http anpheros-fhir https://platform.anpheros.com/mcp --header "Authorization: Bearer $ANPHEROS_KEY"
```

**Cursor** (`~/.cursor/mcp.json` ή `.cursor/mcp.json` στο project)

```json
{
  "mcpServers": {
    "anpheros-fhir": {
      "url": "https://platform.anpheros.com/mcp",
      "headers": { "Authorization": "Bearer ${env:ANPHEROS_KEY}" }
    }
  }
}
```

**VS Code** (`.vscode/mcp.json`)

```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`)

```json
{
  "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` | ένα πλαίσιο έτοιμο για AI για έναν ασθενή, εντός ενός ορίου token, κάθε στοιχείο επισημασμένο με την πηγή του |
| `get_patient_summary` | η Διεθνής Περίληψη Ασθενούς (FHIR `$summary`), στη γλώσσα που ζητάτε |
| `get_timeline` | το αρχείο με χρονολογική σειρά σε όλους τους τύπους πόρων |
| `get_health_patterns` | beta: τι άλλαξε και τι επαναλαμβάνεται, κάθε εύρημα με την περίοδό του, αποδείξεις και περιορισμούς· όχι διαγνώσεις ([οδηγός](https://developers.anpheros.com/el/guides/health-patterns)) |
| `get_pattern_evidence` | beta: κάθε πόρος πίσω από ένα εύρημα |
| `get_series` | beta: μια μέτρηση ως μία τιμή ανά ημέρα, με ποιότητα δεδομένων |
| `compare_periods` | beta: μια μέτρηση σε δύο περιόδους που επιλέγετε |
| `search_fhir` | τυπική αναζήτηση FHIR R4, επιστρέφοντας ένα Bundle |
| `read_fhir_resource` | ένας πόρος, ή μια παλαιότερη έκδοσή του |
| `get_provenance` | ποιος έγραψε έναν πόρο, πότε και από ποιο σύστημα |
| `lookup_code` | κωδικοί LOINC με κείμενο ή με κωδικό (για φάρμακα, χρησιμοποιήστε `search_health_terms`) |
| `search_health_terms` | ο δημόσιος κατάλογος συμπτωμάτων, καταστάσεων και θεραπειών, με όνομα σε 20 γλώσσες, συνώνυμο, εμπορική ονομασία ή κωδικό ([οδηγός](https://developers.anpheros.com/el/guides/anpheros-search)) |
| `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 συνθετικούς ασθενείς (ζητά επιβεβαίωση) |

Οι αναγνώσιμοι πόροι επισημαίνονται ως μόνο για ανάγνωση και η επαναφορά επισημαίνεται ως καταστροφική, ώστε οι πελάτες που ρωτούν πριν από επικίνδυνες ενέργειες να μπορούν να το κάνουν. Ο διακομιστής προσφέρει επίσης τη λίστα των συνθετικών ασθενών ως πόρο και τρεις προτροπές: μια περίληψη κλινικού, μια εισαγωγή CSV εργαστηρίου και τη δημιουργία της ενσωμάτωσής σας στο API.

## Πώς συμπεριφέρεται

- **Οι ίδιοι κανόνες με το API.** Κάθε εργαλείο καλεί το δημόσιο API με το κλειδί σας: οι ίδιες εμβέλειες (scopes), όρια ρυθμού (rate limits), επικύρωση και έλεγχος. Ένα κλειδί μόνο για ανάγνωση (read-only) δεν μπορεί να γράψει.
- **Προέλευση (Provenance).** Ό,τι γράφει ένας πράκτορας (agent) καταγράφεται με την πηγή `urn:anpheros:mcp`, ώστε να μπορείτε πάντα να γνωρίζετε τι προήλθε από έναν πράκτορα.
- **Τα δεδομένα ασθενούς είναι δεδομένα.** Τα αποτελέσματα των εργαλείων φέρουν μια σημείωση ότι το περιεχόμενο των εγγραφών δεν πρέπει ποτέ να ακολουθείται ως οδηγίες, μια βασική προφύλαξη έναντι της εισαγωγής προτροπών (prompt injection) μέσω ιατρικών αρχείων.
- **Μία εγγραφή, με συναίνεση.** Τα κλειδιά API παραγωγής (production API keys) (`sk_live_…`) απορρίπτονται, επειδή φτάνουν σε κάθε ασθενή ενός έργου. Μια πραγματική εγγραφή φτάνει σε έναν βοηθό μόνο μέσω OAuth, αφού το άτομο την εγκρίνει, και κάθε ανάγνωση καταγράφεται στο ιστορικό πρόσβασής του.
- **Τυπική ανακάλυψη.** Χωρίς διαπιστευτήρια, ο διακομιστής απαντά με 401 με μια κεφαλίδα `WWW-Authenticate` που δείχνει στα μεταδεδομένα πόρων του προστατευμένα με OAuth (RFC 9728). Οι βοηθοί εγγράφονται μέσω δυναμικής εγγραφής πελάτη (dynamic client registration) (RFC 7591), με PKCE. Η εγγραφή δέχεται μόνο διευθύνσεις loopback, τα σχήματα εφαρμογών (app schemes) γνωστών επεξεργαστών και τους τομείς επιστροφής κλήσης (callback domains) γνωστών βοηθών AI.

## Συχνές ερωτήσεις

### Τι είναι ένας διακομιστής MCP;
Το MCP (Model Context Protocol) είναι ένα ανοιχτό πρωτόκολλο μέσω του οποίου οι πράκτορες AI και οι βοηθοί κωδικοποίησης καλούν εξωτερικά εργαλεία. Ένας διακομιστής MCP για FHIR επιτρέπει στον πράκτορα να διαβάζει και να γράφει ιατρικά αρχεία απευθείας, αντί να επικολλάτε δεδομένα στη συνομιλία.

### Είναι δωρεάν;
Ναι. Ο διακομιστής MCP λειτουργεί στο δωρεάν sandbox: 30 συνθετικοί ασθενείς ανά έργο, έως 10.000 εγγραφές την ημέρα, χωρίς κάρτα.

### Μπορεί ένας βοηθός να διαβάσει το αρχείο ενός πραγματικού ασθενούς;
Μόνο μέσω OAuth, αφού το άτομο εγκρίνει τον βοηθό στην οθόνη συναίνεσης, για την περίοδο που επιλέγει, και μόνο το δικό του αρχείο (ή αυτό κάποιου που φροντίζει). Κατά τη διάρκεια της ιδιωτικής beta, οι συνδέσεις OAuth χρησιμοποιούν αρχεία sandbox.

### Ποια έκδοση FHIR χρησιμοποιεί;
HL7 FHIR R4 (4.0.1), το ίδιο API με το https://platform.anpheros.com/fhir/R4, με το International Patient Summary και μια REST προβολή των ίδιων δεδομένων.

### Λειτουργεί με το ChatGPT;
Οι σύνδεσμοι ChatGPT χρησιμοποιούν OAuth με δυναμική εγγραφή πελάτη, την οποία υποστηρίζει ο διακομιστής, και ο τομέας callback του γίνεται αποδεκτός. Έχουμε δοκιμάσει τη ροή με τον επίσημο πελάτη MCP SDK. εάν μια σύνδεση ChatGPT αποτύχει, γράψτε στο support@anpheros.com. Το Claude Code, το Cursor και το VS Code λειτουργούν επίσης με κλειδί sandbox.

## Σχετικά

- [Πώς να δώσετε σε έναν πράκτορα AI πρόσβαση σε ιατρικά αρχεία](https://developers.anpheros.com/el/guides/ai-agent-access-medical-records): οδηγός βήμα προς βήμα σε Python
- [Δωρεάν βάση δεδομένων FHIR και sandbox](https://developers.anpheros.com/el/guides/free-fhir-database)
- [Πράκτορες AI και ιατρικά δεδομένα](https://developers.anpheros.com/el/guides/ai-agents-medical-data)
- [Εφαρμογές LLM και δεδομένα υγειονομικής περίθαλψης](https://developers.anpheros.com/el/guides/llm-healthcare-data)
- [API υγειονομικής περίθαλψης με συναίνεση ασθενούς](https://developers.anpheros.com/el/guides/healthcare-api-patient-consent)
