Αναφορά MCP / Ιστοσελίδα
Εργαλεία ιστοσελίδας
Δέκα εργαλεία για τη δημόσια ιστοσελίδα και το ιστολόγιό της. Οι εγγραφές αφορούν προσχέδιο· η δημοσίευση είναι το μόνο εργαλείο που αλλάζει ό,τι βλέπει το κοινό, και ισχύει αμέσως.
Πώς διαβάζεται
Κάθε εργαλείο παρακάτω παραθέτει τις παραμέτρους του ακριβώς όπως τις δηλώνει το σχήμα εισόδου — τον τύπο, αν είναι υποχρεωτική, και τις επιτρεπτές τιμές όπου τις ορίζει το σχήμα. Δεν υπάρχουν περιγραφές παραμέτρων: τα σχήματα φέρουν τύπους, όχι κείμενο.
Το practiceId δεν είναι ποτέ παράμετρος. Προέρχεται από το token σας, και οι διαδρομές εγγραφής το αφαιρούν αν το στείλει ο client.
Κάθε παράδειγμα είναι πλήρες αίτημα tools/call με συμπληρωμένες τις υποχρεωτικές παραμέτρους. Τα σφάλματα επιστρέφονται μέσα σε απόκριση 200 με isError — δείτε την επισκόπηση MCP και τον πλήρη κατάλογο.
Κατασκευαστής ιστοσελίδας
Η δημόσια ιστοσελίδα του ιατρείου. Οι εγγραφές αφορούν προσχέδιο μέχρι τη δημοσίευση· η δημοσίευση είναι το μόνο εργαλείο εδώ που αλλάζει ό,τι βλέπει το κοινό.
get_site
Ανάγνωση της ιστοσελίδας με σελίδες, modules και FAQ. Επιστρέφει null αν δεν έχει δημιουργηθεί.
Παράδειγμα κλήσης
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_site",
"arguments": {}
}
}Αποτέλεσμα
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"structuredContent": {
"status": 200,
"ok": true,
"data": { "...": "the requested records" }
}
}
}Σφάλματα
| Κωδικός | Κατάσταση | Πότε |
|---|---|---|
| unauthorized | 401 | Το bearer token λείπει, είναι άκυρο ή έχει λήξει. |
list_site_page_modules
Ανάγνωση των modules και FAQ μιας σελίδας.
Παράμετροι
| Εργαλείο | Τύπος | Υποχρεωτικό; |
|---|---|---|
| pageId | string | Υποχρεωτικό |
Παράδειγμα κλήσης
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_site_page_modules",
"arguments": {
"pageId": "0f1c7a2e-...."
}
}
}Αποτέλεσμα
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"structuredContent": {
"status": 200,
"ok": true,
"data": { "...": "the requested records" }
}
}
}Σφάλματα
| Κωδικός | Κατάσταση | Πότε |
|---|---|---|
| validation_failed | 400 | Λείπει παράμετρος, έχει λάθος τύπο, ή είναι εκτός των επιτρεπτών τιμών. |
| not_found | 404 | Το id δεν υπάρχει στο ιατρείο σας. Ένα κακοσχηματισμένο id φαίνεται ίδιο. |
| unauthorized | 401 | Το bearer token λείπει, είναι άκυρο ή έχει λήξει. |
check_site_slug_available
Έλεγχος αν ένα slug είναι έγκυρο και ελεύθερο. Επιστρέφει διαθεσιμότητα και αιτία όταν δεν είναι.
Παράμετροι
| Εργαλείο | Τύπος | Υποχρεωτικό; |
|---|---|---|
| slug | string | Υποχρεωτικό |
Παράδειγμα κλήσης
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "check_site_slug_available",
"arguments": {
"slug": "smile-dental"
}
}
}Αποτέλεσμα
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"structuredContent": {
"status": 200,
"ok": true,
"data": { "...": "the requested records" }
}
}
}Σφάλματα
| Κωδικός | Κατάσταση | Πότε |
|---|---|---|
| validation_failed | 400 | Λείπει παράμετρος, έχει λάθος τύπο, ή είναι εκτός των επιτρεπτών τιμών. |
| forbidden | 403 | Ο καλών δεν είναι ιδιοκτήτης του ιατρείου. |
| unauthorized | 401 | Το bearer token λείπει, είναι άκυρο ή έχει λήξει. |
write_site
action=create δημιουργεί την ιστοσελίδα· update αλλάζει ρυθμίσεις· publish ΔΗΜΟΣΙΕΥΕΙ ΤΟ ΤΡΕΧΟΝ ΠΡΟΣΧΕΔΙΟ στο διαδίκτυο, ορατό αμέσως σε οποιονδήποτε.
Παράμετροι
| Εργαλείο | Τύπος | Υποχρεωτικό; |
|---|---|---|
| action | create | update | publish | Υποχρεωτικό |
| slug | string | Προαιρετικό |
| locale | en | el | Προαιρετικό |
| templateId | string | Προαιρετικό |
| brandColor | string | Προαιρετικό |
| fontPairing | string | Προαιρετικό |
| logoFileId | string | Προαιρετικό |
| heroFileId | string | Προαιρετικό |
| metaTitle | string | Προαιρετικό |
| metaDescription | string | Προαιρετικό |
| showServicePrices | boolean | Προαιρετικό |
Παράδειγμα κλήσης
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "write_site",
"arguments": {
"action": "create"
}
}
}Αποτέλεσμα
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"structuredContent": {
"status": 200,
"ok": true,
"data": { "...": "the written record" }
}
}
}Σφάλματα
| Κωδικός | Κατάσταση | Πότε |
|---|---|---|
| validation_failed | 400 | Λείπει παράμετρος, έχει λάθος τύπο, ή είναι εκτός των επιτρεπτών τιμών. |
| not_found | 404 | Το id δεν υπάρχει στο ιατρείο σας. Ένα κακοσχηματισμένο id φαίνεται ίδιο. |
| forbidden | 403 | Ο καλών δεν είναι ιδιοκτήτης του ιατρείου. |
| unauthorized | 401 | Το bearer token λείπει, είναι άκυρο ή έχει λήξει. |
update_site_page
Επεξεργασία μεταδεδομένων μιας σελίδας — τίτλος, slug, SEO.
Παράμετροι
| Εργαλείο | Τύπος | Υποχρεωτικό; |
|---|---|---|
| pageId | string | Υποχρεωτικό |
| enabled | boolean | Προαιρετικό |
| navLabel | string | Προαιρετικό |
| navOrder | integer | Προαιρετικό |
| metaTitle | string | Προαιρετικό |
| metaDescription | string | Προαιρετικό |
Παράδειγμα κλήσης
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "update_site_page",
"arguments": {
"pageId": "0f1c7a2e-...."
}
}
}Αποτέλεσμα
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"structuredContent": {
"status": 200,
"ok": true,
"data": { "...": "the written record" }
}
}
}Σφάλματα
| Κωδικός | Κατάσταση | Πότε |
|---|---|---|
| validation_failed | 400 | Λείπει παράμετρος, έχει λάθος τύπο, ή είναι εκτός των επιτρεπτών τιμών. |
| not_found | 404 | Το id δεν υπάρχει στο ιατρείο σας. Ένα κακοσχηματισμένο id φαίνεται ίδιο. |
| forbidden | 403 | Ο καλών δεν είναι ιδιοκτήτης του ιατρείου. |
| unauthorized | 401 | Το bearer token λείπει, είναι άκυρο ή έχει λήξει. |
write_site_module
action=create προσθέτει module σε σελίδα (απαιτεί pageId)· update και delete απαιτούν moduleId. Οι αλλαγές αφορούν το προσχέδιο μέχρι τη δημοσίευση.
Παράμετροι
| Εργαλείο | Τύπος | Υποχρεωτικό; |
|---|---|---|
| action | create | update | delete | Υποχρεωτικό |
| pageId | string | Προαιρετικό |
| moduleId | string | Προαιρετικό |
| type | hero | intro | services_teaser | team_teaser | why_us | testimonials | hours_map | cta | faq | service_grid | insurance_payment | story | team_grid | credentials | gallery | address_map | hours | contact_form | access_parking | booking_widget | service_detail | Προαιρετικό |
| position | integer | Προαιρετικό |
| enabled | boolean | Προαιρετικό |
| content | object | Προαιρετικό |
Παράδειγμα κλήσης
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "write_site_module",
"arguments": {
"action": "create"
}
}
}Αποτέλεσμα
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"structuredContent": {
"status": 200,
"ok": true,
"data": { "...": "the written record" }
}
}
}Σφάλματα
| Κωδικός | Κατάσταση | Πότε |
|---|---|---|
| validation_failed | 400 | Λείπει παράμετρος, έχει λάθος τύπο, ή είναι εκτός των επιτρεπτών τιμών. |
| not_found | 404 | Το id δεν υπάρχει στο ιατρείο σας. Ένα κακοσχηματισμένο id φαίνεται ίδιο. |
| forbidden | 403 | Ο καλών δεν είναι ιδιοκτήτης του ιατρείου. |
| unauthorized | 401 | Το bearer token λείπει, είναι άκυρο ή έχει λήξει. |
write_site_faq
action=create προσθέτει FAQ σε σελίδα (απαιτεί pageId)· update και delete απαιτούν faqId.
Παράμετροι
| Εργαλείο | Τύπος | Υποχρεωτικό; |
|---|---|---|
| action | create | update | delete | Υποχρεωτικό |
| pageId | string | Προαιρετικό |
| faqId | string | Προαιρετικό |
| question | string | Προαιρετικό |
| answer | string | Προαιρετικό |
| position | integer | Προαιρετικό |
Παράδειγμα κλήσης
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "write_site_faq",
"arguments": {
"action": "create"
}
}
}Αποτέλεσμα
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"structuredContent": {
"status": 200,
"ok": true,
"data": { "...": "the written record" }
}
}
}Σφάλματα
| Κωδικός | Κατάσταση | Πότε |
|---|---|---|
| validation_failed | 400 | Λείπει παράμετρος, έχει λάθος τύπο, ή είναι εκτός των επιτρεπτών τιμών. |
| not_found | 404 | Το id δεν υπάρχει στο ιατρείο σας. Ένα κακοσχηματισμένο id φαίνεται ίδιο. |
| forbidden | 403 | Ο καλών δεν είναι ιδιοκτήτης του ιατρείου. |
| unauthorized | 401 | Το bearer token λείπει, είναι άκυρο ή έχει λήξει. |
list_blog_posts
Εμφανίζει τα άρθρα του ιστολογίου — πρόχειρα και δημοσιευμένα — με τη διεύθυνση, την κατάστασή τους και το κείμενό τους.
Παράδειγμα κλήσης
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_blog_posts",
"arguments": {}
}
}Αποτέλεσμα
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"structuredContent": {
"status": 200,
"ok": true,
"data": { "...": "the requested records" }
}
}
}Σφάλματα
| Κωδικός | Κατάσταση | Πότε |
|---|---|---|
| unauthorized | 401 | Το bearer token λείπει, είναι άκυρο ή έχει λήξει. |
list_blog_categories
Εμφανίζει τις κατηγορίες στις οποίες μπορεί να καταχωρηθεί ένα άρθρο. Καλέστε το πριν γράψετε άρθρο αν θέλετε να ορίσετε κατηγορία: το id πρέπει να ανήκει σε αυτόν τον ιστότοπο.
Παράδειγμα κλήσης
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_blog_categories",
"arguments": {}
}
}Αποτέλεσμα
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"structuredContent": {
"status": 200,
"ok": true,
"data": { "...": "the requested records" }
}
}
}Σφάλματα
| Κωδικός | Κατάσταση | Πότε |
|---|---|---|
| unauthorized | 401 | Το bearer token λείπει, είναι άκυρο ή έχει λήξει. |
write_blog_post
Δημιουργεί, επεξεργάζεται ή διαγράφει άρθρο. Το create χρειάζεται τίτλο, διεύθυνση και κείμενο· τα update και delete χρειάζονται postId. Το άρθρο δημιουργείται ως ΠΡΟΧΕΙΡΟ, και η αλλαγή μόνο της κατάστασής του δεν το βγάζει στον ζωντανό ιστότοπο — πρέπει να δημοσιευτεί ο ίδιος ο ιστότοπος.
Παράμετροι
| Εργαλείο | Τύπος | Υποχρεωτικό; |
|---|---|---|
| action | create | update | delete | Υποχρεωτικό |
| postId | string | Προαιρετικό |
| title | string | Προαιρετικό |
| slug | string | Προαιρετικό |
| excerpt | string | Προαιρετικό |
| body | string | Προαιρετικό |
| categoryId | string | Προαιρετικό |
| authorMembershipId | string | Προαιρετικό |
| status | draft | published | Προαιρετικό |
| metaTitle | string | Προαιρετικό |
| metaDescription | string | Προαιρετικό |
Παράδειγμα κλήσης
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "write_blog_post",
"arguments": {
"action": "create"
}
}
}Αποτέλεσμα
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"structuredContent": {
"status": 200,
"ok": true,
"data": { "...": "the written record" }
}
}
}Σφάλματα
| Κωδικός | Κατάσταση | Πότε |
|---|---|---|
| validation_failed | 400 | Λείπει παράμετρος, έχει λάθος τύπο, ή είναι εκτός των επιτρεπτών τιμών. |
| not_found | 404 | Το id δεν υπάρχει στο ιατρείο σας. Ένα κακοσχηματισμένο id φαίνεται ίδιο. |
| forbidden | 403 | Ο καλών δεν είναι ιδιοκτήτης του ιατρείου. |
| unauthorized | 401 | Το bearer token λείπει, είναι άκυρο ή έχει λήξει. |
Συχνές ερωτήσεις
Τα αρχεία ασθενών κρυπτογραφούνται κατά τη μεταφορά και την αποθήκευση, τα αρχεία φυλάσσονται ιδιωτικά και σερβίρονται μέσω συνδέσμων περιορισμένης διάρκειας, ενώ κάθε αλλαγή καταγράφεται. Το προσωπικό συνδέεται με passkeys αντί για κοινούς κωδικούς.
Ναι. Κάθε λίστα στο HyperCRM εξάγεται σε CSV μέσα από την εφαρμογή και τα αρχεία σας μπορούν να κατέβουν οποιαδήποτε στιγμή. Τα δεδομένα του ιατρείου σας ανήκουν σε εσάς, χωρίς χρέωση ή καθυστέρηση εξαγωγής — και στα δύο πακέτα, στη δοκιμή, αλλά και μετά την ακύρωση.
Το HyperCRM είναι λογισμικό επί πληρωμή. Κάθε ιατρείο ξεκινά με δωρεάν δοκιμή 30 ημερών στο πλήρες πακέτο Complete, χωρίς κάρτα. Στη συνέχεια τα πακέτα ξεκινούν από 19 € και 29 € τον μήνα χωρίς ΦΠΑ, σε κλιμάκια ανάλογα με το πόσους επαγγελματίες υγείας απασχολείτε. Κάθε τιμή δημοσιεύεται στη σελίδα τιμών, ποτέ σε τηλεφωνική πώληση.