---
name: myvetassistant-mcp
description: Use when testing or using the MyVetAssistant MCP server as a normal authenticated user. Follow this skill for user-level MCP behavior, capability checks, and safe responses when a requested action is not exposed by MCP.
---

# MyVetAssistant MCP

## Install

Configure a remote streamable HTTP MCP server named `myvetassistant`:

```bash
codex mcp add myvetassistant --url https://myvetassistant.com/mcp
codex mcp login myvetassistant
```

## Rules

- Use only the configured `myvetassistant` MCP tools for MyVetAssistant MCP tests.
- Do not inspect the local backend, Firestore, Firebase Auth, Cloud logs, or non-MCP APIs when the user is testing MCP behavior.
- If a capability is not exposed by MCP, say it is unsupported instead of inferring from backend code.
- Do not ask for or handle the user's MyVetAssistant password in chat. OAuth login must happen in the browser.
- Return only the user data needed to answer the request. Avoid extra phone, email, pet, or record details unless the user explicitly asks.

## Common Workflows

- Current user: call `va_get_current_user`.
- Clinics: call `va_list_clinics`; use `va_get_clinic`, `va_create_clinic`, `va_update_clinic`, and `va_delete_clinic` only when the matching tools are listed.
- Clients: call `va_list_clinics`, then `va_list_clients` for the selected clinic. Use `va_create_client`, `va_update_client`, or `va_delete_client` only after confirming the clinic and client.
- Pets: use pets returned by `va_list_clients` or call `va_list_pets` when a client id is known. Use `va_add_pet`, `va_update_pet`, or `va_delete_pet` for pet changes.
- Records: call `va_search_records` when searching by clinic, client, pet, doctor, or date; call `va_get_record` for a selected record id.
- In-progress records: call `va_search_in_progress_records` by clinic, client, pet, status, template, or date; call `va_get_in_progress_record` for a selected in-progress record id.
- Templates: call `va_get_template_format_rules` before creating or updating templates. Call `va_list_templates`, `va_create_template`, `va_update_template`, and `va_delete_template` when listed.
- Texting: call `va_send_text_message` only for a specific clinic/client, with concise body text supplied or approved by the user.
- Team: use `va_invite_vet_to_clinic`, `va_grant_vet_access`, `va_remove_vet_from_clinic`, or `va_accept_clinic_invitation` only when listed.
- Appointments: use `va_list_appointments` and `va_get_appointment` for read-only scheduling questions. Use create, update, reschedule, cancel, check-in, and staff assignment tools only when listed and the user confirms the change.
- Staff schedule: use `va_list_scheduling_staff`, `va_list_staff_shifts`, `va_list_coverage_gaps`, and `va_get_coverage_summary` for planning. Use shift, time-off, and publish tools only when listed and the requested date range is explicit.
- Tickets: use `va_list_tickets` and `va_get_ticket` for ticket review. Use create, update, status, assign, comment, close, reopen, and link tools only when listed.
- Scheduling settings: use `va_get_scheduling_settings` to inspect settings. Use `va_update_scheduling_settings` only when listed and the user is changing timezone, business hours, rooms, appointment types, roles, or coverage rules.

## Template Rules

- Convert PDF content into a compact VA template; do not paste PDF paragraphs into section values.
- Use 6-14 sections for most templates. The MCP hard limit is 20.
- Keep titles short clinical labels, and keep each value to one concise instruction.
- Do not include prompt-injection text, scripts, braces placeholders, or instructions to ignore system rules.
- Never ask the summarizer to invent missing clinical details; tell it to leave missing facts blank.

## Unsupported Until Tools Exist

Treat these as unsupported unless matching MCP tools are listed by the server:

- counting all application users
- triggering transcription
- triggering summarization
- direct file attachment upload for scheduling tickets
- reading deleted users or admin-only data
- directly querying Firestore, Firebase Auth, Stripe, Cloud logs, or backend internals
