> ## Documentation Index
> Fetch the complete documentation index at: https://ekacare-mintlify-changelog-update-1777079450.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# EkaAgents Changelog

> Updates and improvements to EkaAgents — MCP Server, Echo Agent Kit, MedAssist, and agent workflows.

export const SubscribeForm = () => {
  const [email, setEmail] = useState("");
  const [status, setStatus] = useState("idle");
  const handleSubmit = e => {
    e.preventDefault();
    const trimmed = email.trim();
    if (!trimmed || !trimmed.includes("@")) {
      setStatus("error");
      return;
    }
    window.open("http://eepurl.com/i3Lz2E", "_blank");
    setStatus("success");
    setEmail("");
  };
  return <div style={{
    background: "#E1F5EE",
    border: "1px solid #5DCAA5",
    borderRadius: "12px",
    padding: "20px 24px",
    marginBottom: "28px"
  }}>
      <div style={{
    fontSize: "15px",
    fontWeight: "600",
    color: "#085041",
    marginBottom: "4px"
  }}>
        Get weekly developer updates in your inbox
      </div>
      <div style={{
    fontSize: "13px",
    color: "#0F6E56",
    marginBottom: "14px",
    lineHeight: "1.5"
  }}>
        New features, SDK releases, API changes, and bug fixes — delivered every week. No spam. Unsubscribe anytime.
      </div>
      {status === "success" ? <div style={{
    background: "#0F4C3A",
    color: "white",
    borderRadius: "8px",
    padding: "10px 16px",
    fontSize: "13px"
  }}>
          ✓ Check your inbox to confirm your subscription.
        </div> : <form onSubmit={handleSubmit} style={{
    display: "flex",
    gap: "8px",
    flexWrap: "wrap"
  }}>
          <input type="email" value={email} onChange={e => {
    setEmail(e.target.value);
    setStatus("idle");
  }} placeholder="your@email.com" required style={{
    flex: "1",
    minWidth: "200px",
    height: "38px",
    border: status === "error" ? "1.5px solid #E24B4A" : "1.5px solid #5DCAA5",
    borderRadius: "8px",
    padding: "0 14px",
    fontSize: "13px",
    color: "#111",
    background: "white",
    outline: "none"
  }} />
          <button type="submit" style={{
    height: "38px",
    background: "#0F4C3A",
    color: "white",
    border: "none",
    borderRadius: "8px",
    padding: "0 20px",
    fontSize: "13px",
    fontWeight: "500",
    cursor: "pointer",
    whiteSpace: "nowrap"
  }}>
            Subscribe →
          </button>
        </form>}
      {status === "error" && <div style={{
    fontSize: "11px",
    color: "#E24B4A",
    marginTop: "6px"
  }}>
          Please enter a valid email address.
        </div>}
      <div style={{
    fontSize: "11px",
    color: "#0F6E56",
    marginTop: "8px",
    opacity: "0.75"
  }}>
        Powered by Mailchimp · Your data is safe with us
      </div>
    </div>;
};

<SubscribeForm />

<Update
  label="April 24, 2026"
  description="April 24, 2026"
  tags={["Update"]}
  rss={{
title: "EkaAgents — April 24, 2026",
description: "• Breaking: MCP SDK PatientData now requires a validated mobile number with +91 country code\n\nRead more: https://developer.eka.care/ekaagents-changelog"
}}
>
  ## ⚠️ Breaking

  * **\[EkaAgents] MCP SDK profile creation requires mobile number** — The `PatientData` model in the Eka MCP SDK now makes `mobile` mandatory and enforces the `^\+91[6-9]\d{9}$` pattern for Indian mobile numbers. Profile creation calls that previously omitted `mobile` or passed an unformatted number will now fail validation. Update integrations to always supply a country-coded mobile number. [View docs](/ai-tools/mcp-server/supported-tools)
</Update>

<Update
  label="April 23, 2026"
  description="April 23, 2026"
  tags={["Feature", "Update"]}
  rss={{
title: "EkaAgents — April 23, 2026",
description: "• MedAI Tools MCP server documentation launched\n\n• MCP SDK doctor card revamp for EMR clients\n\nRead more: https://developer.eka.care/ekaagents-changelog"
}}
>
  ## 🔗 New Integrations

  * **\[EkaAgents] MedAI Tools MCP server** — Published a dedicated MedAI Tools MCP surface with introduction, quickstart, authentication, and tool reference pages, giving agents a documented entry point for medical-AI tool access independent of the EMR MCP. [View docs](/ai-tools/medai-tools-mcp/introduction)

  ## Improved

  * **\[EkaAgents] Doctor card revamp for EMR client** — The MCP SDK now emits a standardized success elicitation response for doctor discovery and availability flows. Tool responses include a `_meta` block with display message, toast text, and `tool_result` payload (selected doctor, hospital, slot, date), and rename `selected_date` to `preferred_date` for consistency with the elicitation contract. [View docs](/ai-tools/mcp-server/supported-tools)
</Update>

<Update
  label="April 22, 2026"
  description="April 22, 2026"
  tags={["Update"]}
  rss={{
title: "EkaAgents — April 22, 2026",
description: "• MCP SDK doctor discovery elicitation response\n\n• Echo Agent Kit MCP transport rewritten as bare-metal fresh-session-per-call\n\n• Echo SDK MCP read timeout now env-driven\n\nRead more: https://developer.eka.care/ekaagents-changelog"
}}
>
  ## Improved

  * **\[EkaAgents] Doctor discovery elicitation in MCP SDK** — `doctor_discovery_tool` now returns a `doctor_card` elicitation component with a `status: "success"` field and `is_elicitation: true` marker, letting agent clients render structured doctor selection cards instead of raw lists. [View docs](/ai-tools/mcp-server/supported-tools)

  ## Changed

  * **\[EkaAgents] Echo Agent Kit MCP transport — bare-metal sessions** — `MCPConnectionManager` now opens a fresh `ClientSession` per call with no connection pooling, no session caching, and no class-level state. Parallel-safe by construction at the cost of one initialize round-trip per tool call (\~10–50ms typical). The interim session-cache redesign (with `user_session_id`) introduced earlier in the day was removed in the same release. The `MCPConnection` type, `connection_ttl`, `pool_key_headers`, and `cleanup_all` are gone; callers should drop those references. Echo SDK bumps to 0.1.30, then 0.1.31.

  * **\[EkaAgents] Echo Agent Kit MCP read timeout configurable** — `MCPServerConfig.sse_read_timeout` now defaults from the `ECHO_MCP_TOOL_TIMEOUT` environment variable (10s default, was 300s) and is propagated to `ClientSession(read_timeout_seconds=…)`. Download helper timeout reduced from 30s to 10s for tighter blob-fetch ceilings.
</Update>

<Update
  label="April 18, 2026"
  description="April 18, 2026"
  tags={["Feature", "Fix"]}
  rss={{
title: "EkaAgents — April 18, 2026",
description: "• MedAssist web widget adds contextual popup nudge (feature-flagged off)\n\n• MedAssist web widget agent ID corrected\n\nRead more: https://developer.eka.care/ekaagents-changelog"
}}
>
  ## Added

  * **\[EkaAgents] Contextual popup nudge in MedAssist web widget** — The MedAssist web widget can now fetch a contextual nudge from the user-nudge API and display it as a popup near the chat button, with cached metadata, configurable delay, and meta-tag-aware targeting. The feature ships behind a `CALL_NUDGE` flag that is currently `false`, so no nudge calls are made until it is flipped on.

  ## Fixed

  * **\[EkaAgents] MedAssist web widget agent ID** — Updated the default agent ID baked into the widget loader so embedded widgets connect to the correct agent in production instead of falling back to a stale identifier.
</Update>

<Update
  label="April 17, 2026"
  description="April 17, 2026"
  tags={["Update"]}
  rss={{
title: "EkaAgents — April 17, 2026",
description: "• Doctor discovery tool added to MCP SDK for EMR workspaces\n\n• MedAssist web widget responsive layout on small screens\n\nRead more: https://developer.eka.care/ekaagents-changelog"
}}
>
  ## Improved

  * **\[EkaAgents] Doctor discovery tool in MCP SDK** — The Eka MCP SDK now includes a doctor discovery tool for EMR workspaces, enabling agents to search for available doctors within a clinic context. [View docs](/ai-tools/mcp-server/supported-tools)

  * **\[EkaAgents] MedAssist web widget responsive layout** — The MedAssist web chat widget now renders correctly on small screens (under 360px and 767px widths), preventing layout overflow and improving usability on mobile devices.
</Update>

<Update
  label="April 16, 2026"
  description="April 16, 2026"
  tags={["Feature", "Update"]}
  rss={{
title: "EkaAgents — April 16, 2026",
description: "• OTP authentication for EMR clients in MCP SDK\n\n• Workspace tool fallback to default EMR tool set\n\nRead more: https://developer.eka.care/ekaagents-changelog"
}}
>
  ## Added

  * **\[EkaAgents] OTP authentication for EMR clients in MCP SDK** — The Eka MCP SDK now includes an `authentication_elicitation` tool enabled by default for EMR workspaces, supporting SMS-based OTP login with country code selection, OTP verification, and UHID profile selection. Agents can authenticate clinic users mid-conversation without leaving the AI client. [View docs](/ai-tools/mcp-server/authentication)

  ## Improved

  * **\[EkaAgents] MCP SDK workspace tool fallback** — When a workspace has no explicitly configured tool list, the MCP SDK now falls back to the default EMR tool set instead of failing, improving resilience for new workspace onboarding.
</Update>

<Update
  label="April 13, 2026"
  description="April 9–13"
  tags={["Update"]}
  rss={{
title: "EkaAgents — April 9–13, 2026",
description: "• Echo Agent Kit handles empty prompt variables gracefully\n\nRead more: https://developer.eka.care/ekaagents-changelog"
}}
>
  ## Improved

  * **Echo Agent Kit** — Empty prompt variables are now handled gracefully, preventing errors when prompt templates contain optional or unfilled placeholders. [View docs](/ai-tools/agent-kit/tools)
</Update>
