# Veterical Vet Clinic (remote · mcp.veterical.com)

See your vet clinic's free slots, vets, service prices, payments and how busy each day is.

- Trust score: 82/100 (high trust)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-01

## Components

- remote · `mcp.veterical.com`: 82/100 (this document), [markdown](https://verifymcp.io/servers/com-veterical-veterical/mcp.md), [page](https://verifymcp.io/servers/com-veterical-veterical/mcp)

## Channel facts

- Endpoint: `https://mcp.veterical.com/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.1.2`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-01.

- **Endpoint Security**: 92/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation is enforced on tool calls, advertised via RFC 9728 protected-resource metadata. Discovery is public, which costs nothing: no tool can be invoked without a token.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
  - The authorisation server supports Client ID Metadata Documents, the current MCP client-registration mechanism.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 79/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 2904 tokens (~207/item across 14 items; 10 tools + 4 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 20/100
  - Stability observed for 6 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 10 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 12 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a current MCP spec version (2026-07-28).
  - Supports UI / widget rendering.

## Install

### How do I install the Veterical Vet Clinic MCP server?

Veterical Vet Clinic is a hosted endpoint at https://mcp.veterical.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http com-veterical-veterical 'https://mcp.veterical.com/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "com-veterical-veterical": {
      "url": "https://mcp.veterical.com/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "com-veterical-veterical": {
      "type": "http",
      "url": "https://mcp.veterical.com/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.com-veterical-veterical]
url = "https://mcp.veterical.com/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-veterical-veterical": {
      "type": "remote",
      "url": "https://mcp.veterical.com/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-veterical-veterical --url 'https://mcp.veterical.com/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-veterical-veterical:
    url: "https://mcp.veterical.com/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "com-veterical-veterical": {
      "Transport": "http",
      "Url": "https://mcp.veterical.com/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add com-veterical-veterical -t streamable-http -u 'https://mcp.veterical.com/mcp'
```

### Other

```json
{
  "mcpServers": {
    "com-veterical-veterical": {
      "type": "http",
      "url": "https://mcp.veterical.com/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-01 (score 82, +1)

No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-29 (score 81, +1)

No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-28 (score 80, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-09-27 (score 80, +1)

- [security] The server rewrote its instructions, which are the text every model session reads
- [security] Tool “get_clinic” rewrote its description, which is the text the model reads
- [security] Tool “get_clinic_availability” rewrote its description, which is the text the model reads
- [security] Tool “get_clinic_schedule_summary” rewrote its description, which is the text the model reads
- [security] Tool “list_calendar_events” rewrote its description, which is the text the model reads
- [security] Tool “list_clinic_providers” rewrote its description, which is the text the model reads
- [security] Tool “list_clinics” rewrote its description, which is the text the model reads
- [security] Tool “list_payments” rewrote its description, which is the text the model reads
- [security] Tool “list_procedures” rewrote its description, which is the text the model reads
- [security] Tool “list_subscriptions” rewrote its description, which is the text the model reads
- [security] Tool “show_clinic_overview” rewrote its description, which is the text the model reads
- [functional regression] Schema quality: 176 → 212
- [functional improvement] Tool coverage: 80% → 100%
- [functional] Server version: 0.1.1 → 0.1.2
- [cosmetic] “get_clinic” reworded the description of “clinicId”
- [cosmetic] “get_clinic_availability” reworded the description of “clinicId”
- [cosmetic] “get_clinic_schedule_summary” reworded the description of “clinicId”
- [cosmetic] “get_clinic_schedule_summary” reworded the description of “endTime”
- [cosmetic] “get_clinic_schedule_summary” reworded the description of “startTime”
- [cosmetic] “list_calendar_events” reworded the description of “clinicId”
- [cosmetic] “list_calendar_events” reworded the description of “cursor”
- [cosmetic] “list_calendar_events” reworded the description of “endTime”
- [cosmetic] “list_calendar_events” reworded the description of “limit”
- [cosmetic] “list_calendar_events” reworded the description of “startTime”
- [cosmetic] “list_clinic_providers” reworded the description of “clinicId”
- [cosmetic] “list_clinics” reworded the description of “cursor”
- [cosmetic] “list_clinics” reworded the description of “limit”
- [cosmetic] “list_payments” reworded the description of “clinicId”
- [cosmetic] “list_payments” reworded the description of “cursor”
- [cosmetic] “list_payments” reworded the description of “endTime”
- [cosmetic] “list_payments” reworded the description of “limit”
- [cosmetic] “list_payments” reworded the description of “startTime”
- [cosmetic] “list_procedures” reworded the description of “clinicId”
- [cosmetic] “list_procedures” reworded the description of “cursor”
- [cosmetic] “list_procedures” reworded the description of “limit”
- [cosmetic] “list_subscriptions” reworded the description of “clinicId”
- [cosmetic] “list_subscriptions” reworded the description of “cursor”
- [cosmetic] “list_subscriptions” reworded the description of “limit”
- [cosmetic] “show_clinic_overview” reworded the description of “clinicId”
- [cosmetic] Tool “get_clinic” changed its title: Get clinic → Get vet clinic details
- [cosmetic] Tool “get_clinic_availability” changed its title: Get clinic bookable availability → Find free appointment slots
- [cosmetic] Tool “get_clinic_schedule_summary” changed its title: Get clinic schedule summary → Count appointments per day
- [cosmetic] Tool “list_calendar_events” changed its title: List calendar closures and overrides → List closures, holidays and blocked time
- [cosmetic] Tool “list_clinic_providers” changed its title: List clinic providers → List bookable vets and staff
- [cosmetic] Tool “list_clinics” changed its title: List clinics → List your vet clinics
- [cosmetic] Tool “list_payments” changed its title: Summarize payment totals → Summarize payments received
- [cosmetic] Tool “list_procedures” changed its title: List numeric procedure catalog metadata → Review treatment catalog prices
- [cosmetic] Tool “list_subscriptions” changed its title: List subscription entitlements → Check Veterical plan and limits
- [cosmetic] Tool “show_clinic_overview” changed its title: Show Veterical clinic overview → Show vet clinic overview

### 2026-09-26 (score 79, 0)

- [functional improvement] Stability: unverified → 0.03

### 2026-09-25 (score 79)

First indexed and scored.

## MCP tools (10)

### `list_clinics` (~109 tokens)

List your vet clinics

Use this when someone asks which vet clinics they manage in Veterical, or a clinic's id is needed. Returns each clinic's id, name, currency, default language and timezone, 20 per page by default. Not for finding a pet, owner or appointment.

Input parameters:

- `cursor` (string): The nextCursor of the previous page of this listing; absent for the first page
- `limit` (integer): Clinics per page, from 1 to 100; defaults to 20

Output parameters:

- `clinics` (array): Clinics in the signed-in organization, administrative metadata only. Animal, owner, appointment and clinical records are never returned.
- `nextCursor`: Cursor for the next page; null on the last page

### `get_clinic` (~79 tokens)

Get vet clinic details

Use this when someone asks about one vet clinic's basic settings, such as its currency, language or timezone. 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.

Input parameters:

- `clinicId` (string, required): Clinic id: 24 lowercase hexadecimal characters

Output parameters:

- `clinic`: Administrative clinic metadata only; opening hours, staff, animal, owner and appointment data are not included. Null when not found.
- `status` (string)

### `get_clinic_availability` (~100 tokens)

Find free appointment slots

Use this when someone asks when their vet clinic has free appointment slots or openings. 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.

Input parameters:

- `clinicId` (string, required): Clinic id: 24 lowercase hexadecimal characters

Output parameters:

- `days` (array): One row per day that has open online-booking slots, in date order. Unassigned capacity only; appointments, animals, owners, staff and clinical data are never included.
- `slotCount` (integer)
- `slotCountIsLowerBound` (boolean): True when more open slots exist beyond the 14-day, 100-slot cap
- `status` (string)

### `list_clinic_providers` (~74 tokens)

List bookable vets and staff

Use this when someone asks which vets, nurses or assistants can be booked at their clinic. Returns up to 100 staff display names for one clinic (no contact details, roles or pet data). Not for staff days off or vacations.

Input parameters:

- `clinicId` (string, required): Clinic id: 24 lowercase hexadecimal characters

Output parameters:

- `providerCount` (integer)
- `providerCountIsLowerBound` (boolean)
- `providers` (array): Display names of staff with a doctor, nurse or assistant role. Staff identifiers, contact details, roles, colors, avatars and all animal or clinical data are excluded.
- `status` (string)

### `get_clinic_schedule_summary` (~154 tokens)

Count appointments per day

Use this when someone asks how busy their vet clinic is or how many appointments fall on each day. 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.

Input parameters:

- `clinicId` (string, required): Clinic id: 24 lowercase hexadecimal characters
- `endTime`: 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
- `startTime` (string): Start of the range as an ISO 8601 date-time; defaults to now

Output parameters:

- `appointmentCount` (integer)
- `appointmentCountIsLowerBound` (boolean): True when more than 100 appointments fall in the range
- `days` (array): One row per UTC day that has appointments, canceled ones included. Aggregate counts only: appointment identifiers and times, animals, owners, diagnoses, treatments, reminders and notes are never retu…
- `range` (object)

### `list_calendar_events` (~178 tokens)

List closures, holidays and blocked time

Use this when someone asks when their vet clinic is closed or has time blocked for holidays, vacations, sick days, meetings or courses. 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.

Input parameters:

- `clinicId` (string): Only this clinic (24 lowercase hexadecimal characters); every clinic when absent
- `cursor` (string): The nextCursor of the previous page with the same filters; absent for the first page
- `endTime`: Only blocks ending before this ISO 8601 date-time
- `limit` (integer): Blocks per page, from 1 to 100; defaults to 20
- `startTime` (string): Only blocks starting at or after this ISO 8601 date-time

Output parameters:

- `calendarEvents` (array): Non-appointment calendar blocks, earliest first. Event identifiers, clinic or staff references, titles, notes, owner or animal linkage and clinical fields are never returned.
- `nextCursor`: Cursor for the next page; null on the last page

### `list_procedures` (~132 tokens)

Review treatment catalog prices

Use this when someone asks about the prices set in their vet clinic's treatment and service catalog, such as the lowest, highest or most recently changed price. Returns price, duration where recorded and last edit time per catalog row, without treatment names. Not for the price of a specific named treatment.

Input parameters:

- `clinicId` (string, required): Clinic id: 24 lowercase hexadecimal characters
- `cursor` (string): The nextCursor of the previous page with the same filters; absent for the first page
- `limit` (integer): Catalog rows per page, from 1 to 100; defaults to 50

Output parameters:

- `nextCursor`: Cursor for the next page; null on the last page
- `procedures` (array): Numeric catalog rows, most recently edited first. Names, descriptions, identifiers, patient-linked treatments, diagnoses, notes, reminders and every other free-text or clinical field are excluded.

### `list_payments` (~186 tokens)

Summarize payments received

Use this when someone asks how much their vet clinic has taken in, or how many payments succeeded, failed or were canceled. 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.

Input parameters:

- `clinicId` (string): Only this clinic (24 lowercase hexadecimal characters); every clinic when absent
- `cursor` (string): The nextCursor of the previous page with the same filters; absent for the first page
- `endTime`: Only payments dated before this ISO 8601 date-time
- `limit` (integer): Payments to summarize in this page, from 1 to 100; defaults to 20
- `startTime` (string): Only payments dated at or after this ISO 8601 date-time

Output parameters:

- `moreRecordsAvailable` (boolean): True when older payments exist beyond this page
- `nextCursor`: Cursor for the next page; null on the last page
- `recordsSummarized` (integer): How many payment records this page summarized
- `totals` (array): One row per currency and status within this page only. Transaction identifiers and dates, animal or owner linkage, line items, discounts, payment methods, card or bank data and processor identifiers…

### `list_subscriptions` (~139 tokens)

Check Veterical plan and limits

Use this when someone asks which Veterical plan their clinic is on, whether it is active, or how many users, seats, patients, appointments or reminders it allows. Returns plan name, status, billing frequency and plan caps per subscription; caps are limits, not usage. Not for invoices or amounts billed.

Input parameters:

- `clinicId` (string): Only this clinic (24 lowercase hexadecimal characters); every clinic when absent
- `cursor` (string): The nextCursor of the previous page with the same filters; absent for the first page
- `limit` (integer): Subscriptions per page, from 1 to 100; defaults to 20

Output parameters:

- `nextCursor`: Cursor for the next page; null on the last page
- `subscriptions` (array): Plan entitlements, newest first. Subscription or customer ids, billed amounts, payment methods, invoices and every processor field are excluded.

### `show_clinic_overview` (~95 tokens)

Show vet clinic overview

Use this when someone wants a quick overview or dashboard of one vet clinic. 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.

Input parameters:

- `clinicId` (string, required): Clinic id: 24 lowercase hexadecimal characters

Output parameters:

- `appointmentCount` (integer)
- `appointmentCountIsLowerBound` (boolean)
- `availabilityDays` (array)
- `availableDayCount` (integer)
- `availableSlotCount` (integer)
- `availableSlotCountIsLowerBound` (boolean)
- `clinic`: Administrative clinic metadata; null when the clinic was not found. The overview never includes individual appointments, animal or owner records, diagnoses, treatments, reminders, notes, transaction…
- `procedureCount` (integer)
- `procedureCountIsLowerBound` (boolean)
- `procedures` (array)
- `providerCount` (integer)
- `providerCountIsLowerBound` (boolean)
- `scheduleDays` (array)
- `scheduleRange` (object)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-veterical-veterical/mcp#diagnostics

## Score history

- 2026-10-01: 82
- 2026-09-30: 81
- 2026-09-29: 81
- 2026-09-28: 80
- 2026-09-27: 80
- 2026-09-26: 79
- 2026-09-25: 79

## Common questions

### What is the Veterical Vet Clinic MCP server?

Veterical Vet Clinic is an MCP server listed in the public MCP registry as com.veterical/veterical. See your vet clinic's free slots, vets, service prices, payments and how busy each day is. This page covers its hosted endpoint (https://mcp.veterical.com/mcp).

### Is the Veterical Vet Clinic MCP server safe to use?

Veterical Vet Clinic scores 82 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Veterical Vet Clinic MCP server expose?

Veterical Vet Clinic exposes 10 tools: list_clinics, get_clinic, get_clinic_availability, list_clinic_providers, get_clinic_schedule_summary, and 5 more. Their descriptions and schemas cost roughly 1,246 tokens of context every time the server is loaded.

### Does the Veterical Vet Clinic MCP server require authentication?

Yes. Veterical Vet Clinic asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

### Is the Veterical Vet Clinic MCP server still maintained?

Veterical Vet Clinic is still listed as active in the MCP registry. We last reached this channel on 1 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://mcp.veterical.com/mcp
- Website: https://www.veterical.com/developers/#mcp
- Changelog RSS feed: https://verifymcp.io/servers/com-veterical-veterical/mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-veterical-veterical/mcp.json
- HTML version of this page: https://verifymcp.io/servers/com-veterical-veterical/mcp
