DodoDentist Dental Clinic

See your dental clinic's free slots, dentists, treatment prices and how busy each day is.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
100%
Integridad del esquema
92%
Calidad de los nombres
100%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~3,301Tokens (definiciones de herramientas)
~3.7 KBTamaño de respuesta típico
Impacto significativo en la atención (2.58% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "dododentist": {
      "url": "https://mcp.dododentist.com/mcp"
    }
  }
}

Puntos de conexión remotos

https://mcp.dododentist.com/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (8)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢list_clinics(limit, cursor)

List the authenticated user's DodoDentist clinics with bounded, cursor-based pagination. Only non-clinical clinic metadata is returned.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    },
    "cursor": {
      "type": "string",
      "maxLength": 4096,
      "description": "Opaque cursor from a prior result"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "clinics": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^[0-9a-f]{24}$"
              },
              {
                "type": "null"
              }
            ]
          },
          "name": {
            "type": "string",
            "maxLength": 200
          },
          "currency": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^[A-Za-z]{3}$"
              },
              {
                "type": "null"
              }
            ]
          },
          "defaultLocale": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^[a-zA-Z]{2,3}([_-][a-zA-Z0-9]{2,8}){0,2}$"
              },
              {
                "type": "null"
              }
            ]
          },
          "timezone": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 64
              },
              {
                "type": "null"
              }
            ]
          },
          "lastEditTime": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 32
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "id",
          "name",
          "currency",
          "defaultLocale",
          "timezone",
          "lastEditTime"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "nextCursor": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 4096
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "clinics",
    "nextCursor"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_clinic(clinicId)

Fetch safe metadata for one tenant-owned DodoDentist clinic. Only non-clinical clinic metadata is returned.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "clinicId": {
      "type": "string",
      "pattern": "^[0-9a-f]{24}$",
      "description": "Clinic id (24-character hex)"
    }
  },
  "required": [
    "clinicId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "found",
        "not-found"
      ]
    },
    "clinic": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "id": {
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^[0-9a-f]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "name": {
              "type": "string",
              "maxLength": 200
            },
            "currency": {
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Za-z]{3}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "defaultLocale": {
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^[a-zA-Z]{2,3}([_-][a-zA-Z0-9]{2,8}){0,2}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "timezone": {
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 64
                },
                {
                  "type": "null"
                }
              ]
            },
            "lastEditTime": {
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 32
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "required": [
            "id",
            "name",
            "currency",
            "defaultLocale",
            "timezone",
            "lastEditTime"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "status",
    "clinic"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_clinic_availability(clinicId)

List bookable appointment slots for one tenant-owned DodoDentist clinic. Only day, slot start, and slot end are returned — never patient, provider, or clinical data.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "clinicId": {
      "type": "string",
      "pattern": "^[0-9a-f]{24}$",
      "description": "Clinic id (24-character hex)"
    }
  },
  "required": [
    "clinicId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "days": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "day": {
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
          },
          "slots": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "startTime": {
                  "type": "string",
                  "maxLength": 32
                },
                "endTime": {
                  "type": "string",
                  "maxLength": 32
                }
              },
              "required": [
                "startTime",
                "endTime"
              ],
              "additionalProperties": false
            },
            "maxItems": 100
          }
        },
        "required": [
          "day",
          "slots"
        ],
        "additionalProperties": false
      },
      "maxItems": 7
    }
  },
  "required": [
    "days"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_clinic_providers(clinicId)

List display names for the bookable providers of one tenant-owned DodoDentist clinic. Contact details, role records, identifiers, and clinical data are never returned.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "clinicId": {
      "type": "string",
      "pattern": "^[0-9a-f]{24}$",
      "description": "Clinic id (24-character hex)"
    }
  },
  "required": [
    "clinicId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "providers": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "displayName": {
            "type": "string",
            "maxLength": 200
          }
        },
        "required": [
          "displayName"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    }
  },
  "required": [
    "providers"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_clinic_schedule_summary(clinicId, startTime, endTime)

Count scheduled records by UTC day for one tenant-owned DodoDentist clinic over a range of at most 31 days. Returns aggregate administrative counts only—never appointment identifiers or times, patient information, procedures, diagnoses, notes, or other clinical data.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "clinicId": {
      "type": "string",
      "pattern": "^[0-9a-f]{24}$",
      "description": "Clinic id (24-character hex)"
    },
    "startTime": {
      "type": "string",
      "maxLength": 32,
      "description": "Range start as an ISO 8601 value; defaults to now"
    },
    "endTime": {
      "$ref": "#/properties/startTime",
      "description": "Range end as an ISO 8601 value; defaults to seven days later"
    }
  },
  "required": [
    "clinicId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "range": {
      "type": "object",
      "properties": {
        "startTime": {
          "type": "string",
          "maxLength": 32
        },
        "endTime": {
          "$ref": "#/properties/range/properties/startTime"
        }
      },
      "required": [
        "startTime",
        "endTime"
      ],
      "additionalProperties": false
    },
    "appointmentCount": {
      "type": "integer",
      "minimum": 0,
      "maximum": 100
    },
    "appointmentCountIsLowerBound": {
      "type": "boolean"
    },
    "days": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "day": {
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
          },
          "appointmentCount": {
            "type": "integer",
            "minimum": 0,
            "maximum": 100
          }
        },
        "required": [
          "day",
          "appointmentCount"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    }
  },
  "required": [
    "range",
    "appointmentCount",
    "appointmentCountIsLowerBound",
    "days"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_procedures(clinicId, limit, cursor)

List the authenticated user's DodoDentist procedure catalog with bounded pagination. Only catalog names, prices, and edit times are returned; patient treatment data and record identifiers are excluded.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "clinicId": {
      "type": "string",
      "pattern": "^[0-9a-f]{24}$",
      "description": "Filter by clinic id"
    },
    "limit": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    },
    "cursor": {
      "type": "string",
      "maxLength": 4096,
      "description": "Opaque cursor from a prior result"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "procedures": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 200
          },
          "price": {
            "anyOf": [
              {
                "type": "number",
                "minimum": -1000000000000000,
                "maximum": 1000000000000000
              },
              {
                "type": "null"
              }
            ]
          },
          "lastEditTime": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 32
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "name",
          "price",
          "lastEditTime"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "nextCursor": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 4096
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "procedures",
    "nextCursor"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_calendar_events(clinicId, startTime, endTime, limit, cursor)

List tenant-scoped non-appointment calendar blocks (courses, meetings, days off, closures) with bounded pagination. Event identifiers, staff references, titles, and notes are never returned.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "clinicId": {
      "type": "string",
      "pattern": "^[0-9a-f]{24}$",
      "description": "Filter by clinic id"
    },
    "startTime": {
      "type": "string",
      "maxLength": 32,
      "description": "Only events starting at or after this ISO 8601 time"
    },
    "endTime": {
      "$ref": "#/properties/startTime",
      "description": "Only events ending before this ISO 8601 time"
    },
    "limit": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    },
    "cursor": {
      "type": "string",
      "maxLength": 4096,
      "description": "Opaque cursor from a prior result"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "calendarEvents": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "startTime": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 32
              },
              {
                "type": "null"
              }
            ]
          },
          "endTime": {
            "anyOf": [
              {
                "$ref": "#/properties/calendarEvents/items/properties/startTime/anyOf/0"
              },
              {
                "type": "null"
              }
            ]
          },
          "allDay": {
            "type": "boolean"
          },
          "scope": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "SEAT",
                  "PROVIDER",
                  "CLINIC"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "effect": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "BLOCK",
                  "OPEN"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "type": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "COURSE",
                  "MEETING",
                  "VACATION",
                  "SICK",
                  "HOLIDAY",
                  "MAINTENANCE",
                  "OTHER"
                ]
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "startTime",
          "endTime",
          "allDay",
          "scope",
          "effect",
          "type"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "nextCursor": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 4096
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "calendarEvents",
    "nextCursor"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢show_clinic_overview(clinicId)

Render a bounded administrative overview for a known DodoDentist clinic. It combines safe clinic metadata, aggregate seven-day schedule counts, provider and availability counts, and procedure-catalog previews. It never returns individual appointment records, patient information, diagnoses, treatment details, notes, or other clinical data.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "clinicId": {
      "type": "string",
      "pattern": "^[0-9a-f]{24}$",
      "description": "DodoDentist clinic id to render"
    }
  },
  "required": [
    "clinicId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "clinic": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "id": {
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^[0-9a-f]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "name": {
              "type": "string",
              "maxLength": 200
            },
            "currency": {
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Za-z]{3}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "defaultLocale": {
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^[a-zA-Z]{2,3}([_-][a-zA-Z0-9]{2,8}){0,2}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "timezone": {
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 64
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "required": [
            "id",
            "name",
            "currency",
            "defaultLocale",
            "timezone"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "scheduleRange": {
      "type": "object",
      "properties": {
        "startTime": {
          "type": "string",
          "maxLength": 32
        },
        "endTime": {
          "type": "string",
          "maxLength": 32
        }
      },
      "required": [
        "startTime",
        "endTime"
      ],
      "additionalProperties": false
    },
    "appointmentCount": {
      "type": "integer",
      "minimum": 0,
      "maximum": 100
    },
    "appointmentCountIsLowerBound": {
      "type": "boolean"
    },
    "scheduleDays": {
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "day": {
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
          },
          "count": {
            "type": "integer",
            "minimum": 0,
            "maximum": 100
          }
        },
        "required": [
          "day",
          "count"
        ],
        "additionalProperties": false
      }
    },
    "procedureCount": {
      "type": "integer",
      "minimum": 0,
      "maximum": 12
    },
    "procedureCountIsLowerBound": {
      "type": "boolean"
    },
    "procedures": {
      "maxItems": 12,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 200
          },
          "price": {
            "anyOf": [
              {
                "type": "number",
                "minimum": -1000000000000000,
                "maximum": 1000000000000000
              },
              {
                "type": "null"
              }
            ]
          },
          "lastEditTime": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 32
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "name",
          "price",
          "lastEditTime"
        ],
        "additionalProperties": false
      }
    },
    "providerCount": {
      "type": "integer",
      "minimum": 0,
      "maximum": 100
    },
    "providerCountIsLowerBound": {
      "type": "boolean"
    },
    "availableDayCount": {
      "type": "integer",
      "minimum": 0,
      "maximum": 7
    },
    "availableSlotCount": {
      "type": "integer",
      "minimum": 0,
      "maximum": 100
    },
    "availabilityDays": {
      "maxItems": 7,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "day": {
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
          },
          "count": {
            "type": "integer",
            "minimum": 0,
            "maximum": 100
          }
        },
        "required": [
          "day",
          "count"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "clinic",
    "scheduleRange",
    "appointmentCount",
    "appointmentCountIsLowerBound",
    "scheduleDays",
    "procedureCount",
    "procedureCountIsLowerBound",
    "procedures",
    "providerCount",
    "providerCountIsLowerBound",
    "availableDayCount",
    "availableSlotCount",
    "availabilityDays"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada8 herramientas