ezyVet MCP Server
by NoBanks
README.md
markdown
# ezyVet MCP Server
An MCP (Model Context Protocol) server for ezyVet veterinary practice management API v1.
## Overview
This MCP server provides AI agents with 8 tools to read and manage animals, contacts, appointments, consults, invoices, and products across an ezyVet veterinary practice deployment.
## Features
- **8 MCP Tools** for veterinary practice management
- **OAuth 2.0 Client Credentials** authentication with auto token renewal
- **Async HTTP** via httpx for efficient API calls
- **Pydantic v2** schemas for type-safe inputs/outputs
- **Write-gated** appointment creation (requires env flag)
## Tools
| Tool | Endpoint | Description |
|------|----------|-------------|
| `list_animals` | GET /animal | List animals with pagination |
| `get_animal` | GET /animal/{id} | Get single animal by ID |
| `list_contacts` | GET /contact | List contacts (pet owners/clients) |
| `list_appointments` | GET /appointment | List appointments with date filtering |
| `create_appointment` | POST /appointment | Create new appointment (write-gated) |
| `list_consults` | GET /consult | List clinical consult records |
| `list_invoices` | GET /invoice | List invoices |
| `list_products` | GET /product | List products |
## Installation
TDQS
C2.8/5.0
Scored across 8 tools
Disambiguation5/5
Each tool targets a distinct entity (appointments, animals, consults, contacts, invoices, products) with clear read/write boundaries, so no ambiguity.
Naming Consistency5/5
All tool names follow a consistent verb_noun pattern using snake_case (e.g., create_appointment, list_animals), making the set predictable.
Tool Count5/5
With 8 tools covering core entities in a veterinary practice system, the count is well-scoped and neither sparse nor excessive.
Completeness2/5
The tool set is read-heavy and lacks update/delete operations for most entities, and only appointments have a create function, leaving significant lifecycle gaps.
Maintenance
ActivityInactive
ResponsivenessNo issues