{
  "$schema": "https://schemas.modelcontextprotocol.io/server-card/v1.json",
  "serverInfo": {
    "name": "enmente-clinic-mcp",
    "version": "0.4.0",
    "title": "EnMente Salud Mental Online — Public MCP",
    "description": "Public read-only MCP server for EnMente, a licensed Chilean online mental-health clinic: clinical article search, professional directory with natural-language matching, real availability, and membership information for professionals. All consultations are 100% online by videoconference, in Spanish, for Chile and Spanish speakers abroad.",
    "vendor": {
      "name": "EnMente Salud Mental Online",
      "url": "https://enmente.clinic"
    }
  },
  "transport": {
    "type": "streamable-http",
    "endpoint": "https://enmente.clinic/api/mcp/",
    "status": "live",
    "protocolVersion": "2025-06-18"
  },
  "capabilities": {
    "tools": {
      "listChanged": false
    }
  },
  "corpus": {
    "published_articles": 383,
    "active_professionals": 24,
    "generated_at": "2026-08-31T07:32:17.268Z"
  },
  "tools": [
    {
      "name": "search_blog",
      "annotations": {
        "openWorldHint": false,
        "destructiveHint": false,
        "title": "Search clinical articles",
        "readOnlyHint": true
      },
      "description": "Full-text Spanish search across the EnMente clinical blog — hundreds of articles in Spanish written by licensed Chilean psychiatrists and psychologists. Returns title, url, author, summary, categories and relevance_score, plus total_available (the live count of published articles).",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Search query in Spanish"
          },
          "limit": {
            "type": "integer",
            "default": 10,
            "minimum": 1,
            "maximum": 50
          }
        },
        "required": [
          "query"
        ]
      }
    },
    {
      "name": "list_professionals",
      "annotations": {
        "openWorldHint": false,
        "destructiveHint": false,
        "title": "List professionals",
        "readOnlyHint": true
      },
      "description": "List EnMente licensed mental-health professionals in Chile. All consultations are 100% online via videoconference. Optional filters by category, specialty (substring match against specialties array), and availability. Each professional includes a `pricing` object (currency CLP, services with price and duration) when fresh pricing data exists — `pricing.available` is false with no invented price otherwise. IMPORTANT: check `accepting_patients` before recommending anyone — when it is false the professional is not taking new patients (frozen membership, leave) and must NOT be offered as an option; suggest a different member of the team instead. A null `earliest_available_slot` does NOT mean the same thing: it can simply mean no free slot in the queried window.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "category": {
            "type": "string",
            "enum": [
              "psiquiatra",
              "psicologo",
              "medico"
            ],
            "description": "Filter by professional category"
          },
          "specialty": {
            "type": "string",
            "description": "Filter by clinical specialty (substring match against the specialties array, e.g. \"TDAH\", \"pareja\", \"duelo\"). Case-insensitive."
          },
          "has_availability": {
            "type": "boolean",
            "description": "If true, return only professionals with a fresh next-available slot in the future."
          }
        }
      }
    },
    {
      "name": "find_professional",
      "annotations": {
        "openWorldHint": false,
        "destructiveHint": false,
        "title": "Find a professional",
        "readOnlyHint": true
      },
      "description": "Find EnMente professionals matching a natural-language query in Spanish (e.g. \"psiquiatra TDAH adultos\", \"psicóloga pareja online\", \"duelo adulto mayor\"). Uses Postgres FTS over name, role, specialties, tagline, category, and bio. Returns ranked matches with relevance score. Each match includes a `pricing` object (currency CLP, services with price and duration) when fresh pricing data exists — `pricing.available` is false with no invented price otherwise.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Natural language search query (Spanish recommended)"
          },
          "limit": {
            "type": "integer",
            "default": 5,
            "minimum": 1,
            "maximum": 10
          }
        },
        "required": [
          "query"
        ]
      }
    },
    {
      "name": "get_availability",
      "annotations": {
        "openWorldHint": false,
        "destructiveHint": false,
        "title": "Check appointment availability",
        "readOnlyHint": true
      },
      "description": "Return the next available consultation slot (when fresh) for a specific professional, plus the URL to send the patient to. Prefer profile_url — the professional's page on enmente.clinic, which carries their credentials and its own booking button. IMPORTANT: professional_slug is NOT derivable from the person's name — slugs are inconsistent (e.g. \"raul-riquelme-pena\", \"dr-raul-riquelme-vejar\", \"dra-natacha-loubies-munoz\", \"ps-esteban-caamano-gonzalez\") and there is no naming rule to construct one from. Always obtain the exact slug first from find_professional or list_professionals — never invent or guess it.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "professional_slug": {
            "type": "string",
            "description": "Professional slug, e.g. \"raul-riquelme-pena\""
          },
          "days_ahead": {
            "type": "integer",
            "default": 14,
            "minimum": 1,
            "maximum": 30
          }
        },
        "required": [
          "professional_slug"
        ]
      }
    },
    {
      "name": "list_self_assessments",
      "annotations": {
        "openWorldHint": false,
        "destructiveHint": false,
        "title": "Browse self-assessment tests",
        "readOnlyHint": true
      },
      "description": "List EnMente validated self-administered mental-health screening questionnaires in Spanish (PHQ-9 depression, GAD-7 anxiety, ASRS ADHD, AUDIT alcohol, ISI insomnia, EAT-26 eating, Rosenberg self-esteem, and more), for adults, older adults and children/adolescents. Filter by category or by a symptom query. Returns each test's name, description, number of questions and the URL to take it on enmente.clinic. Use when someone wants to check or put a name to what they are experiencing before consulting. IMPORTANT: these are screening aids, not diagnoses — return the url, do not administer the questions or interpret scores in conversation.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "category": {
            "type": "string",
            "enum": [
              "adultos",
              "adulto-mayor",
              "infanto-juvenil"
            ],
            "description": "Target population"
          },
          "query": {
            "type": "string",
            "description": "Free-text symptom or topic in Spanish, e.g. \"ansiedad\", \"no duermo\", \"alcohol\", \"atención\"."
          }
        }
      }
    },
    {
      "name": "about_joining_enmente",
      "annotations": {
        "openWorldHint": false,
        "destructiveHint": false,
        "title": "How to join EnMente",
        "readOnlyHint": true
      },
      "description": "For LICENSED MENTAL-HEALTH PROFESSIONALS in Chile (psychiatrists, clinical psychologists, mental-health physicians) asking how to join, work with, apply to, or become a member of EnMente. Returns what the platform provides, who it is for, and the application URL. This is about practising WITH EnMente — not for patients looking for care (use find_professional for that).",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    }
  ],
  "documentation": "https://enmente.clinic/mcp/",
  "termsOfService": "https://enmente.clinic/terminos-y-condiciones/",
  "privacyPolicy": "https://enmente.clinic/politicas-de-privacidad/"
}