Το αντίγραφο στον δικό σας διακομιστή
Ένας μικρός διακομιστής σε υλικό που σας ανήκει, που κρατά ένα πλήρες, ζωντανό αντίγραφο των δεδομένων σας από το Marrow και απαντά σε agents ενώ το κινητό σας κοιμάται, είναι στην τσέπη ή βρίσκεται στην άλλη άκρη του κόσμου.
Η ρύθμιση για μία εφαρμογή τη φορά βρίσκεται στη δική της σελίδα στις συνδέσεις.
Όλοι οι οδηγοί του Marrow: MCP · Αντίγραφο στον δικό σας διακομιστή · Αυτοματισμοί · Αρχεία · Υποστήριξη
Τι είναι
Ένας μικρός διακομιστής ανοιχτού κώδικα που τρέχετε σε υλικό που σας ανήκει: ένα Raspberry Pi, ένα NAS, ένα παλιό laptop, ένα VPS των $5. Το κινητό σας κάνει ζεύξη μαζί του μία φορά σαρώνοντας έναν κωδικό QR, και μετά στέλνει κάθε αλλαγή στο παρασκήνιο, με κλειστή την εφαρμογή. Ο διακομιστής κρατά ένα πλήρες αντίγραφο SQLite των δεδομένων σας από το Marrow και σερβίρει δεκατρία εργαλεία MCP για ανάγνωση: τα επτά του κινητού, τα sleep_log και symptoms_and_mood, και τέσσερα που απαντούν με τους όρους της ίδιας της εφαρμογής (daily_brief, baselines, what_changed, data_quality), ώστε ένας agent να μπορεί να ρωτήσει «πώς κοιμήθηκα αυτή την εβδομάδα» στις 3 τα ξημερώματα με το κινητό σας σε ένα συρτάρι. Με άδεια MIT: github.com/MarrowHealth/marrow-mcp.
Εγκατάσταση
Ένα αρχείο Python, μόνο με την τυπική βιβλιοθήκη, Python 3.10 ή νεότερο:
pip install marrow-mcp marrow-server # or: python3 marrow_server.py
Ή με Docker:
git clone https://github.com/MarrowHealth/marrow-mcp cd marrow-mcp docker compose up -d
Στην πρώτη εκκίνηση εκτυπώνει ένα URL ζεύξης και δείχνει έναν κωδικό QR σε οποιονδήποτε browser στο δίκτυό σας.
Ζεύξη του κινητού
- Ανοίξτε το URL ζεύξης σε οποιαδήποτε οθόνη κοντά σας.
- Στο Marrow: Εξαγωγή, MCP διακομιστή, Ζεύξη με διακομιστή, σαρώστε τον κωδικό.
- Έτοιμο. Το κινητό αρχίζει να στέλνει, και η σελίδα του Διακομιστή δείχνει την ώρα της τελευταίας αποστολής και πόσες εγγραφές περιμένουν.
Η ζεύξη δημιουργεί δύο tokens στον φάκελο δεδομένων του διακομιστή: ένα που χρησιμοποιεί το κινητό για να στέλνει, ένα που χρησιμοποιούν οι agents για να διαβάζουν. Διαγράψτε ένα αρχείο token για να το εναλλάξετε.
Δείξτε του έναν agent
claude mcp add --transport http marrow http://<server-ip>:8800/mcp \ --header "Authorization: Bearer <mcp token>"
Δεκατρία εργαλεία, όλα αναγνώσεις. Τα εννέα ακατέργαστα: health_summary, list_metrics, metric_daily, metric_samples, workouts, nutrition_log, strength_log, sleep_log, symptoms_and_mood. Και τέσσερα που ξεκινούν εκεί που σταματούν τα ακατέργαστα, βαθμολογημένα σε σχέση με τη δική σας πρόσφατη κανονικότητα με τα ίδια μαθηματικά που χρησιμοποιεί η Αρχική της εφαρμογής: daily_brief (μία ημέρα: κάθε βασική μέτρηση με την τιμή της και τη φράση της ίδιας της εφαρμογής, φαγητό και νερό σε σχέση με τους στόχους σας, ο χθεσινός ύπνος, η προπόνηση που έγινε, σημεία που αξίζει να αναφερθούν), baselines (η δική σας κανονικότητα ανά μέτρηση, το z της τελευταίας τιμής και η τάση 90 ημερών), what_changed (η τελευταία εβδομάδα σε σχέση με τις τέσσερις πριν: τι κινήθηκε, πόσο αξιοσημείωτο είναι για εσάς, αλλαγές στον ύπνο και στην ώρα ύπνου, ροές που ξεκίνησαν ή σταμάτησαν) και data_quality (τι είναι φρέσκο, παλιό ή λείπει, ώστε ένας agent να μην μπερδεύει ποτέ ένα κενό με γεγονός). Κάθε ανάγνωση δέχεται ημέρες πίσω ή from και to στο ημερολόγιο του κινητού. Ο διακομιστής απαριθμεί επίσης τέσσερα prompts (how_am_i_doing, weekly_review, doctor_prep, log_from_text) και τέσσερις πόρους για clients που τα εμφανίζουν. Έχει και δώδεκα εργαλεία εγγραφής, που εμφανίζονται όταν τα επιτρέψει το κινητό σας. Από το Marrow 1.5, ενεργοποιήστε το Να επιτρέπεται εγγραφή από AI για τον διακομιστή σας στο Εξαγωγή, Οι συνδέσεις σας και ένα AI μπορεί να καταγράφει μέσω αυτού γεύματα, νερό, βάρος, προπονήσεις, ύπνο, συμπτώματα, διάθεση και στόχους, δωρεάν. Ο διακομιστής βάζει κάθε καταχώριση σε ουρά και το κινητό την εφαρμόζει όταν το Marrow ανοίγει ή ξυπνά, και καθεμία μπορεί να αναιρεθεί. Η ρύθμιση για Claude Desktop, Cursor και άλλα βρίσκεται στη σελίδα MCP. Αλλάζει μόνο το URL.
Πρόσβαση από έξω από το LAN σας
Ο διακομιστής μιλά απλό HTTP και δεν έχει δικό του TLS. Μην κάνετε port forward γυμνό. Βάλτε το Tailscale στο μηχάνημα και στο κινητό και χρησιμοποιήστε το tailscale serve, ή βάλτε μπροστά του ένα Cloudflare Tunnel ή οποιοδήποτε reverse proxy που τερματίζει το HTTPS. Ο κωδικός QR ζεύξης φέρνει τη διεύθυνση που διαφημίζει ο διακομιστής: τη δική του διεύθυνση LAN, ή αυτή που του δίνετε με το --url. Ξεκινήστε τον με τη διεύθυνση που θα χρησιμοποιείτε πραγματικά, για παράδειγμα marrow-server --url https://pi.your-tailnet.ts.net, και μετά κάντε ζεύξη.
Τι καταλήγει στον δίσκο
- Μια βάση SQLite με κάθε ημερήσια σειρά, δείγμα, καταχώριση ημερολογίου και σετ ενδυνάμωσης, που τη διατηρούν ενημερωμένη οι αποστολές του κινητού.
- Κάθε ακατέργαστη αποστολή αποθηκευμένη ως JSONL δίπλα της, ώστε η βάση να ξαναχτιστεί αν ποτέ την καταστρέψετε.
- Υπολογίστε 50 έως 150 MB τον χρόνο για ιστορικό πλήρους πιστότητας.
Μονάδες: οι μετρήσεις υγείας φτάνουν στις αποθηκευμένες μονάδες SI τους με ετικέτες. Τα σετ ενδυνάμωσης φτάνουν σε λίβρες με "unit": "lb" ανεξάρτητα από τη ρύθμιση εμφάνισης του κινητού, ώστε το αντίγραφο να μην μπερδεύει ποτέ τις μονάδες. Δείξτε το Grafana, το DuckDB ή ένα cron job απευθείας στο αρχείο της βάσης.
Αντιμετώπιση προβλημάτων
Δύο τεστ από τον υπολογιστή όπου τρέχει το AI σας δείχνουν πού είναι το πρόβλημα. Πρώτα, λειτουργεί ο διακομιστής; Αυτό δεν χρειάζεται token:
curl http://<server-ip>:8800/health
Απαντά {"server": "marrow", "ok": true}. Μετά, δουλεύει το token του agent σας;
curl -i http://<server-ip>:8800/mcp \ -H "Authorization: Bearer <mcp token>" \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
| Τι παίρνετε | Τι σημαίνει |
|---|---|
200 OK και μια λίστα εργαλείων | Ο διακομιστής δουλεύει. Ελέγξτε τη διεύθυνση, το token και τον τύπο διακομιστή (HTTP) στη ρύθμιση του agent σας, και μετά κάντε επανεκκίνηση του agent. |
401 με bad bearer token | Λάθος token. Οι agents χρησιμοποιούν το mcp token, όχι αυτό με το οποίο κάνει ζεύξη το κινητό. Δείτε παρακάτω. |
| Connection refused ή timeout | Ο διακομιστής δεν τρέχει, η πόρτα είναι λάθος, ή ένα firewall στο μηχάνημα μπλοκάρει την πόρτα 8800. Με Docker, ελέγξτε την αντιστοίχιση πόρτας 8800:8800. |
- Ποιο token. Ο διακομιστής εκτυπώνει το token των agents όταν ξεκινά, στη γραμμή που αρχίζει με
agents:. Βρίσκεται επίσης στο αρχείο.mcp-tokenστον φάκελο δεδομένων (./dataεκτός αν δώσατε--data,/dataστο Docker). Το κινητό χρησιμοποιεί διαφορετικό token, από το.app-token. Για να αλλάξετε το token των agents, διαγράψτε το.mcp-token, κάντε επανεκκίνηση του διακομιστή και ενημερώστε κάθε agent. - Η σελίδα ζεύξης λέει bad ή missing token. Ανοίξτε τον σύνδεσμο ζεύξης ακριβώς όπως τον εκτύπωσε ο διακομιστής, με το μέρος του
?token=. - Η σελίδα ζεύξης δείχνει κείμενο, όχι κωδικό QR. Ο κωδικός QR χρειάζεται το προαιρετικό πακέτο
segno:pip install "marrow-mcp[qr]". Ή, στο Marrow, διαλέξτε Μη αυτόματη καταχώριση και πληκτρολογήστε τοurlκαι τοtokenαπό εκείνο το κείμενο. - Η σύζευξη απέτυχε στο κινητό. Το κινητό δεν μπόρεσε να φτάσει τη διεύθυνση στον κωδικό QR. Στο Docker ο διακομιστής βλέπει μόνο τη διεύθυνση του ίδιου του container, οπότε δώστε του τη δική σας: προσθέστε
--url http://<your-computer-ip>:8800στην εντολή του. Εκτός του οικιακού σας Wi-Fi, χρησιμοποιήστε μια διεύθυνση HTTPS από τοtailscale serveή ένα tunnel. - Πρόσβαση στο Τοπικό δίκτυο. Για να φτάσει έναν διακομιστή στο οικιακό σας δίκτυο, το Marrow χρειάζεται πρόσβαση στο Τοπικό δίκτυο. Το iOS ρωτά την πρώτη φορά που κάνετε ζεύξη. Αν είπατε όχι, ενεργοποιήστε το Marrow στα Ρυθμίσεις, Απόρρητο και ασφάλεια, Τοπικό δίκτυο, και μετά κάντε ξανά ζεύξη με ανοιχτό το Marrow.
- Αυτός ο κωδικός QR δεν είναι κωδικός ζεύξης του Marrow. Η κάμερα διάβασε άλλον κωδικό. Σαρώστε αυτόν στη σελίδα ζεύξης του διακομιστή.
- Παλιά δεδομένα, ή «Τα δεδομένα δεν φτάνουν» στο Marrow. Το κινητό δεν μπορεί να στείλει στον διακομιστή. Η σελίδα MCP διακομιστή στο Marrow δείχνει την τελευταία αποστολή και πόσες εγγραφές περιμένουν. Ελέγξτε ότι ο διακομιστής τρέχει και μετά ανοίξτε το Marrow για να σταλεί ό,τι περιμένει. Οι αποστολές στο παρασκήνιο τρέχουν όταν το επιτρέπει το iOS.
- Αυτός ο διακομιστής χρειάζεται ενημέρωση πριν μπορέσει να καταγράφει. Ενημερώστε τον με
pip install -U marrow-mcpκαι κάντε του επανεκκίνηση. Με Docker, τρέξτεgit pullκαιdocker compose up -d --buildστο clone. - Οι καταχωρίσεις από το AI δεν εμφανίζονται. Ενεργοποιήστε το Να επιτρέπεται εγγραφή από AI για τον διακομιστή στην Εξαγωγή, Οι συνδέσεις σας. Τα εργαλεία εγγραφής εμφανίζονται στον διακομιστή μόνο μετά από αυτό. Κάθε καταχώριση περιμένει στον διακομιστή και φτάνει όταν το Marrow ανοίξει ή ξυπνήσει ξανά.
- Η σύνδεση δεν ενεργοποιείται. Το Δωρεάν πλάνο επιτρέπει 1 ενεργή σύνδεση τη φορά, το Marrow Pro έως 10: AI, διακομιστές και αυτοματισμοί μαζί.
Πότε να το διαλέξετε αντί για τα άλλα
Διαλέξτε το αντίγραφο όταν ο agent σας χρειάζεται τα δεδομένα ενώ το κινητό σας κοιμάται ή είναι μακριά, ή όταν θέλετε μια βάση δεδομένων που ρωτιέται αντί για αρχεία. Διαλέξτε τον διακομιστή MCP στο κινητό όταν ο agent σας τρέχει κοντά στο κινητό και δεν θέλετε να συντηρείτε τίποτα άλλο. Διαλέξτε τους αυτοματισμούς όταν έχετε ήδη ένα μέρος όπου πρέπει να καταλήγουν τα δεδομένα.