See your vet clinic's free slots, vets, service prices, payments and how busy each day is.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Use this when the user wants to read the name, currency, language, timezone and edit time of one Veterical clinic selected by its identifier. Returns the clinic's name, currency, default language, timezone and last edit time; an id outside the organization returns not-found. Not for free appointment slots.
Clinic id: 24 lowercase hexadecimal characters
Use this when the user wants to read the name, currency, language, timezone and edit time of one Veterical clinic selected by its identifier. Returns the clinic's name, currency, default language, timezone and last edit time; an id outside the organization returns not-found. Not for free appointment slots.
| Argument | Type | Description |
|---|---|---|
| clinicId* | string | Clinic id: 24 lowercase hexadecimal characters |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"clinicId"
],
"properties": {
"clinicId": {
"type": "string",
"pattern": "^[0-9a-f]{24}$",
"description": "Clinic id: 24 lowercase hexadecimal characters"
}
},
"additionalProperties": false
}Use this when the user wants to summarize unassigned online-booking capacity for one Veterical clinic as daily slot counts and first/last slot times. Returns the open online-booking slots per day for one clinic: how many, plus the first start and last end time. Covers the next days that have openings, up to 14 days and 100 slots (no pet, owner or medical data). Not for booking an appointment.
| Argument | Type | Description |
|---|---|---|
| clinicId* | string | Clinic id: 24 lowercase hexadecimal characters |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"clinicId"
],
"properties": {
"clinicId": {
"type": "string",
"pattern": "^[0-9a-f]{24}$",
"description": "Clinic id: 24 lowercase hexadecimal characters"
}
},
"additionalProperties": false
}Use this when the user wants to count scheduled records by UTC day for one Veterical clinic and a bounded date range, including canceled records. Returns appointment counts per UTC day for one clinic, canceled ones included, for the next 7 days by default and at most 31 days; counting stops at 100. Not for seeing individual appointments, pets or owners.
| Argument | Type | Description |
|---|---|---|
| endTime | any | End of the range as an ISO 8601 date-time, after startTime and at most 31 days later; defaults to 7 days after the start |
| clinicId* | string | Clinic id: 24 lowercase hexadecimal characters |
| startTime | string | Start of the range as an ISO 8601 date-time; defaults to now |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"clinicId"
],
"properties": {
"endTime": {
"$ref": "#/properties/startTime",
"description": "End of the range as an ISO 8601 date-time, after startTime and at most 31 days later; defaults to 7 days after the start"
},
"clinicId": {
"type": "string",
"pattern": "^[0-9a-f]{24}$",
"description": "Clinic id: 24 lowercase hexadecimal characters"
},
"startTime": {
"type": "string",
"maxLength": 64,
"description": "Start of the range as an ISO 8601 date-time; defaults to now"
}
},
"additionalProperties": false
}Use this when the user wants to list non-appointment calendar blocks and additional opening periods for a Veterical clinic. Returns each block or extra opening with start, end, all-day flag, scope (clinic, staff or room) and type, without titles, notes or names. Not for appointments.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Blocks per page, from 1 to 100; defaults to 20 |
| cursor | string | The nextCursor of the previous page with the same filters; absent for the first page |
| endTime | any | Only blocks ending before this ISO 8601 date-time |
| clinicId | string | Only this clinic (24 lowercase hexadecimal characters); every clinic when absent |
| startTime | string | Only blocks starting at or after this ISO 8601 date-time |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"description": "Blocks per page, from 1 to 100; defaults to 20",
"exclusiveMinimum": 0
},
"cursor": {
"type": "string",
"maxLength": 4096,
"description": "The nextCursor of the previous page with the same filters; absent for the first page"
},
"endTime": {
"$ref": "#/properties/startTime",
"description": "Only blocks ending before this ISO 8601 date-time"
},
"clinicId": {
"type": "string",
"pattern": "^[0-9a-f]{24}$",
"description": "Only this clinic (24 lowercase hexadecimal characters); every clinic when absent"
},
"startTime": {
"type": "string",
"maxLength": 64,
"description": "Only blocks starting at or after this ISO 8601 date-time"
}
},
"additionalProperties": false
}Use this when the user wants to list the display names of staff offered by one Veterical clinic for online booking. Returns up to 100 staff display names for one clinic (no contact details, roles or pet data). Not for staff days off or vacations.
| Argument | Type | Description |
|---|---|---|
| clinicId* | string | Clinic id: 24 lowercase hexadecimal characters |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"clinicId"
],
"properties": {
"clinicId": {
"type": "string",
"pattern": "^[0-9a-f]{24}$",
"description": "Clinic id: 24 lowercase hexadecimal characters"
}
},
"additionalProperties": false
}Use this when the user wants to list veterinary clinics accessible to the connected Veterical account and retrieve their identifiers for subsequent administrative reads. Returns each clinic's id, name, currency, default language and timezone, 20 per page by default. Not for finding a pet, owner or appointment.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Clinics per page, from 1 to 100; defaults to 20 |
| cursor | string | The nextCursor of the previous page of this listing; absent for the first page |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"description": "Clinics per page, from 1 to 100; defaults to 20",
"exclusiveMinimum": 0
},
"cursor": {
"type": "string",
"maxLength": 4096,
"description": "The nextCursor of the previous page of this listing; absent for the first page"
}
},
"additionalProperties": false
}Use this when the user wants to aggregate one bounded page of recorded Veterical payments by currency and status; this is not a full revenue or settlement report. Returns totals and counts by currency and status for one page of payments, newest first (20 by default), with a cursor for the rest (no client, pet or card data). Not for refunds or charging a client.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Payments to summarize in this page, from 1 to 100; defaults to 20 |
| cursor | string | The nextCursor of the previous page with the same filters; absent for the first page |
| endTime | any | Only payments dated before this ISO 8601 date-time |
| clinicId | string | Only this clinic (24 lowercase hexadecimal characters); every clinic when absent |
| startTime | string | Only payments dated at or after this ISO 8601 date-time |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"description": "Payments to summarize in this page, from 1 to 100; defaults to 20",
"exclusiveMinimum": 0
},
"cursor": {
"type": "string",
"maxLength": 4096,
"description": "The nextCursor of the previous page with the same filters; absent for the first page"
},
"endTime": {
"$ref": "#/properties/startTime",
"description": "Only payments dated before this ISO 8601 date-time"
},
"clinicId": {
"type": "string",
"pattern": "^[0-9a-f]{24}$",
"description": "Only this clinic (24 lowercase hexadecimal characters); every clinic when absent"
},
"startTime": {
"type": "string",
"maxLength": 64,
"description": "Only payments dated at or after this ISO 8601 date-time"
}
},
"additionalProperties": false
}Use this when the user wants to read anonymous numeric catalog rows from a Veterical clinic to inspect configured prices, durations and edit times. Returns price, duration where recorded and last edit time per catalog row, without treatment names. Not for the price of a specific named treatment.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Catalog rows per page, from 1 to 100; defaults to 50 |
| cursor | string | The nextCursor of the previous page with the same filters; absent for the first page |
| clinicId* | string | Clinic id: 24 lowercase hexadecimal characters |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"clinicId"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"description": "Catalog rows per page, from 1 to 100; defaults to 50",
"exclusiveMinimum": 0
},
"cursor": {
"type": "string",
"maxLength": 4096,
"description": "The nextCursor of the previous page with the same filters; absent for the first page"
},
"clinicId": {
"type": "string",
"pattern": "^[0-9a-f]{24}$",
"description": "Clinic id: 24 lowercase hexadecimal characters"
}
},
"additionalProperties": false
}Use this when the user wants to read the subscription plan, status, billing frequency and configured capacity limits for a Veterical clinic. Returns plan name, status, billing frequency and plan caps per subscription; caps are limits, not usage. Not for invoices or amounts billed.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Subscriptions per page, from 1 to 100; defaults to 20 |
| cursor | string | The nextCursor of the previous page with the same filters; absent for the first page |
| clinicId | string | Only this clinic (24 lowercase hexadecimal characters); every clinic when absent |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"description": "Subscriptions per page, from 1 to 100; defaults to 20",
"exclusiveMinimum": 0
},
"cursor": {
"type": "string",
"maxLength": 4096,
"description": "The nextCursor of the previous page with the same filters; absent for the first page"
},
"clinicId": {
"type": "string",
"pattern": "^[0-9a-f]{24}$",
"description": "Only this clinic (24 lowercase hexadecimal characters); every clinic when absent"
}
},
"additionalProperties": false
}Use this when the user wants to open the Veterical clinic-selection sidebar when the user requests an interactive clinic browser. Returns up to 100 clinics to start from (no pet, owner, appointment or clinical data). Not for booking appointments, editing records or medical decisions.
No arguments.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {}
}Use this when the user wants to render a read-only administrative overview for one Veterical clinic selected by its identifier. Returns an overview card with the clinic's details, appointment counts for the next 7 days, how many staff can be booked, open online-booking slots and up to 12 catalog prices (no pet, owner or medical data). Not for a single appointment.
| Argument | Type | Description |
|---|---|---|
| clinicId* | string | Clinic id: 24 lowercase hexadecimal characters |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"clinicId"
],
"properties": {
"clinicId": {
"type": "string",
"pattern": "^[0-9a-f]{24}$",
"description": "Clinic id: 24 lowercase hexadecimal characters"
}
}
}