MediMo

Find and book UK private physiotherapy, osteopathy and chiropractic clinics, with live availability.

我該用這個嗎

品質與安全性

A
說明品質
100%
結構描述完整度
98%
命名品質
100%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

根據工具定義與協定合規性的自動化分析。

上下文成本

~5,987Token(工具定義)
~10.8 KB典型回應大小
顯著的注意力影響(128k 上下文的 4.68%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "mcp": {
      "url": "https://medimo.co.uk/mcp"
    }
  }
}

遠端端點

https://medimo.co.uk/mcpstreamable-http

它能做什麼

工具清單

工具(6)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢search_clinics(location, service, radius_miles, limit, sort, ...)

Find private physiotherapy, osteopathy or chiropractic clinics near a UK postcode or town that can be booked online through MediMo. Each result carries the clinic's next available first appointment, read from its own diary and refreshed every ten minutes, plus distance, Google rating and the treatments it offers. Returns no appointment times beyond the next available slot and does not book. Pass a date, a date range and/or a time of day to get only the clinics free then, with that day's appointment times — "a chiropractic appointment next Tuesday afternoon within 5 miles of WA14". Narrow to clinics with a practitioner of a given gender or language, or with free parking on site or step-free access, using the same rules as the website's filters. Pass insurer when someone is paying through their health insurance: only clinics accepting it are returned, with that insurer's appointments, prices and checkout. Each result lists its parking, access and accepted insurers. Start here; use get_clinic for detail on one result and start_booking when the person has chosen.

輸入結構描述

{
  "type": "object",
  "properties": {
    "location": {
      "description": "A UK postcode (\"M33 7XS\"), postcode district (\"SK8\") or town (\"Altrincham\"). A full postcode gives the most accurate distances.",
      "type": "string"
    },
    "service": {
      "description": "Optional treatment: \"physiotherapy\", \"osteopathy\", \"chiropractic\" (short forms like \"physio\" are fine). Leave empty to search all treatments.",
      "type": "string"
    },
    "radius_miles": {
      "description": "Search radius, 1–20 miles. Default 10. Widens once to 20 if fewer than 3 clinics are found.",
      "type": "integer"
    },
    "limit": {
      "description": "Maximum clinics to return, 1–20. Default 10.",
      "type": "integer"
    },
    "sort": {
      "description": "Order of results. \"nearest\" (default) lists clinics with an appointment first, then by distance; \"soonest\" by next available appointment; \"rating\" by Google rating.",
      "enum": [
        "nearest",
        "soonest",
        "rating"
      ],
      "type": "string"
    },
    "date": {
      "description": "Optional single date, ISO format (2026-09-22). Returns only clinics with an appointment that day, and that day's times.",
      "type": "string"
    },
    "date_from": {
      "description": "Optional start of a date range, ISO format. Use with date_to.",
      "type": "string"
    },
    "date_to": {
      "description": "Optional end of a date range, ISO format. At most 7 days from date_from.",
      "type": "string"
    },
    "time_of_day": {
      "description": "Optional. Only clinics with a slot in the morning (before noon), afternoon (noon to 5pm) or evening (5pm on).",
      "enum": [
        "morning",
        "afternoon",
        "evening"
      ],
      "type": "string"
    },
    "practitioner_gender": {
      "description": "Optional. Only clinics with a practitioner of this gender who delivers the treatment searched for.",
      "enum": [
        "female",
        "male"
      ],
      "type": "string"
    },
    "language": {
      "description": "Optional. Only clinics with a practitioner who speaks this language and delivers the treatment searched for, e.g. \"Polish\". English is assumed everywhere and is not a filter.",
      "type": "string"
    },
    "facilities": {
      "description": "Optional. \"free_parking\": free parking on site. \"accessible\": step-free access, an accessible toilet, and a treatment room reachable without stairs. Every one listed must apply.",
      "items": {
        "enum": [
          "free_parking",
          "accessible"
        ],
        "type": "string"
      },
      "type": "array"
    },
    "insurer": {
      "description": "Optional. The health insurer paying, e.g. \"Bupa\", \"AXA\", \"Vitality\". Only clinics accepting it are returned, and prices and checkout links become that insurer's. Leave out for self-pay.",
      "type": "string"
    }
  },
  "required": [
    "location"
  ]
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "about": {
      "description": "What MediMo is.",
      "type": "string"
    },
    "booking_rule": {
      "description": "Where bookings and payment complete.",
      "type": "string"
    },
    "price_promise": {
      "type": "string"
    },
    "generated_at": {
      "description": "When this response was produced. ISO 8601, Europe/London.",
      "type": "string"
    },
    "data_as_of": {
      "description": "Age of the underlying reading, when different from generated_at.",
      "type": [
        "string",
        "null"
      ]
    },
    "data": {
      "properties": {
        "location": {
          "properties": {
            "input": {
              "type": "string"
            },
            "resolved_to": {
              "type": "string"
            },
            "within": {
              "type": [
                "string",
                "null"
              ]
            },
            "precision": {
              "type": "string"
            },
            "note": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "type": "object"
        },
        "treatments_searched": {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "radius_miles_used": {
          "type": "number"
        },
        "radius_widened": {
          "type": "boolean"
        },
        "requested_dates": {
          "properties": {
            "date_from": {
              "type": [
                "string",
                "null"
              ]
            },
            "date_to": {
              "type": [
                "string",
                "null"
              ]
            },
            "time_of_day": {
              "enum": [
                "morning",
                "afternoon",
                "evening"
              ],
              "type": [
                "string",
                "null"
              ]
            }
          },
          "type": [
            "object",
            "null"
          ]
        },
        "filters_applied": {
          "description": "Filters that narrowed these results. Null when none were applied.",
          "properties": {
            "practitioner_gender": {
              "enum": [
                "female",
                "male"
              ],
              "type": "string"
            },
            "language": {
              "type": "string"
            },
            "facilities": {
              "items": {
                "enum": [
                  "free_parking",
                  "accessible"
                ],
                "type": "string"
              },
              "type": "array"
            },
            "insurer": {
              "type": "string"
            }
          },
          "type": [
            "object",
            "null"
          ]
        },
        "total_found": {
          "type": "integer"
        },
        "returned": {
          "type": "integer"
        },
        "sort": {
          "type": "string"
        },
        "clinics": {
          "items": {
            "properties": {
              "clinic_id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "area": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "postcode": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "distance_miles": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "specialisms": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "google_rating": {
                "properties": {
                  "value": {
                    "description": "Google rating out of 5.",
                    "type": "number"
                  },
                  "scale": {
                    "type": "integer"
                  },
                  "count": {
                    "description": "Number of Google reviews.",
                    "type": "integer"
                  },
                  "attribution": {
                    "type": "string"
                  },
                  "maps_url": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": [
                  "object",
                  "null"
                ]
              },
              "facilities": {
                "description": "Parking and access as the clinic recorded them. An empty list means the clinic said none apply; the whole field is absent when the clinic has not recorded them.",
                "properties": {
                  "parking": {
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  },
                  "access": {
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  }
                },
                "type": "object"
              },
              "insurers_accepted": {
                "description": "Insurers the clinic accepts. Pass one as insurer to search_clinics, get_clinic or start_booking for that insurer's appointments, prices and checkout.",
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "profile_url": {
                "type": "string"
              },
              "treatments_offered": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "availability": {
                "properties": {
                  "state": {
                    "description": "unknown and stale mean the reading could not be made or is too old, never that there is nothing.",
                    "enum": [
                      "available",
                      "none",
                      "stale",
                      "unknown"
                    ],
                    "type": "string"
                  },
                  "next_available_at": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "as_of": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "age_minutes": {
                    "type": [
                      "integer",
                      "null"
                    ]
                  },
                  "coverage": {
                    "enum": [
                      "complete",
                      "partial",
                      "unknown"
                    ],
                    "type": "string"
                  },
                  "note": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "reason": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object",
                "required": [
                  "state"
                ]
              },
              "next_available": {
                "properties": {
                  "at": {
                    "type": "string"
                  },
                  "service_id": {
                    "type": "string"
                  },
                  "service_name": {
                    "type": "string"
                  },
                  "price_gbp": {
                    "type": "number"
                  },
                  "no_upfront_payment": {
                    "type": "boolean"
                  },
                  "practitioner_id": {
                    "type": "string"
                  },
                  "checkout_url": {
                    "type": "string"
                  }
                },
                "type": [
                  "object",
                  "null"
                ]
              },
              "dates_read": {
                "type": "boolean"
              },
              "on_requested_dates": {
                "items": {
                  "properties": {
                    "date": {
                      "type": "string"
                    },
                    "specialism": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "state": {
                      "enum": [
                        "available",
                        "none",
                        "unknown"
                      ],
                      "type": "string"
                    },
                    "slot_count": {
                      "description": "Whole day, regardless of any time_of_day filter.",
                      "type": [
                        "integer",
                        "null"
                      ]
                    },
                    "slot_count_scope": {
                      "type": "string"
                    },
                    "slots": {
                      "items": {
                        "properties": {
                          "at": {
                            "description": "ISO 8601 with offset. Pass to start_booking as starts_at.",
                            "type": "string"
                          },
                          "practitioner_id": {
                            "type": "string"
                          },
                          "service_id": {
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "service_ids": {
                            "description": "Every service bookable at this time.",
                            "items": {
                              "type": "string"
                            },
                            "type": "array"
                          }
                        },
                        "type": "object",
                        "required": [
                          "at",
                          "practitioner_id"
                        ]
                      },
                      "type": "array"
                    },
                    "listed": {
                      "type": "integer"
                    },
                    "times_are_a_sample": {
                      "type": "boolean"
                    },
                    "truncated": {
                      "type": "boolean"
                    },
                    "as_of": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "age_minutes": {
                      "type": [
                        "integer",
                        "null"
                      ]
                    },
                    "reading": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "coverage": {
                      "enum": [
                        "complete",
                        "partial",
                        "unknown"
                      ],
                      "type": "string"
                    },
                    "note": {
                      "type": [
                        "string",
                        "null"
                      ]
                    }
                  },
                  "type": "object",
                  "required": [
                    "date"
                  ]
                },
                "type": "array"
              }
            },
            "type": "object",
            "required": [
              "clinic_id",
              "name"
            ]
          },
          "type": "array"
        },
        "dates_not_read_for": {
          "type": [
            "integer",
            "null"
          ]
        },
        "nearest_covered_areas": {
          "items": {
            "properties": {
              "name": {
                "type": "string"
              },
              "distance_miles": {
                "type": "number"
              }
            },
            "type": "object"
          },
          "type": [
            "array",
            "null"
          ]
        },
        "hint": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "type": "object",
      "required": [
        "location",
        "total_found",
        "clinics"
      ]
    }
  },
  "required": [
    "about",
    "booking_rule",
    "price_promise",
    "generated_at",
    "data"
  ]
}
🟢get_clinic(clinic_id, insurer)

Return the full public profile of one MediMo clinic: description, address, the treatments it offers with prices and durations, its practitioners with profession, regulator registration, gender and languages spoken besides English, its parking and step-free access, the insurers it accepts, and current availability. Pass insurer for that insurer's appointments, prices and approved practitioners. Prices are the clinic's own — booking through MediMo costs the same as booking direct. Contains no phone numbers, emails or review text. Use it after search_clinics when someone wants detail on a specific clinic; call start_booking when they have chosen.

輸入結構描述

{
  "type": "object",
  "properties": {
    "clinic_id": {
      "description": "The clinic id from search_clinics. Accepts the slug or the ULID.",
      "type": "string"
    },
    "insurer": {
      "description": "Optional. The health insurer paying, e.g. \"Bupa\". Services, prices and practitioners become that insurer's. Leave out for self-pay.",
      "type": "string"
    }
  },
  "required": [
    "clinic_id"
  ]
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "about": {
      "description": "What MediMo is.",
      "type": "string"
    },
    "booking_rule": {
      "description": "Where bookings and payment complete.",
      "type": "string"
    },
    "price_promise": {
      "type": "string"
    },
    "generated_at": {
      "description": "When this response was produced. ISO 8601, Europe/London.",
      "type": "string"
    },
    "data_as_of": {
      "description": "Age of the underlying reading, when different from generated_at.",
      "type": [
        "string",
        "null"
      ]
    },
    "data": {
      "properties": {
        "clinic_id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "specialisms": {
          "type": "string"
        },
        "address": {
          "properties": {
            "line_1": {
              "type": "string"
            },
            "line_2": {
              "type": "string"
            },
            "city": {
              "type": "string"
            },
            "postcode": {
              "type": "string"
            },
            "country": {
              "type": "string"
            }
          },
          "type": "object"
        },
        "area": {
          "type": "string"
        },
        "google_rating": {
          "properties": {
            "value": {
              "description": "Google rating out of 5.",
              "type": "number"
            },
            "scale": {
              "type": "integer"
            },
            "count": {
              "description": "Number of Google reviews.",
              "type": "integer"
            },
            "attribution": {
              "type": "string"
            },
            "maps_url": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "type": [
            "object",
            "null"
          ]
        },
        "facilities": {
          "description": "Parking and access as the clinic recorded them. An empty list means the clinic said none apply; the whole field is absent when the clinic has not recorded them.",
          "properties": {
            "parking": {
              "items": {
                "type": "string"
              },
              "type": "array"
            },
            "access": {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          },
          "type": "object"
        },
        "insurers_accepted": {
          "description": "Insurers the clinic accepts. Pass one as insurer to search_clinics, get_clinic or start_booking for that insurer's appointments, prices and checkout.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "services": {
          "items": {
            "properties": {
              "service_id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "specialism": {
                "description": "Treatment slug: physiotherapy, chiropractic, osteopathy.",
                "type": "string"
              },
              "appointment_type": {
                "enum": [
                  "first_visit",
                  "follow_up"
                ],
                "type": "string"
              },
              "duration_minutes": {
                "type": "integer"
              },
              "price_gbp": {
                "description": "What the patient pays at checkout. With an insurer, that insurer's price.",
                "type": "number"
              },
              "no_upfront_payment": {
                "description": "Present and true when the insurer is billed and nothing is taken at checkout.",
                "type": "boolean"
              },
              "description": {
                "type": "string"
              },
              "treatment_included": {
                "description": "Present and false only when the clinic states this appointment is assessment only.",
                "type": "boolean"
              },
              "treatment_note": {
                "type": "string"
              }
            },
            "type": "object",
            "required": [
              "service_id",
              "name"
            ]
          },
          "type": "array"
        },
        "practitioners": {
          "items": {
            "properties": {
              "practitioner_id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "professions": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "registrations": {
                "items": {
                  "properties": {
                    "regulator": {
                      "type": "string"
                    },
                    "registration_number": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                },
                "type": "array"
              },
              "gender": {
                "description": "As recorded by the clinic.",
                "enum": [
                  "female",
                  "male"
                ],
                "type": "string"
              },
              "additional_languages": {
                "description": "Languages spoken besides English, as recorded by the clinic.",
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "bio": {
                "type": "string"
              }
            },
            "type": "object",
            "required": [
              "practitioner_id",
              "name"
            ]
          },
          "type": "array"
        },
        "cancellation_policy": {
          "properties": {
            "summary": {
              "type": "string"
            },
            "applies_to": {
              "type": "string"
            }
          },
          "type": "object"
        },
        "price_promise": {
          "type": "string"
        },
        "profile_url": {
          "type": "string"
        },
        "insurer": {
          "description": "The insurer these services and prices are for. Absent for self-pay.",
          "type": "string"
        },
        "availability": {
          "properties": {
            "state": {
              "enum": [
                "available",
                "none",
                "stale",
                "unknown"
              ],
              "type": "string"
            },
            "as_of": {
              "type": [
                "string",
                "null"
              ]
            },
            "age_minutes": {
              "type": [
                "integer",
                "null"
              ]
            },
            "coverage": {
              "enum": [
                "complete",
                "partial",
                "unknown"
              ],
              "type": "string"
            },
            "coverage_note": {
              "type": [
                "string",
                "null"
              ]
            },
            "horizon_days": {
              "type": "integer"
            },
            "scope": {
              "type": "string"
            },
            "reason": {
              "type": [
                "string",
                "null"
              ]
            },
            "note": {
              "type": [
                "string",
                "null"
              ]
            },
            "by_specialism": {
              "items": {
                "properties": {
                  "specialism": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "state": {
                    "enum": [
                      "available",
                      "none"
                    ],
                    "type": "string"
                  },
                  "next_available_at": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "slot_counts": {
                    "properties": {
                      "today": {
                        "type": "integer"
                      },
                      "tomorrow": {
                        "type": "integer"
                      },
                      "next_48_hours": {
                        "type": "integer"
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              },
              "type": "array"
            }
          },
          "type": "object",
          "required": [
            "state"
          ]
        }
      },
      "type": "object",
      "required": [
        "clinic_id",
        "name",
        "services",
        "practitioners",
        "availability"
      ]
    }
  },
  "required": [
    "about",
    "booking_rule",
    "price_promise",
    "generated_at",
    "data"
  ]
}
🟢get_availability(clinic_id, service, date, date_from, date_to, ...)

Return current bookable availability for one clinic, read from the clinic's own diary. Gives the soonest appointment and how many are free today, tomorrow and in the next 48 hours, per treatment type. Pass a date or a date range to get that day's appointment times, each carrying the ids start_booking needs to open the checkout on that exact slot. Every response says how old its reading is, and every date carries its own age, because the next few days are re-read every ten minutes and later dates far less often. Says plainly when a date has not been read rather than reporting it as having nothing. Covers self-pay first appointments booked online; the checkout page shows every live slot.

輸入結構描述

{
  "type": "object",
  "properties": {
    "clinic_id": {
      "description": "The clinic id from search_clinics. Accepts the slug or the ULID.",
      "type": "string"
    },
    "service": {
      "description": "Optional. Narrow to one treatment, e.g. \"physiotherapy\", \"osteopathy\", \"chiropractic\".",
      "type": "string"
    },
    "date": {
      "description": "Optional single date, ISO format (2026-09-22). Returns that day's appointment times.",
      "type": "string"
    },
    "date_from": {
      "description": "Optional start of a date range, ISO format. Use with date_to.",
      "type": "string"
    },
    "date_to": {
      "description": "Optional end of a date range, ISO format. At most 14 days from date_from.",
      "type": "string"
    },
    "time_of_day": {
      "description": "Optional. Narrow the times to morning (before noon), afternoon (noon to 5pm) or evening (5pm on).",
      "enum": [
        "morning",
        "afternoon",
        "evening"
      ],
      "type": "string"
    }
  },
  "required": [
    "clinic_id"
  ]
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "about": {
      "description": "What MediMo is.",
      "type": "string"
    },
    "booking_rule": {
      "description": "Where bookings and payment complete.",
      "type": "string"
    },
    "price_promise": {
      "type": "string"
    },
    "generated_at": {
      "description": "When this response was produced. ISO 8601, Europe/London.",
      "type": "string"
    },
    "data_as_of": {
      "description": "Age of the underlying reading, when different from generated_at.",
      "type": [
        "string",
        "null"
      ]
    },
    "data": {
      "properties": {
        "clinic_id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "availability": {
          "properties": {
            "state": {
              "enum": [
                "available",
                "none",
                "stale",
                "unknown"
              ],
              "type": "string"
            },
            "as_of": {
              "type": [
                "string",
                "null"
              ]
            },
            "age_minutes": {
              "type": [
                "integer",
                "null"
              ]
            },
            "coverage": {
              "enum": [
                "complete",
                "partial",
                "unknown"
              ],
              "type": "string"
            },
            "coverage_note": {
              "type": [
                "string",
                "null"
              ]
            },
            "horizon_days": {
              "type": "integer"
            },
            "scope": {
              "type": "string"
            },
            "reason": {
              "type": [
                "string",
                "null"
              ]
            },
            "note": {
              "type": [
                "string",
                "null"
              ]
            },
            "by_specialism": {
              "items": {
                "properties": {
                  "specialism": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "state": {
                    "enum": [
                      "available",
                      "none"
                    ],
                    "type": "string"
                  },
                  "next_available_at": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "slot_counts": {
                    "properties": {
                      "today": {
                        "type": "integer"
                      },
                      "tomorrow": {
                        "type": "integer"
                      },
                      "next_48_hours": {
                        "type": "integer"
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              },
              "type": "array"
            }
          },
          "type": "object",
          "required": [
            "state"
          ]
        },
        "requested": {
          "properties": {
            "date_from": {
              "type": [
                "string",
                "null"
              ]
            },
            "date_to": {
              "type": [
                "string",
                "null"
              ]
            },
            "time_of_day": {
              "enum": [
                "morning",
                "afternoon",
                "evening"
              ],
              "type": [
                "string",
                "null"
              ]
            }
          },
          "type": "object"
        },
        "days": {
          "description": "Present when a date or date range was asked for: one entry per date per treatment.",
          "items": {
            "properties": {
              "date": {
                "type": "string"
              },
              "specialism": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "state": {
                "enum": [
                  "available",
                  "none",
                  "unknown"
                ],
                "type": "string"
              },
              "slot_count": {
                "description": "Whole day, regardless of any time_of_day filter.",
                "type": [
                  "integer",
                  "null"
                ]
              },
              "slot_count_scope": {
                "type": "string"
              },
              "slots": {
                "items": {
                  "properties": {
                    "at": {
                      "description": "ISO 8601 with offset. Pass to start_booking as starts_at.",
                      "type": "string"
                    },
                    "practitioner_id": {
                      "type": "string"
                    },
                    "service_id": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "service_ids": {
                      "description": "Every service bookable at this time.",
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    }
                  },
                  "type": "object",
                  "required": [
                    "at",
                    "practitioner_id"
                  ]
                },
                "type": "array"
              },
              "listed": {
                "type": "integer"
              },
              "times_are_a_sample": {
                "type": "boolean"
              },
              "truncated": {
                "type": "boolean"
              },
              "as_of": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "age_minutes": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "reading": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "coverage": {
                "enum": [
                  "complete",
                  "partial",
                  "unknown"
                ],
                "type": "string"
              },
              "note": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object",
            "required": [
              "date"
            ]
          },
          "type": "array"
        }
      },
      "type": "object",
      "required": [
        "clinic_id",
        "name",
        "availability"
      ]
    }
  },
  "required": [
    "about",
    "booking_rule",
    "price_promise",
    "generated_at",
    "data"
  ]
}
🟢get_practitioner(practitioner_id)

Return one practitioner's public profile: name, profession, the regulator they are registered with and their registration number where MediMo holds it, their gender and languages spoken besides English as their clinic recorded them, their bio, and the clinics they can be booked at. Only registrations MediMo has verified are included. Contains no contact details. Use it when someone asks about a named clinician; call get_availability on their clinic for appointment times.

輸入結構描述

{
  "type": "object",
  "properties": {
    "practitioner_id": {
      "description": "The practitioner id (ULID) from get_clinic.",
      "type": "string"
    }
  },
  "required": [
    "practitioner_id"
  ]
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "about": {
      "description": "What MediMo is.",
      "type": "string"
    },
    "booking_rule": {
      "description": "Where bookings and payment complete.",
      "type": "string"
    },
    "price_promise": {
      "type": "string"
    },
    "generated_at": {
      "description": "When this response was produced. ISO 8601, Europe/London.",
      "type": "string"
    },
    "data_as_of": {
      "description": "Age of the underlying reading, when different from generated_at.",
      "type": [
        "string",
        "null"
      ]
    },
    "data": {
      "properties": {
        "practitioner_id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "professions": {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "registrations": {
          "items": {
            "properties": {
              "regulator": {
                "type": "string"
              },
              "registration_number": {
                "type": "string"
              }
            },
            "type": "object"
          },
          "type": "array"
        },
        "gender": {
          "description": "As recorded by the clinic.",
          "enum": [
            "female",
            "male"
          ],
          "type": "string"
        },
        "additional_languages": {
          "description": "Languages spoken besides English, as recorded by the clinic.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "bio": {
          "type": "string"
        },
        "clinics": {
          "items": {
            "properties": {
              "clinic_id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "area": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "type": "array"
        }
      },
      "type": "object",
      "required": [
        "practitioner_id",
        "name",
        "clinics"
      ]
    }
  },
  "required": [
    "about",
    "booking_rule",
    "price_promise",
    "generated_at",
    "data"
  ]
}
🟢start_booking(clinic_id, service_id, practitioner_id, starts_at, insurer)

Build the MediMo checkout link for a chosen clinic and treatment, so the person can complete their booking and payment on medimo.co.uk. Returns the URL and a summary of what they are booking and what it costs. Call it once they have chosen. It holds no appointment, creates no booking, takes no payment and needs no personal details — all of that happens on the MediMo page. Pass insurer for the insured checkout, which asks for their policy details. Safe to call more than once.

輸入結構描述

{
  "type": "object",
  "properties": {
    "clinic_id": {
      "description": "The clinic id from search_clinics or get_clinic.",
      "type": "string"
    },
    "service_id": {
      "description": "Optional. The service id from get_clinic, to open the checkout on that treatment.",
      "type": "string"
    },
    "practitioner_id": {
      "description": "Optional. The practitioner id from get_clinic, if they asked for someone specific.",
      "type": "string"
    },
    "starts_at": {
      "description": "Optional ISO 8601 time, from get_availability next_available_at. Requires service_id and practitioner_id.",
      "type": "string"
    },
    "insurer": {
      "description": "Optional. The health insurer paying, e.g. \"Bupa\". Opens the insured checkout for that insurer. Use the same insurer passed to get_clinic.",
      "type": "string"
    }
  },
  "required": [
    "clinic_id"
  ]
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "about": {
      "description": "What MediMo is.",
      "type": "string"
    },
    "booking_rule": {
      "description": "Where bookings and payment complete.",
      "type": "string"
    },
    "price_promise": {
      "type": "string"
    },
    "generated_at": {
      "description": "When this response was produced. ISO 8601, Europe/London.",
      "type": "string"
    },
    "data_as_of": {
      "description": "Age of the underlying reading, when different from generated_at.",
      "type": [
        "string",
        "null"
      ]
    },
    "data": {
      "properties": {
        "checkout_url": {
          "description": "Give this to the person. Booking and payment complete on medimo.co.uk.",
          "type": "string"
        },
        "clinic": {
          "properties": {
            "clinic_id": {
              "type": "string"
            },
            "name": {
              "type": "string"
            }
          },
          "type": "object"
        },
        "service": {
          "properties": {
            "service_id": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "specialism": {
              "description": "Treatment slug: physiotherapy, chiropractic, osteopathy.",
              "type": "string"
            },
            "appointment_type": {
              "enum": [
                "first_visit",
                "follow_up"
              ],
              "type": "string"
            },
            "duration_minutes": {
              "type": "integer"
            },
            "price_gbp": {
              "description": "What the patient pays at checkout. With an insurer, that insurer's price.",
              "type": "number"
            },
            "no_upfront_payment": {
              "description": "Present and true when the insurer is billed and nothing is taken at checkout.",
              "type": "boolean"
            },
            "description": {
              "type": "string"
            },
            "treatment_included": {
              "description": "Present and false only when the clinic states this appointment is assessment only.",
              "type": "boolean"
            },
            "treatment_note": {
              "type": "string"
            }
          },
          "type": "object",
          "required": [
            "service_id",
            "name"
          ]
        },
        "practitioner": {
          "properties": {
            "practitioner_id": {
              "type": "string"
            },
            "name": {
              "type": "string"
            }
          },
          "type": "object"
        },
        "starts_at": {
          "type": "string"
        },
        "insurer": {
          "description": "The insurer the checkout is set up for. Absent for self-pay.",
          "type": "string"
        },
        "what_happens_next": {
          "type": "string"
        },
        "slot_note": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "checkout_url",
        "clinic",
        "what_happens_next"
      ]
    }
  },
  "required": [
    "about",
    "booking_rule",
    "price_promise",
    "generated_at",
    "data"
  ]
}
🟢get_nhs_wait(postcode, icb, specialty)

Return the latest published NHS waiting-time figures for the Integrated Care Board covering a UK postcode, or for a named board: the median wait, how many people are waiting, the wait bands, and how that compares with the national average. Figures are NHS England's own published statistics, with the reporting period stated. Useful context when someone is deciding whether to wait or to go private; pair it with search_clinics for what is bookable privately nearby.

輸入結構描述

{
  "type": "object",
  "properties": {
    "postcode": {
      "description": "A UK postcode. The Integrated Care Board covering it is looked up locally, with no external call.",
      "type": "string"
    },
    "icb": {
      "description": "Alternative to postcode: an Integrated Care Board by name, slug or code, e.g. \"Greater Manchester\".",
      "type": "string"
    },
    "specialty": {
      "description": "Optional. Defaults to MSK physiotherapy, the waiting list private physiotherapy is an alternative to.",
      "type": "string"
    }
  }
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "about": {
      "description": "What MediMo is.",
      "type": "string"
    },
    "booking_rule": {
      "description": "Where bookings and payment complete.",
      "type": "string"
    },
    "price_promise": {
      "type": "string"
    },
    "generated_at": {
      "description": "When this response was produced. ISO 8601, Europe/London.",
      "type": "string"
    },
    "data_as_of": {
      "description": "Age of the underlying reading, when different from generated_at.",
      "type": [
        "string",
        "null"
      ]
    },
    "data": {
      "properties": {
        "icb": {
          "properties": {
            "code": {
              "type": "string"
            },
            "name": {
              "type": "string"
            }
          },
          "type": "object"
        },
        "specialty": {
          "properties": {
            "code": {
              "type": "string"
            },
            "name": {
              "type": "string"
            }
          },
          "type": "object"
        },
        "reporting_period": {
          "type": "string"
        },
        "reporting_period_label": {
          "type": "string"
        },
        "median_wait_weeks": {
          "type": [
            "number",
            "null"
          ]
        },
        "median_wait": {
          "type": "string"
        },
        "total_waiting": {
          "type": [
            "integer",
            "null"
          ]
        },
        "waiting_longer_than_12_weeks_percent": {
          "type": [
            "number",
            "null"
          ]
        },
        "bands": {
          "items": {
            "properties": {
              "label": {
                "type": "string"
              },
              "count": {
                "type": "integer"
              },
              "pct": {
                "type": "number"
              }
            },
            "type": "object"
          },
          "type": "array"
        },
        "national_average": {
          "properties": {
            "median_wait_weeks": {
              "type": [
                "number",
                "null"
              ]
            },
            "median_wait": {
              "type": "string"
            },
            "total_waiting": {
              "type": [
                "integer",
                "null"
              ]
            },
            "waiting_longer_than_12_weeks_percent": {
              "type": [
                "number",
                "null"
              ]
            }
          },
          "type": "object"
        },
        "data_source": {
          "type": "string"
        },
        "attribution": {
          "type": "string"
        },
        "source_note": {
          "type": "string"
        },
        "private_alternative": {
          "type": "string"
        },
        "page_url": {
          "description": "MediMo's page for these figures. Link here rather than composing a URL.",
          "type": [
            "string",
            "null"
          ]
        }
      },
      "type": "object",
      "required": [
        "icb",
        "specialty"
      ]
    }
  },
  "required": [
    "about",
    "booking_rule",
    "price_promise",
    "generated_at",
    "data"
  ]
}

建議的提示詞

search_research
Search for information about [topic] using MediMo
預期的工具: search_clinics
find_specific
Find [specific item] using MediMo
預期的工具: search_clinics
retrieve_data
Get details about [item] from MediMo
預期的工具: get_clinic
fetch_info
Fetch [information type] using MediMo
預期的工具: get_clinic
research_workflow
Search for [topic], then get detailed information about the top results using MediMo
預期的工具: search_clinicsget_clinic

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本6 個工具
已驗證未記錄版本6 個工具