Dispolà

Same-day appointment openings in Quebec: hair, nails, massage, physio. No account needed.

使うべきか

品質と安全性

A
説明の品質
100%
スキーマの完全性
83%
命名の品質
80%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~1,966トークン数(ツール定義)
~3.4 KB一般的なレスポンスサイズ
注意への影響は中程度(128k コンテキストの 1.54%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "places": {
      "url": "https://dispola.ca/mcp"
    }
  }
}

リモートエンドポイント

https://dispola.ca/mcpstreamable-http

できること

ツール一覧

ツール(4)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢chercher_places(ville, categorie, jour, moment, quartier, ...)

Cherche les places libres d'une ville, par catégorie, jour, moment et quartier. Rend l'établissement, le quartier, le service, l'heure, la durée, le prix et le lien pour réserver. Avec une catégorie, rend aussi sur_demande : des commerces sans réservation en ligne, avec des moments estimés à confirmer. / Finds open appointment spots in a city, by category, day, time of day and neighbourhood, with the booking link. With a category, also returns sur_demande: businesses without online booking, with estimated times to be confirmed by phone.

入力スキーマ

{
  "type": "object",
  "properties": {
    "ville": {
      "type": "string",
      "enum": [
        "montreal",
        "quebec",
        "sherbrooke",
        "gatineau",
        "rive-nord",
        "rive-sud"
      ],
      "description": "La ville. / The city."
    },
    "categorie": {
      "type": "string",
      "enum": [
        "coiffure",
        "ongles",
        "cils",
        "sourcils",
        "esthetique",
        "massotherapie",
        "tatouage",
        "physiotherapie",
        "osteopathie",
        "kinesiologie",
        "therapie_sport",
        "chiropratique",
        "acupuncture"
      ],
      "description": "La catégorie (voir categories_et_villes). / The category."
    },
    "jour": {
      "type": "string",
      "pattern": "^(aujourdhui|demain|\\d{4}-\\d{2}-\\d{2})$",
      "description": "aujourdhui, demain ou AAAA-MM-JJ (heure de Montréal). / today, tomorrow or YYYY-MM-DD."
    },
    "moment": {
      "type": "string",
      "enum": [
        "am",
        "pm",
        "soir"
      ],
      "description": "am : avant midi ; pm : de midi à 17 h ; soir : après 17 h. / morning, afternoon, evening."
    },
    "quartier": {
      "type": "string",
      "minLength": 2,
      "maxLength": 60,
      "description": "Un quartier, par exemple Plateau ou Limoilou : trie du plus proche au plus loin. / A neighbourhood: sorts nearest first."
    },
    "lat": {
      "type": "number",
      "minimum": -90,
      "maximum": 90,
      "description": "Latitude, avec lng : trie du plus proche au plus loin. / Latitude, with lng: sorts nearest first."
    },
    "lng": {
      "type": "number",
      "minimum": -180,
      "maximum": 180,
      "description": "Longitude, avec lat. / Longitude, with lat."
    },
    "limite": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 10,
      "description": "Nombre de places, 10 par défaut. / Max spots, default 10."
    }
  },
  "required": [
    "ville"
  ],
  "additionalProperties": false
}
🟢categories_et_villes

Les villes, les catégories et leurs services, avec le nombre de places libres par ville et par catégorie d'ici 7 jours. / Cities, categories and services, with the number of open spots per city and category over the next 7 days.

入力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢lien_alerte_texto(ville, service, quartier, jour, moment, ...)

Construit le lien du formulaire prérempli d'alerte texto quand aucune place ne convient. La personne l'ouvre, entre elle-même son cellulaire et consent aux textos ; ne soumets jamais le formulaire. / Builds a prefilled text alert form link; the person enters their own number and consents. Never submit it.

入力スキーマ

{
  "type": "object",
  "properties": {
    "ville": {
      "type": "string",
      "enum": [
        "montreal",
        "quebec",
        "sherbrooke",
        "gatineau",
        "rive-nord",
        "rive-sud"
      ],
      "description": "La ville. / The city."
    },
    "service": {
      "type": "string",
      "enum": [
        "coiffure.coupe_femme",
        "coiffure.coupe_homme",
        "coiffure.coloration",
        "coiffure.mise_en_plis",
        "coiffure.barbe",
        "ongles.gel",
        "ongles.manucure",
        "ongles.remplissage",
        "ongles.pedicure",
        "cils.classique",
        "cils.hybride",
        "cils.volume",
        "cils.remplissage",
        "cils.rehaussement",
        "sourcils.restructuration",
        "sourcils.teinture",
        "sourcils.laminage",
        "sourcils.fil",
        "esthetique.soin_visage",
        "esthetique.cire",
        "esthetique.bresilienne",
        "massotherapie.suedois",
        "massotherapie.therapeutique",
        "massotherapie.tissus_profonds",
        "massotherapie.prenatal",
        "tatouage.flash",
        "tatouage.petit",
        "tatouage.retouche",
        "physiotherapie.evaluation",
        "physiotherapie.traitement",
        "osteopathie.traitement",
        "kinesiologie.seance",
        "therapie_sport.traitement",
        "chiropratique.traitement",
        "acupuncture.seance"
      ],
      "description": "Le code du service, par exemple ongles.gel (voir categories_et_villes). / Service code."
    },
    "quartier": {
      "type": "string",
      "minLength": 2,
      "maxLength": 60,
      "description": "Le quartier de la personne. / Their neighbourhood."
    },
    "jour": {
      "type": "string",
      "pattern": "^(aujourdhui|demain|\\d{4}-\\d{2}-\\d{2})$",
      "description": "aujourdhui, demain ou AAAA-MM-JJ (heure de Montréal). / today, tomorrow or YYYY-MM-DD."
    },
    "moment": {
      "type": "string",
      "enum": [
        "am",
        "pm",
        "soir"
      ],
      "description": "am : avant midi ; pm : de midi à 17 h ; soir : après 17 h. / morning, afternoon, evening."
    },
    "langue": {
      "type": "string",
      "enum": [
        "fr",
        "en"
      ],
      "default": "fr",
      "description": "Langue du formulaire. / Form language."
    }
  },
  "required": [
    "ville"
  ],
  "additionalProperties": false
}
🟢preparer_demande(commerce, heures, service, lieu, lat, ...)

Bâtit le lien de la demande chez un commerce sans réservation en ligne (sur_demande de chercher_places), avec les heures, le service et le lieu de la personne déjà choisis. La personne l'ouvre, vérifie, entre elle-même son prénom et son cellulaire et consent ; Dispolà appelle le commerce et lui texte l'heure confirmée. Ne soumets jamais le formulaire. / Builds the prefilled request link for a business without online booking, with the person's times, service and location filled in. The person opens it, enters their own name and number and consents; Dispolà calls the business. Never submit it.

入力スキーマ

{
  "type": "object",
  "properties": {
    "commerce": {
      "type": "string",
      "pattern": "^[a-z0-9-]{1,120}$",
      "description": "Le code du commerce (champ commerce de sur_demande). / Business code (commerce field of sur_demande)."
    },
    "heures": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(,\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}){0,11}$",
      "description": "Les heures qui vont à la personne, prises dans moments de sur_demande, séparées par des virgules : au moins 2, en cas que la première soit prise. Ex. 2026-10-29T14:00,2026-10-29T15:00. / Times from sur_demande moments, comma-separated, at least 2."
    },
    "service": {
      "type": "string",
      "pattern": "^[a-z0-9-]{1,40}$",
      "description": "Le service précis (champ services de sur_demande, ex. coupe-courts). / Precise service code."
    },
    "lieu": {
      "type": "string",
      "minLength": 2,
      "maxLength": 60,
      "description": "Où est la personne : code postal ou quartier, pour un commerce de rechange proche d’elle. / Postal code or neighbourhood."
    },
    "lat": {
      "type": "number",
      "minimum": -90,
      "maximum": 90,
      "description": "Latitude de la personne, avec lng (arrondie à 100 m). / Latitude, with lng."
    },
    "lng": {
      "type": "number",
      "minimum": -180,
      "maximum": 180,
      "description": "Longitude, avec lat. / Longitude, with lat."
    },
    "langue": {
      "type": "string",
      "enum": [
        "fr",
        "en"
      ],
      "default": "fr",
      "description": "Langue du formulaire. / Form language."
    }
  },
  "required": [
    "commerce"
  ],
  "additionalProperties": false
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 4 件