Sanovia — medici e professionisti sanitari in Italia
Find Italian doctors and health practitioners: profile, services, prices, free booking slots.
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"sanovia": {
"url": "https://sanovia.app/api/v1/mcp"
}
}
}원격 엔드포인트
https://sanovia.app/api/v1/mcpstreamable-http할 수 있는 일
도구 목록
도구 (4)
🟢search_doctors(specialty, city, limit)
Cerca medici e professionisti sanitari italiani iscritti a Sanovia per specialità e/o città. Elenca solo chi ha la pagina di prenotazione online e un sito pubblicato: il proprio, oppure quello della struttura (poliambulatorio, centro) in cui riceve — in quel caso site_url è il sito della struttura. Non prenota: restituisce il link di prenotazione. / Search Italian doctors and health practitioners on Sanovia by specialty and/or city. Lists only practitioners with an online booking page and a published website: their own, or that of the structure (clinic) they practise in — then site_url is the structure's site. Does not book; returns the booking link.
입력 스키마
{
"type": "object",
"properties": {
"specialty": {
"type": "string",
"description": "Specialità o professione, in italiano: la disciplina («Cardiologia», «Odontoiatria», «Medicina Generale», «Fisioterapia», «Osteopatia») oppure il professionista («cardiologo», «dentista», «medico di base», «fisioterapista», «osteopata»). / Specialty or profession, in Italian: the discipline (e.g. «Cardiologia») or the practitioner noun (e.g. «cardiologo»)."
},
"city": {
"type": "string",
"description": "Città della sede, es. «Bologna». / City of the practice."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"description": "Massimo risultati (default 10, max 20). / Max results."
}
},
"additionalProperties": false
}출력 스키마
{
"type": "object",
"properties": {
"doctors": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"specialty": {
"type": [
"string",
"null"
]
},
"practice_name": {
"type": [
"string",
"null"
]
},
"profession_types": {
"type": "array",
"items": {
"type": "string"
}
},
"online_booking": {
"type": "boolean"
},
"booking_url": {
"type": [
"string",
"null"
]
},
"site_url": {
"type": [
"string",
"null"
]
},
"cities": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"code",
"name",
"specialty",
"practice_name",
"profession_types",
"online_booking",
"booking_url",
"site_url",
"cities"
]
}
},
"truncated": {
"type": "boolean"
}
},
"required": [
"doctors",
"truncated"
]
}🟢get_doctor_profile(code)
Profilo pubblico di un professionista: specialità, iscrizione all'Albo, sedi, orari, prestazioni con durata e prezzo (null = prezzo non indicato o non mostrato online), valutazione verificata, link al suo sito e alla prenotazione. Non prenota. / Public profile: specialty, professional registration, locations, opening hours, services with duration and price (null = price not stated or not shown online), verified rating, links to their website and booking page. Does not book.
입력 스키마
{
"type": "object",
"properties": {
"code": {
"type": "string",
"description": "Codice pubblico del medico restituito da search_doctors (campo `code`). / The doctor's public code from search_doctors (`code`)."
}
},
"required": [
"code"
],
"additionalProperties": false
}출력 스키마
{
"type": "object",
"properties": {
"code": {
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"specialty": {
"type": [
"string",
"null"
]
},
"practice_name": {
"type": [
"string",
"null"
]
},
"profession_types": {
"type": "array",
"items": {
"type": "string"
}
},
"online_booking": {
"type": "boolean"
},
"booking_url": {
"type": [
"string",
"null"
]
},
"site_url": {
"type": [
"string",
"null"
]
},
"registration": {
"type": [
"object",
"null"
],
"properties": {
"number": {
"type": "string"
},
"province": {
"type": [
"string",
"null"
]
}
}
},
"locations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"location_ref": {
"type": "number"
},
"name": {
"type": "string"
},
"address": {
"type": [
"string",
"null"
]
},
"city": {
"type": [
"string",
"null"
]
},
"phone": {
"type": [
"string",
"null"
]
},
"online_booking": {
"type": "boolean"
}
},
"required": [
"name",
"online_booking"
]
}
},
"opening_hours": {
"type": "array",
"items": {
"type": "object",
"properties": {
"location": {
"type": [
"string",
"null"
]
},
"day": {
"type": [
"string",
"null"
]
},
"from": {
"type": "string"
},
"to": {
"type": "string"
}
},
"required": [
"location",
"day",
"from",
"to"
]
}
},
"services": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"duration_min": {
"type": [
"number",
"null"
]
},
"price_eur": {
"type": [
"number",
"null"
]
},
"remote": {
"type": "boolean"
},
"description": {
"type": [
"string",
"null"
]
}
},
"required": [
"name",
"duration_min",
"price_eur",
"remote",
"description"
]
}
},
"rating": {
"type": [
"object",
"null"
],
"properties": {
"average": {
"type": "number"
},
"count": {
"type": "number"
}
}
},
"external_site_url": {
"type": [
"string",
"null"
]
}
},
"required": [
"code",
"name",
"specialty",
"practice_name",
"profession_types",
"online_booking",
"booking_url",
"site_url",
"registration",
"locations",
"opening_hours",
"services",
"rating",
"external_site_url"
]
}🟢get_visit_types(code, location_ref)
Tipi di visita prenotabili online da un professionista, con durata, prezzo in euro (null = prezzo non indicato o non mostrato online, NON gratuito) e se il pagamento è online. Non prenota. / Visit types bookable online, with duration, price in EUR (null = price not stated or not shown online, NOT free) and whether payment is online. Does not book.
입력 스키마
{
"type": "object",
"properties": {
"code": {
"type": "string",
"description": "Codice pubblico del medico restituito da search_doctors (campo `code`). / The doctor's public code from search_doctors (`code`)."
},
"location_ref": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"description": "Opzionale: numero della sede (location_ref) da get_doctor_profile. Senza, la sede principale. / Optional location number (location_ref) from get_doctor_profile; defaults to the primary location."
}
},
"required": [
"code"
],
"additionalProperties": false
}출력 스키마
{
"type": "object",
"properties": {
"location": {
"type": "object",
"properties": {
"location_ref": {
"type": "number"
},
"name": {
"type": "string"
},
"city": {
"type": [
"string",
"null"
]
}
},
"required": [
"location_ref",
"name",
"city"
]
},
"visit_types": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"duration_min": {
"type": [
"number",
"null"
]
},
"price_eur": {
"type": [
"number",
"null"
]
},
"requires_online_payment": {
"type": "boolean"
},
"description": {
"type": [
"string",
"null"
]
}
},
"required": [
"name",
"duration_min",
"price_eur",
"requires_online_payment",
"description"
]
}
},
"booking_url": {
"type": "string"
}
},
"required": [
"location",
"visit_types",
"booking_url"
]
}🟢get_availability(code, location_ref, from, days, visit_type)
Orari di inizio liberi per la prenotazione online di un professionista, giorno per giorno (massimo 14 giorni). Mostra solo gli orari liberi, mai chi ha prenotato. Indica visit_type per avere solo gli orari in cui quella visita ci sta. Non prenota: per l'orario scelto dai al paziente il link di booking_urls di quel giorno (pagina di prenotazione con sede, giorno, orario e tipo di visita già scelti; il paziente inserisce i suoi dati e conferma), altrimenti booking_url. / Free start times for online booking, day by day (max 14 days). Shows free times only, never who booked. Pass visit_type to get only the times that visit fits. Does not book: for the chosen time give the patient that day's booking_urls link (the booking page with location, day, time and visit type preselected; the patient enters their details and confirms), otherwise booking_url.
입력 스키마
{
"type": "object",
"properties": {
"code": {
"type": "string",
"description": "Codice pubblico del medico restituito da search_doctors (campo `code`). / The doctor's public code from search_doctors (`code`)."
},
"location_ref": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"description": "Opzionale: numero della sede (location_ref) da get_doctor_profile. Senza, la sede principale. / Optional location number (location_ref) from get_doctor_profile; defaults to the primary location."
},
"from": {
"type": "string",
"format": "date",
"description": "Primo giorno AAAA-MM-GG (default oggi, fuso Europe/Rome). / First day YYYY-MM-DD (default today, Europe/Rome)."
},
"days": {
"type": "integer",
"minimum": 1,
"maximum": 14,
"description": "Numero di giorni (default 7, max 14). / Number of days."
},
"visit_type": {
"type": "string",
"description": "Opzionale ma consigliato: il nome esatto di un tipo di visita da get_visit_types (stessa sede). Con il nome, solo gli orari in cui quella visita (con la sua durata) è prenotabile. / Optional but recommended: the exact visit type name from get_visit_types (same location); only start times where a visit of that length fits are returned."
}
},
"required": [
"code"
],
"additionalProperties": false
}출력 스키마
{
"type": "object",
"properties": {
"location": {
"type": "object",
"properties": {
"location_ref": {
"type": "number"
},
"name": {
"type": "string"
},
"city": {
"type": [
"string",
"null"
]
}
},
"required": [
"location_ref",
"name",
"city"
]
},
"other_locations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"location_ref": {
"type": "number"
},
"name": {
"type": "string"
},
"city": {
"type": [
"string",
"null"
]
}
},
"required": [
"location_ref",
"name",
"city"
]
}
},
"from": {
"type": "string"
},
"days": {
"type": "number"
},
"free_slots": {
"type": "array",
"items": {
"type": "object",
"properties": {
"date": {
"type": "string"
},
"slots": {
"type": "array",
"items": {
"type": "string"
}
},
"booking_urls": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"required": [
"date",
"slots",
"booking_urls"
]
}
},
"booking_url": {
"type": "string"
},
"visit_type": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"duration_min": {
"type": [
"number",
"null"
]
}
},
"required": [
"name",
"duration_min"
]
}
},
"required": [
"location",
"other_locations",
"from",
"days",
"free_slots",
"booking_url"
]
}커뮤니티
증거