therapie-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| THERAPIE_MCP_DB | No | Path to the local SQLite workflow database. Overrides the default location (file 0600, new containing directory 0700). | ~/.local/share/therapie-mcp/workflow.sqlite3 |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_search_filtersA | Get current filter IDs and German labels from the actual therapie.de search form. Includes focus, method, billing, audience, gender, additional language and reported availability. |
| search_therapistsA | Search public therapist listings with contact details, distances, source URLs and pagination. Pass filter IDs or exact German labels from get_search_filters. One website page is returned; use the next page number when next_page_url is present. Availability is not a booking guarantee. |
| get_therapistA | Get a therapist's public profile: contact, qualifications, billing, methods, focuses and reported availability. |
| compare_therapistsA | Compare profiles against explicit directory facts. OR within a field, AND across fields. Unknown/not_listed needs direct confirmation. No medical suitability/quality ranking is inferred. |
| get_preferencesA | Read private local sender/contact/search preferences; nothing is sent to therapie.de. |
| update_preferencesA | Save local sender_name, sender_email, sender_phone, insurance, city, preferred_language. null removes a field. |
| save_therapistA | Fetch a public profile and save/refresh it in the private shortlist. Existing notes/status are preserved unless notes are provided. |
| get_shortlistA | List saved profiles, local notes and actual contact history, optionally filtered by status. |
| update_saved_therapistA | Update the user's local shortlist notes/status, without contacting the therapist. |
| delete_saved_therapistA | Delete a local saved therapist and all associated notes, drafts and contacts. Does not affect therapie.de. |
| draft_enquiryA | Create an editable email draft for a saved therapist, using local sender/insurance preferences. Only include health details explicitly supplied for this email. Does not send or log a contact. Follow-up drafts require a recorded earlier enquiry. Missing email needs a verified recipient. |
| get_email_draftA | Read the full recipient, subject and body of a private email draft before editing or exporting. |
| update_email_draftA | Edit a draft's recipient, subject or body. Nothing is sent. |
| export_email_draftA | Return .eml file content and a mailto link for the user's mail app. Review and send there; this does not send or log a contact. |
| log_contactA | Record an actual contact/reply/appointment and optional follow-up date (YYYY-MM-DD). Never use this to pretend a draft was sent. |
| complete_follow_upB | Mark a recorded follow-up as resolved, removing it from the due list. |
| record_appointmentA | Record a user-arranged appointment locally. ISO local time + IANA zone or explicit offset. Does not book/contact anyone. |
| list_appointmentsB | List locally recorded appointments in chronological order. |
| update_appointmentB | Reschedule or update a local appointment record. Does not notify the practice. |
| export_appointmentA | Return a private .ics calendar file for manual import. No booking or invitation is sent. |
| workflow_overviewA | Show local preferences, saved therapists, drafts and due follow-ups. Nothing is sent to the directory. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| therapeutensuche | Find and compare therapist listings for a town or postcode. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 21 tools
The tools are well-separated by resource and intent: search/get/compare for public directory data, save/update/delete for the private shortlist, and draft/get/update/export for email drafts. The main overlap risk is among the local record tools (record_appointment, update_appointment, log_contact), but descriptions clarify that one records, one edits, and one logs real contact.
Nearly all tools follow a clear verb_noun pattern (get_search_filters, save_therapist, export_email_draft, update_preferences, etc.), and the local-vs-directory distinction is reflected consistently. The lone exception is workflow_overview, a noun-style name that breaks the otherwise predictable convention.
At 21 tools the set is on the heavier side, but the domain spans five distinct areas (search, shortlist, drafts, appointments/contacts, preferences), so each tool has a defensible purpose. It is slightly above the ideal 3-15 range but not bloated with redundant operations.
Coverage is strong: search and compare directory data, full shortlist lifecycle (save/update/delete/get), a complete draft workflow (create/read/update/export), appointment recording/listing/updating/exporting, contact logging, follow-ups, and preferences. Minor gaps remain, such as no delete_email_draft or cancel/delete appointment operation.