medicalmet-mcp-server
v0.1.1
Published
MCP server for MedicalMet appointment CRUD operations over stdio
Maintainers
Readme
MedicalMet MCP Server
A Model Context Protocol (MCP) server for MedicalMet, exposing appointment CRUD and patient search capabilities.
This server runs as a backend service over the stdio transport. It enables AI agents to securely interact with the MedicalMet platform without exposing credentials to the client.
Features
- Auth: Session-based login using email and password.
- Patient Search: Multi-source patient search for booking disambiguation.
- Appointment CRUD: Read, Create, Update, Archive, and Cancel appointments.
- Safety: Write operations are blocked by default and must be explicitly enabled via
MEDICALMET_ALLOW_WRITES=true.
Installation
You can run this server directly using npx (no installation required), or install it globally:
npm install -g medicalmet-mcp-serverConfiguration
The server requires environment variables to authenticate with MedicalMet.
| Variable | Description | Required | Default |
|----------|-------------|----------|---------|
| MEDICALMET_EMAIL | MedicalMet account email | Yes | - |
| MEDICALMET_PASSWORD | MedicalMet account password | Yes | - |
| MEDICALMET_BASE_URL | Base URL for MedicalMet API | No | https://app.medicalmet.com |
| MEDICALMET_ALLOW_WRITES | Set to true to enable write operations | No | false |
| MEDICALMET_COMPANY_ID | Default company ID | No | Fetched from profile |
| MEDICALMET_BRANCH_ID | Default branch ID | No | Fetched from profile |
.env Example
Create a .env file or set these in your environment:
[email protected]
MEDICALMET_PASSWORD=ABC12345
MEDICALMET_ALLOW_WRITES=trueUsage
Running Directly
[email protected] MEDICALMET_PASSWORD=ABC12345 npx medicalmet-mcp-serverClaude Desktop Configuration
To use this server with Claude Desktop, add the following to your claude_desktop_config.json:
{
"mcpServers": {
"medicalmet": {
"command": "npx",
"args": ["medicalmet-mcp-server"],
"env": {
"MEDICALMET_EMAIL": "[email protected]",
"MEDICALMET_PASSWORD": "your-password",
"MEDICALMET_ALLOW_WRITES": "true"
}
}
}
}Available Tools
get_current_user: Get authenticated user profile.list_branches: List available branches.list_appointment_types: List appointment types.search_patients: Search patient records.find_existing_patients_for_booking: Search and disambiguate existing patients.list_appointments: List appointments with filters.get_appointment: Get a single appointment by ID.create_appointment: Create a new appointment (requiresMEDICALMET_ALLOW_WRITES=true).update_appointment: Update an existing appointment (requiresMEDICALMET_ALLOW_WRITES=true).archive_appointment: Soft-delete an appointment (requiresMEDICALMET_ALLOW_WRITES=true).cancel_appointment: Cancel an appointment (requiresMEDICALMET_ALLOW_WRITES=true).
Development
# Install dependencies
pnpm install
# Build the TypeScript code
pnpm build
# Run locally
pnpm start