Skip to main content
Glama
leomengineer

clinic-mcp-server

by leomengineer

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
CLINIC_TZNoTimezone for date windows / naive datetimesAmerica/Los_Angeles
DATABASE_URLNoShared Postgres (same as RAG app)postgresql://rag:rag@localhost:5432/rag
SIMILARITY_FLOORNoDense cosine gate for doc search0.35

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
search_clinic_docsA

Hybrid-search the clinic knowledge base (pgvector + full-text, RRF-fused).

Returns cited chunks with source filename and scores when the best dense
similarity clears the SIMILARITY_FLOOR gate. Below that floor, returns
status=no_relevant_sources with an empty chunk list — do not fabricate
an answer from weak matches.
get_patient_recordA

Look up a patient by id: name, insurance, last visit, and next confirmed appointment.

Raises a tool error if the patient does not exist or the database is down —
never returns an empty success that could be mistaken for 'no appointments'.
list_appointmentsA

List confirmed appointments between date_from and date_to (inclusive).

date_to must be on or after date_from. Empty list with status=ok means no
confirmed appointments in that window — distinct from a database failure,
which raises a tool error.
create_appointmentA

Propose a new appointment — does NOT confirm it.

Inserts a row into appointment_requests with status=pending and returns
pending_approval. A human must approve before anything lands on the
confirmed appointments calendar. Calling this twice creates two pending
requests; it never silently books.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.3/5.0

Scored across 4 tools

Disambiguation5/5

Each tool addresses a distinct task: searching knowledge base, retrieving patient record, listing appointments, and creating appointment requests. No functional overlap exists.

Naming Consistency5/5

All tools follow a consistent verb_noun snake_case pattern (search_clinic_docs, get_patient_record, list_appointments, create_appointment).

Tool Count5/5

4 tools are well-scoped for a clinic management server, covering search, patient lookup, appointment listing, and appointment creation. Neither too few nor too many.

Completeness3/5

The set covers basic read and create operations, but lacks tools for updating patient records, confirming/cancelling appointments, or deleting requests, which are notable gaps for a full appointment management workflow.

Maintenance

ActivitySlowing
ResponsivenessNo issues