ElloMind MCP
An official MCP server provided by ElloMind that allows AI agents to check live availability and book therapy sessions with qualified psychologists. It supports tools for listing services, checking slot availability, creating booking drafts with pay links, and retrieving booking status.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://mcp.ellomind.com/mcpWhat its tools do
6 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Read-only (3)
Can change data (3)
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Passed Official MCP Registry namespace is tied to ellomind.com ·
- Passed Endpoint is on the registry namespace domain ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Check live availability for therapy sessions
- Book individual, couples, or teen therapy
- Retrieve booking status and details
- List available therapy services
Source and maintenance
Protocol and capabilities
- Server
- ellomind-booking 0.1.0
- MCP protocol negotiated in check
- 2025-11-25
- Tools
- 6 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": true
}
}Tools
6 advertised
list_services — List ElloMind services
List session types, prices and plans for booking therapy with ElloMind. Call before creating a booking so you use a valid session_type and plan_code. Plans: 4, 8 or 12 sessions at 10, 20 or 30% off, valid 6 months, paid upfront. In-person individual sessions (Kakkanad clinic, one at a time) are priced separately.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}{
"title": "List ElloMind services",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}check_availability — Check availability
Real open start times (IST) for a session type over a date range (YYYY-MM-DD, at most 14 days): `days` (all times) and `by_psychologist` (each psychologist's own times, with slug, name and role). Past times and times starting within 10 minutes are never listed. Times are not held until create_booking_draft. Use mode 'in_person' for the Kakkanad clinic (individual sessions, Teresa James). ElloMind matches clients to a psychologist: offer a specific person only when the customer asks for one (by name, or the same psychologist as before); pass psychologist to see only theirs. If this tool returns an error, never tell the customer they are fully booked.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"session_type",
"from",
"to"
],
"properties": {
"to": {
"type": "string",
"maxLength": 10,
"description": "end date YYYY-MM-DD"
},
"from": {
"type": "string",
"maxLength": 10,
"description": "start date YYYY-MM-DD"
},
"mode": {
"enum": [
"online",
"in_person"
],
"type": "string",
"description": "default online"
},
"psychologist": {
"type": "string",
"maxLength": 64,
"description": "slug from by_psychologist (e.g. 'nithya-s'), only if the customer asked for that person"
},
"session_type": {
"enum": [
"individual",
"couples",
"teen"
],
"type": "string"
}
}
}{
"title": "Check availability",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}create_booking_draft — Create booking draft and pay link
Hold one time with one psychologist (for 30 minutes, and never later than 15 minutes before the session) and return a single-use pay link for the customer. Call check_availability first and use one of its times. psychologist (optional): the slug of the person the customer asked for (from by_psychologist); the time is then held for that person only, or refused with 'not free'. Without it ElloMind assigns someone free at that time. Either way the response names the psychologist (slug, name, role), and that is who the session is booked with. Collect the customer's name, phone (with country code) and email first. Couples: also partner_2 (their own name and email or phone; each partner signs their own consent form before the first joint session). Teen (13 to 17): the contact is the parent or guardian, who pays and signs the teen consent form; also give teen_name. Also required: lead_source (how the customer found ElloMind; ai_assistant if they are booking for themselves through you and did not say) and booked_by ('customer' when the customer books for themselves, otherwise your own name). The price is set by ElloMind; you cannot set an amount. Plans: plan4, plan8 or plan12 (see list_services). In person: individual single sessions only. Every problem with the details comes back at once. Bookings close 10 minutes before the session. Limits: at most 3 unpaid drafts per phone at a time (cancel_booking_draft frees one) and 8 new drafts per hour from one network.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"session_type",
"plan_code",
"slot_date",
"slot_time",
"name",
"phone",
"email",
"lead_source",
"booked_by"
],
"properties": {
"mode": {
"enum": [
"online",
"in_person"
],
"type": "string",
"description": "default online; in_person = Kakkanad clinic"
},
"name": {
"type": "string",
"maxLength": 200,
"description": "the contact: the client, or for teen sessions the parent or guardian"
},
"email": {
"type": "string",
"maxLength": 200
},
"phone": {
"type": "string",
"maxLength": 40,
"description": "with country code, e.g. +91 98xxxxxxxx"
},
"teen_age": {
"type": "integer",
"maximum": 120,
"minimum": 0,
"description": "teen only, if known: 13 to 17"
},
"booked_by": {
"type": "string",
"maxLength": 100,
"description": "'customer' if the customer books for themselves; otherwise your name"
},
"partner_2": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200
},
"email": {
"type": "string",
"maxLength": 200
},
"phone": {
"type": "string",
"maxLength": 40
}
},
"description": "couples only: the second partner"
},
"plan_code": {
"enum": [
"single",
"plan4",
"plan8",
"plan12"
],
"type": "string",
"description": "'single' for one session; 'plan4', 'plan8' or 'plan12' for a plan (see list_services)"
},
"slot_date": {
"type": "string",
"maxLength": 20,
"description": "YYYY-MM-DD from check_availability"
},
"slot_time": {
"type": "string",
"maxLength": 20,
"description": "HH:MM 24h IST from check_availability"
},
"teen_name": {
"type": "string",
"maxLength": 200,
"description": "teen only: the young person's name"
},
"source_ref": {
"type": "string",
"maxLength": 120,
"description": "an EM-XXXX ref the customer was given, if any"
},
"lead_detail": {
"type": "string",
"maxLength": 200,
"description": "required for referral (who referred them) and other"
},
"lead_source": {
"enum": [
"whatsapp",
"instagram",
"facebook",
"google",
"youtube",
"website",
"referral",
"returning_client",
"ai_assistant",
"other"
],
"type": "string",
"description": "how the customer found ElloMind"
},
"psychologist": {
"type": "string",
"maxLength": 64,
"description": "slug (e.g. 'nithya-s'), ONLY if the customer asked for that psychologist"
},
"session_type": {
"enum": [
"individual",
"couples",
"teen"
],
"type": "string"
},
"email_checked": {
"type": "boolean",
"description": "true only after the customer confirmed an unusual email domain"
}
}
}{
"title": "Create booking draft and pay link",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}get_booking_status — Get booking status
Read a booking's state to show the customer: draft (waiting for payment), confirmed (with the Meet link), paid (payment in, booking being completed), expired or cancelled; plus the psychologist, consent progress and whether the one free move has been used. It changes nothing. REQUIRES the poll_key from create_booking_draft; without it the answer is 'not found'.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ref",
"poll_key"
],
"properties": {
"ref": {
"type": "string",
"maxLength": 20,
"description": "the booking ref, e.g. EM-XXXX"
},
"poll_key": {
"type": "string",
"maxLength": 64,
"description": "the poll_key returned by create_booking_draft"
}
}
}{
"title": "Get booking status",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}cancel_booking_draft — Cancel an unpaid booking draft
Cancel a draft the customer has NOT paid for: frees the held time at once and the pay link stops working. A paid or confirmed session cannot be cancelled here (refunds and the 24-hour rule are handled by ElloMind on WhatsApp).
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ref",
"poll_key"
],
"properties": {
"ref": {
"type": "string",
"maxLength": 20,
"description": "the booking ref, e.g. EM-XXXX"
},
"poll_key": {
"type": "string",
"maxLength": 64,
"description": "the poll_key returned by create_booking_draft"
}
}
}{
"title": "Cancel an unpaid booking draft",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}reschedule_booking — Move a confirmed session
Move a CONFIRMED session to another time with the same psychologist. Allowed once per session, at no charge, when the session is 24 hours or more away. A second change counts as a cancellation and anything inside 24 hours carries the full fee, so those go to ElloMind on WhatsApp. Check the new time with check_availability (same psychologist) first. The Meet link stays the same and everyone is emailed.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ref",
"poll_key",
"slot_date",
"slot_time"
],
"properties": {
"ref": {
"type": "string",
"maxLength": 20,
"description": "the booking ref, e.g. EM-XXXX"
},
"poll_key": {
"type": "string",
"maxLength": 64,
"description": "the poll_key returned by create_booking_draft"
},
"slot_date": {
"type": "string",
"maxLength": 20,
"description": "new date YYYY-MM-DD"
},
"slot_time": {
"type": "string",
"maxLength": 20,
"description": "new start time HH:MM 24h IST"
}
}
}{
"title": "Move a confirmed session",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}Prompts
Not advertised
Resources
Not advertised
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 1961 ms
- 95th percentile latency
- 1961 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 1961 ms · metadata changed · 6 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http ellomind-mcp https://mcp.ellomind.com/mcpCodex
codex mcp add ellomind-mcp --url https://mcp.ellomind.com/mcpCursor
{
"mcpServers": {
"ellomind-mcp": {
"url": "https://mcp.ellomind.com/mcp"
}
}
}Cline
{
"mcpServers": {
"ellomind-mcp": {
"type": "streamableHttp",
"url": "https://mcp.ellomind.com/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"ellomind-mcp": {
"type": "http",
"url": "https://mcp.ellomind.com/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http ellomind-mcp https://mcp.ellomind.com/mcpClaude Desktop
https://mcp.ellomind.com/mcpWindsurf
{
"mcpServers": {
"ellomind-mcp": {
"serverUrl": "https://mcp.ellomind.com/mcp"
}
}
}Let your agent find its tools
Find servers like ElloMind MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other productivity and knowledge servers
Do you run ElloMind MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.