// Generated by orrery. Edit the diagram spec and re-render instead of editing this file.
import { type SVGProps, useId } from "react";

export default function AICodingAgentOnTheModelContextProtocol(props: SVGProps<SVGSVGElement>) {
  const uid = useId().replace(/[^A-Za-z0-9_-]/g, "");
  return (
    <svg xmlns="http://www.w3.org/2000/svg" xmlnsXlink="http://www.w3.org/1999/xlink" width="1044" height="1419" viewBox="0 0 1044 1419" role="img" aria-labelledby={`${uid}-sdw-title ${uid}-sdw-desc`} fontFamily="'Geist Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, 'Liberation Mono', monospace" {...props}>
      <title id={`${uid}-sdw-title`}>
        AI coding agent on the Model Context Protocol
      </title>
      <desc id={`${uid}-sdw-desc`}>
        AI coding agent on the Model Context Protocol. 15 components in 1 groups. Connections: Developer to Agent loop (prompt); Claude to Agent loop (messages + tools); Agent loop to MCP client 2 (tools/call); MCP client 2 to GitHub MCP server (Streamable HTTP, Bearer token); GitHub MCP server to GitHub (REST API); MCP client 2 to GitHub OAuth (OAuth 2.1 + PKCE); Agent loop to MCP client 1; Agent loop to MCP client 3; MCP client 1 to Filesystem server (stdio); Filesystem server to Project files (read and write); MCP client 3 to Postgres MCP server (Streamable HTTP); Postgres MCP server to PostgreSQL (SQL); Agent loop to OTel Collector (OTLP traces); OTel Collector to Grafana Cloud.
      </desc>
      <defs>
        <linearGradient id={`${uid}-bg`} x1="0" y1="0" x2="0.34" y2="0.94">
          <stop offset="0" stopColor="#0e1a24" />
          <stop offset="0.6" stopColor="#0b1012" />
        </linearGradient>
        <pattern id={`${uid}-grid`} width="23.73" height="23.73" patternUnits="userSpaceOnUse">
          <path d="M0 0.59H23.73M0.59 0V23.73" fill="none" stroke="#ffffff" strokeOpacity="0.045" strokeWidth="1.19" />
        </pattern>
        <radialGradient id={`${uid}-wash`} gradientUnits="userSpaceOnUse" cx="390.5" cy="705.75" r="580.42">
          <stop offset="0" stopColor="#60a5fa" stopOpacity="0.12" />
          <stop offset="1" stopColor="#60a5fa" stopOpacity="0" />
        </radialGradient>
        <symbol id={`${uid}-s1`} viewBox="0 0 24 24" overflow="visible">
          <path fill="none" stroke="#919394" strokeLinecap="round" strokeLinejoin="round" strokeWidth="1.48" d="M8 7a4 4 0 1 0 8 0a4 4 0 0 0-8 0M6 21v-2a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v2" />
        </symbol>
        <symbol id={`${uid}-s2`} viewBox="0 0 24 24" overflow="visible">
          <path fill="none" stroke="#919394" strokeLinecap="round" strokeLinejoin="round" strokeWidth="1.48" d="M11 14a1 1 0 1 0 2 0a1 1 0 1 0-2 0m-5 0a1 1 0 1 0 2 0a1 1 0 1 0-2 0m10 0a1 1 0 1 0 2 0a1 1 0 1 0-2 0m-5-9a1 1 0 1 0 2 0a1 1 0 1 0-2 0m2.5 4.5a1 1 0 1 0 2 0a1 1 0 1 0-2 0m-5 0a1 1 0 1 0 2 0a1 1 0 1 0-2 0m5 9a1 1 0 1 0 2 0a1 1 0 1 0-2 0m-5 0a1 1 0 1 0 2 0a1 1 0 1 0-2 0m-5 0a1 1 0 1 0 2 0a1 1 0 1 0-2 0m15 0a1 1 0 1 0 2 0a1 1 0 1 0-2 0" />
        </symbol>
        <symbol id={`${uid}-s3`} viewBox="0 0 24 24" overflow="visible">
          <path fill="none" stroke="#919394" strokeLinecap="round" strokeLinejoin="round" strokeWidth="1.48" d="m7 12l5 5l-1.5 1.5a3.536 3.536 0 1 1-5-5zm10 0l-5-5l1.5-1.5a3.536 3.536 0 1 1 5 5zM3 21l2.5-2.5m13-13L21 3m-11 8l-2 2m5 1l-2 2" />
        </symbol>
        <symbol id={`${uid}-s4`} viewBox="0 0 256 257" overflow="visible">
          <path fill="#d97757" d="m50.228 170.321l50.357-28.257l.843-2.463l-.843-1.361h-2.462l-8.426-.518l-28.775-.778l-24.952-1.037l-24.175-1.296l-6.092-1.297L0 125.796l.583-3.759l5.12-3.434l7.324.648l16.202 1.101l24.304 1.685l17.629 1.037l26.118 2.722h4.148l.583-1.685l-1.426-1.037l-1.101-1.037l-25.147-17.045l-27.22-18.017l-14.258-10.37l-7.713-5.25l-3.888-4.925l-1.685-10.758l7-7.713l9.397.649l2.398.648l9.527 7.323l20.35 15.75L94.817 91.9l3.889 3.24l1.555-1.102l.195-.777l-1.75-2.917l-14.453-26.118l-15.425-26.572l-6.87-11.018l-1.814-6.61c-.648-2.723-1.102-4.991-1.102-7.778l7.972-10.823L71.42 0l10.63 1.426l4.472 3.888l6.61 15.101l10.694 23.786l16.591 32.34l4.861 9.592l2.592 8.879l.973 2.722h1.685v-1.556l1.36-18.211l2.528-22.36l2.463-28.776l.843-8.1l4.018-9.722l7.971-5.25l6.222 2.981l5.12 7.324l-.713 4.73l-3.046 19.768l-5.962 30.98l-3.889 20.739h2.268l2.593-2.593l10.499-13.934l17.628-22.036l7.778-8.749l9.073-9.657l5.833-4.601h11.018l8.1 12.055l-3.628 12.443l-11.342 14.388l-9.398 12.184l-13.48 18.147l-8.426 14.518l.778 1.166l2.01-.194l30.46-6.481l16.462-2.982l19.637-3.37l8.88 4.148l.971 4.213l-3.5 8.62l-20.998 5.184l-24.628 4.926l-36.682 8.685l-.454.324l.519.648l16.526 1.555l7.065.389h17.304l32.21 2.398l8.426 5.574l5.055 6.805l-.843 5.184l-12.962 6.611l-17.498-4.148l-40.83-9.721l-14-3.5h-1.944v1.167l11.666 11.406l21.387 19.314l26.767 24.887l1.36 6.157l-3.434 4.86l-3.63-.518l-23.526-17.693l-9.073-7.972l-20.545-17.304h-1.36v1.814l4.73 6.935l25.017 37.59l1.296 11.536l-1.814 3.76l-6.481 2.268l-7.13-1.297l-14.647-20.544l-15.1-23.138l-12.185-20.739l-1.49.843l-7.194 77.448l-3.37 3.953l-7.778 2.981l-6.48-4.925l-3.436-7.972l3.435-15.749l4.148-20.544l3.37-16.333l3.046-20.285l1.815-6.74l-.13-.454l-1.49.194l-15.295 20.999l-23.267 31.433l-18.406 19.702l-4.407 1.75l-7.648-3.954l.713-7.064l4.277-6.286l25.47-32.405l15.36-20.092l9.917-11.6l-.065-1.686h-.583L44.07 198.125l-12.055 1.555l-5.185-4.86l.648-7.972l2.463-2.593l20.35-13.999z" />
        </symbol>
        <filter id={`${uid}-f1`} x="-0.1" y="-0.1" width="1.2" height="1.2" colorInterpolationFilters="sRGB">
          <feFlood floodColor="#919394" />
          <feComposite in2="SourceAlpha" operator="in" />
        </filter>
        <symbol id={`${uid}-s5`} viewBox="0 0 256 285" overflow="visible">
          <g fill="#919394">
            <path d="M184.913 14.498c11.45 11.45 16.119 27.115 14.005 42.002c14.886-2.115 30.551 2.554 42.005 14.008l.578.578c19.332 19.331 19.332 50.674 0 70.005L140.199 242.394a3.3 3.3 0 0 0 0 4.665l20.802 20.802c3.866 3.867 3.866 10.135 0 14.002c-3.867 3.866-10.136 3.866-14.002 0l-20.8-20.803c-9.022-9.02-9.022-23.647 0-32.668L227.5 127.09c11.6-11.599 11.6-30.404-.005-42.008l-.577-.578c-11.455-11.454-29.937-11.597-41.567-.43l-.438.43l-84.59 84.59c-3.866 3.866-10.134 3.866-14 0c-3.867-3.867-3.867-10.135 0-14.001l84.589-84.59c11.6-11.6 11.6-30.404 0-42.004c-11.598-11.598-30.404-11.598-42.003 0L16.901 140.509c-3.867 3.866-10.135 3.866-14.001 0c-3.867-3.866-3.867-10.135 0-14.001L114.908 14.499c19.332-19.332 50.675-19.332 70.005 0m-28.001 28.003c3.866 3.866 3.866 10.134 0 14l-82.84 82.84c-11.6 11.599-11.6 30.404 0 42.004c11.598 11.598 30.404 11.598 42.003 0l82.84-82.84c3.866-3.866 10.134-3.866 14 0c3.867 3.866 3.867 10.135 0 14l-82.84 82.841c-19.33 19.33-50.673 19.33-70.005 0c-19.33-19.333-19.33-50.675 0-70.006l82.84-82.84c3.867-3.866 10.135-3.866 14.002 0" />
          </g>
        </symbol>
        <symbol id={`${uid}-s6`} viewBox="0 0 24 24" overflow="visible">
          <g fill="none" stroke="#919394" strokeLinecap="round" strokeLinejoin="round" strokeWidth="1.48">
            <path d="M15 3v4a1 1 0 0 0 1 1h4" />
            <path d="M18 17h-7a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4l5 5v7a2 2 0 0 1-2 2" />
            <path d="M16 17v2a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h2" />
          </g>
        </symbol>
        <symbol id={`${uid}-s7`} viewBox="0 0 24 24" overflow="visible">
          <g fill="none" stroke="#919394" strokeLinecap="round" strokeLinejoin="round" strokeWidth="1.48">
            <path d="M12 3a12 12 0 0 0 8.5 3A12 12 0 0 1 12 21A12 12 0 0 1 3.5 6A12 12 0 0 0 12 3" />
            <path d="M11 11a1 1 0 1 0 2 0a1 1 0 1 0-2 0m1 1v2.5" />
          </g>
        </symbol>
        <symbol id={`${uid}-s8`} viewBox="0 0 256 250" overflow="visible">
          <g fill="#919394">
            <path fill="#919394" d="M128.001 0C57.317 0 0 57.307 0 128.001c0 56.554 36.676 104.535 87.535 121.46c6.397 1.185 8.746-2.777 8.746-6.158c0-3.052-.12-13.135-.174-23.83c-35.61 7.742-43.124-15.103-43.124-15.103c-5.823-14.795-14.213-18.73-14.213-18.73c-11.613-7.944.876-7.78.876-7.78c12.853.902 19.621 13.19 19.621 13.19c11.417 19.568 29.945 13.911 37.249 10.64c1.149-8.272 4.466-13.92 8.127-17.116c-28.431-3.236-58.318-14.212-58.318-63.258c0-13.975 5-25.394 13.188-34.358c-1.329-3.224-5.71-16.242 1.24-33.874c0 0 10.749-3.44 35.21 13.121c10.21-2.836 21.16-4.258 32.038-4.307c10.878.049 21.837 1.47 32.066 4.307c24.431-16.56 35.165-13.12 35.165-13.12c6.967 17.63 2.584 30.65 1.255 33.873c8.207 8.964 13.173 20.383 13.173 34.358c0 49.163-29.944 59.988-58.447 63.157c4.591 3.972 8.682 11.762 8.682 23.704c0 17.126-.148 30.91-.148 35.126c0 3.407 2.304 7.398 8.792 6.14C219.37 232.5 256 184.537 256 128.002C256 57.307 198.691 0 128.001 0m-80.06 182.34c-.282.636-1.283.827-2.194.39c-.929-.417-1.45-1.284-1.15-1.922c.276-.655 1.279-.838 2.205-.399c.93.418 1.46 1.293 1.139 1.931m6.296 5.618c-.61.566-1.804.303-2.614-.591c-.837-.892-.994-2.086-.375-2.66c.63-.566 1.787-.301 2.626.591c.838.903 1 2.088.363 2.66m4.32 7.188c-.785.545-2.067.034-2.86-1.104c-.784-1.138-.784-2.503.017-3.05c.795-.547 2.058-.055 2.861 1.075c.782 1.157.782 2.522-.019 3.08m7.304 8.325c-.701.774-2.196.566-3.29-.49c-1.119-1.032-1.43-2.496-.726-3.27c.71-.776 2.213-.558 3.315.49c1.11 1.03 1.45 2.505.701 3.27m9.442 2.81c-.31 1.003-1.75 1.459-3.199 1.033c-1.448-.439-2.395-1.613-2.103-2.626c.301-1.01 1.747-1.484 3.207-1.028c1.446.436 2.396 1.602 2.095 2.622m10.744 1.193c.036 1.055-1.193 1.93-2.715 1.95c-1.53.034-2.769-.82-2.786-1.86c0-1.065 1.202-1.932 2.733-1.958c1.522-.03 2.768.818 2.768 1.868m10.555-.405c.182 1.03-.875 2.088-2.387 2.37c-1.485.271-2.861-.365-3.05-1.386c-.184-1.056.893-2.114 2.376-2.387c1.514-.263 2.868.356 3.061 1.403" />
          </g>
        </symbol>
        <symbol id={`${uid}-s9`} viewBox="0 0 256 264" overflow="visible">
          <path d="M255.008 158.086c-1.535-4.649-5.556-7.887-10.756-8.664c-2.452-.366-5.26-.21-8.583.475c-5.792 1.195-10.089 1.65-13.225 1.738c11.837-19.985 21.462-42.775 27.003-64.228c8.96-34.689 4.172-50.492-1.423-57.64C233.217 10.847 211.614.683 185.552.372c-13.903-.17-26.108 2.575-32.475 4.549c-5.928-1.046-12.302-1.63-18.99-1.738c-12.537-.2-23.614 2.533-33.079 8.15c-5.24-1.772-13.65-4.27-23.362-5.864c-22.842-3.75-41.252-.828-54.718 8.685C6.622 25.672-.937 45.684.461 73.634c.444 8.874 5.408 35.874 13.224 61.48c4.492 14.718 9.282 26.94 14.237 36.33c7.027 13.315 14.546 21.156 22.987 23.972c4.731 1.576 13.327 2.68 22.368-4.85c1.146 1.388 2.675 2.767 4.704 4.048c2.577 1.625 5.728 2.953 8.875 3.74c11.341 2.835 21.964 2.126 31.027-1.848c.056 1.612.099 3.152.135 4.482c.06 2.157.12 4.272.199 6.25c.537 13.374 1.447 23.773 4.143 31.049c.148.4.347 1.01.557 1.657c1.345 4.118 3.594 11.012 9.316 16.411c5.925 5.593 13.092 7.308 19.656 7.308c3.292 0 6.433-.432 9.188-1.022c9.82-2.105 20.973-5.311 29.041-16.799c7.628-10.86 11.336-27.217 12.007-52.99q.13-1.094.244-2.088l.16-1.362l1.797.158l.463.031c10.002.456 22.232-1.665 29.743-5.154c5.935-2.754 24.954-12.795 20.476-26.351" />
          <path fill="#336791" d="M237.906 160.722c-29.74 6.135-31.785-3.934-31.785-3.934c31.4-46.593 44.527-105.736 33.2-120.211c-30.904-39.485-84.399-20.811-85.292-20.327l-.287.052c-5.876-1.22-12.451-1.946-19.842-2.067c-13.456-.22-23.664 3.528-31.41 9.402c0 0-95.43-39.314-90.991 49.444c.944 18.882 27.064 142.873 58.218 105.422c11.387-13.695 22.39-25.274 22.39-25.274c5.464 3.63 12.006 5.482 18.864 4.817l.533-.452c-.166 1.7-.09 3.363.213 5.332c-8.026 8.967-5.667 10.541-21.711 13.844c-16.235 3.346-6.698 9.302-.471 10.86c7.549 1.887 25.013 4.561 36.813-11.958l-.47 1.885c3.144 2.519 5.352 16.383 4.982 28.952c-.37 12.568-.617 21.197 1.86 27.937c2.479 6.74 4.948 21.905 26.04 17.386c17.623-3.777 26.756-13.564 28.027-29.89c.901-11.606 2.942-9.89 3.07-20.267l1.637-4.912c1.887-15.733.3-20.809 11.157-18.448l2.64.232c7.99.363 18.45-1.286 24.589-4.139c13.218-6.134 21.058-16.377 8.024-13.686z" />
          <path fill="#fff" d="M108.076 81.525c-2.68-.373-5.107-.028-6.335.902c-.69.523-.904 1.129-.962 1.546c-.154 1.105.62 2.327 1.096 2.957c1.346 1.784 3.312 3.01 5.258 3.28q.423.059.842.058c3.245 0 6.196-2.527 6.456-4.392c.325-2.336-3.066-3.893-6.355-4.35m88.784.073c-.256-1.831-3.514-2.353-6.606-1.923c-3.088.43-6.082 1.824-5.832 3.659c.2 1.427 2.777 3.863 5.827 3.863q.387 0 .78-.054c2.036-.282 3.53-1.575 4.24-2.32c1.08-1.136 1.706-2.402 1.591-3.225" />
          <path fill="#fff" d="M247.802 160.025c-1.134-3.429-4.784-4.532-10.848-3.28c-18.005 3.716-24.453 1.142-26.57-.417c13.995-21.32 25.508-47.092 31.719-71.137c2.942-11.39 4.567-21.968 4.7-30.59c.147-9.463-1.465-16.417-4.789-20.665c-13.402-17.125-33.072-26.311-56.882-26.563c-16.369-.184-30.199 4.005-32.88 5.183c-5.646-1.404-11.801-2.266-18.502-2.376c-12.288-.199-22.91 2.743-31.704 8.74c-3.82-1.422-13.692-4.811-25.765-6.756c-20.872-3.36-37.458-.814-49.294 7.571c-14.123 10.006-20.643 27.892-19.38 53.16c.425 8.501 5.269 34.653 12.913 59.698c10.062 32.964 21 51.625 32.508 55.464c1.347.449 2.9.763 4.613.763c4.198 0 9.345-1.892 14.7-8.33a530 530 0 0 1 20.261-22.926c4.524 2.428 9.494 3.784 14.577 3.92q.016.2.035.398a118 118 0 0 0-2.57 3.175c-3.522 4.471-4.255 5.402-15.592 7.736c-3.225.666-11.79 2.431-11.916 8.435c-.136 6.56 10.125 9.315 11.294 9.607c4.074 1.02 7.999 1.523 11.742 1.523c9.103 0 17.114-2.992 23.516-8.781c-.197 23.386.778 46.43 3.586 53.451c2.3 5.748 7.918 19.795 25.664 19.794c2.604 0 5.47-.303 8.623-.979c18.521-3.97 26.564-12.156 29.675-30.203c1.665-9.645 4.522-32.676 5.866-45.03c2.836.885 6.487 1.29 10.434 1.289c8.232 0 17.731-1.749 23.688-4.514c6.692-3.108 18.768-10.734 16.578-17.36m-44.106-83.48c-.061 3.647-.563 6.958-1.095 10.414c-.573 3.717-1.165 7.56-1.314 12.225c-.147 4.54.42 9.26.968 13.825c1.108 9.22 2.245 18.712-2.156 28.078a37 37 0 0 1-1.95-4.009c-.547-1.326-1.735-3.456-3.38-6.404c-6.399-11.476-21.384-38.35-13.713-49.316c2.285-3.264 8.084-6.62 22.64-4.813m-17.644-61.787c21.334.471 38.21 8.452 50.158 23.72c9.164 11.711-.927 64.998-30.14 110.969a171 171 0 0 0-.886-1.117l-.37-.462c7.549-12.467 6.073-24.802 4.759-35.738c-.54-4.488-1.05-8.727-.92-12.709c.134-4.22.692-7.84 1.232-11.34c.663-4.313 1.338-8.776 1.152-14.037c.139-.552.195-1.204.122-1.978c-.475-5.045-6.235-20.144-17.975-33.81c-6.422-7.475-15.787-15.84-28.574-21.482c5.5-1.14 13.021-2.203 21.442-2.016M66.674 175.778c-5.9 7.094-9.974 5.734-11.314 5.288c-8.73-2.912-18.86-21.364-27.791-50.624c-7.728-25.318-12.244-50.777-12.602-57.916c-1.128-22.578 4.345-38.313 16.268-46.769c19.404-13.76 51.306-5.524 64.125-1.347c-.184.182-.376.352-.558.537c-21.036 21.244-20.537 57.54-20.485 59.759c-.002.856.07 2.068.168 3.735c.362 6.105 1.036 17.467-.764 30.334c-1.672 11.957 2.014 23.66 10.111 32.109a36 36 0 0 0 2.617 2.468c-3.604 3.86-11.437 12.396-19.775 22.426m22.479-29.993c-6.526-6.81-9.49-16.282-8.133-25.99c1.9-13.592 1.199-25.43.822-31.79c-.053-.89-.1-1.67-.127-2.285c3.073-2.725 17.314-10.355 27.47-8.028c4.634 1.061 7.458 4.217 8.632 9.645c6.076 28.103.804 39.816-3.432 49.229c-.873 1.939-1.698 3.772-2.402 5.668l-.546 1.466c-1.382 3.706-2.668 7.152-3.465 10.424c-6.938-.02-13.687-2.984-18.819-8.34m1.065 37.9c-2.026-.506-3.848-1.385-4.917-2.114c.893-.42 2.482-.992 5.238-1.56c13.337-2.745 15.397-4.683 19.895-10.394c1.031-1.31 2.2-2.794 3.819-4.602l.002-.002c2.411-2.7 3.514-2.242 5.514-1.412c1.621.67 3.2 2.702 3.84 4.938c.303 1.056.643 3.06-.47 4.62c-9.396 13.156-23.088 12.987-32.921 10.526m69.799 64.952c-16.316 3.496-22.093-4.829-25.9-14.346c-2.457-6.144-3.665-33.85-2.808-64.447c.011-.407-.047-.8-.159-1.17a15.4 15.4 0 0 0-.456-2.162c-1.274-4.452-4.379-8.176-8.104-9.72c-1.48-.613-4.196-1.738-7.46-.903c.696-2.868 1.903-6.107 3.212-9.614l.549-1.475c.618-1.663 1.394-3.386 2.214-5.21c4.433-9.848 10.504-23.337 3.915-53.81c-2.468-11.414-10.71-16.988-23.204-15.693c-7.49.775-14.343 3.797-17.761 5.53c-.735.372-1.407.732-2.035 1.082c.954-11.5 4.558-32.992 18.04-46.59c8.489-8.56 19.794-12.788 33.568-12.56c27.14.444 44.544 14.372 54.366 25.979c8.464 10.001 13.047 20.076 14.876 25.51c-13.755-1.399-23.11 1.316-27.852 8.096c-10.317 14.748 5.644 43.372 13.315 57.129c1.407 2.521 2.621 4.7 3.003 5.626c2.498 6.054 5.732 10.096 8.093 13.046c.724.904 1.426 1.781 1.96 2.547c-4.166 1.201-11.649 3.976-10.967 17.847c-.55 6.96-4.461 39.546-6.448 51.059c-2.623 15.21-8.22 20.875-23.957 24.25m68.104-77.936c-4.26 1.977-11.389 3.46-18.161 3.779c-7.48.35-11.288-.838-12.184-1.569c-.42-8.644 2.797-9.547 6.202-10.503c.535-.15 1.057-.297 1.561-.473q.469.383 1.032.756c6.012 3.968 16.735 4.396 31.874 1.271l.166-.033c-2.042 1.909-5.536 4.471-10.49 6.772" />
        </symbol>
        <filter id={`${uid}-f2`} x="-0.1" y="-0.1" width="1.2" height="1.2" colorInterpolationFilters="sRGB">
          <feColorMatrix type="matrix" values="0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0.8929 3.0038 0.3032 0 -2.604" result="a" />
          <feFlood floodColor="#919394" floodOpacity="0.4" />
          <feComposite in2="SourceAlpha" operator="in" result="base" />
          <feFlood floodColor="#919394" />
          <feComposite in2="a" operator="in" result="hi" />
          <feMerge>
            <feMergeNode in="base" />
            <feMergeNode in="hi" />
          </feMerge>
        </filter>
        <symbol id={`${uid}-s10`} viewBox="0 0 256 256" overflow="visible">
          <path fill="#f5a800" d="M135.44 139.918c-10.906 10.905-10.906 28.587 0 39.492c10.907 10.906 28.59 10.906 39.497 0c10.906-10.905 10.906-28.587 0-39.492s-28.59-10.905-39.497 0m29.525 29.548c-5.4 5.4-14.152 5.4-19.553 0s-5.401-14.151 0-19.552s14.152-5.4 19.553 0c5.402 5.375 5.402 14.151 0 19.552M174.47 2.512l-17.112 17.11c-3.35 3.35-3.35 8.855 0 12.204l66.814 66.808c3.35 3.35 8.855 3.35 12.205 0l17.113-17.111c3.35-3.35 3.35-8.854 0-12.203L186.65 2.512c-3.35-3.35-8.83-3.35-12.18 0M54.577 221.162c3.038-3.038 3.038-7.997 0-11.035l-8.699-8.699c-3.038-3.037-7.998-3.037-11.036 0l-17.97 17.968l-.026.026l-4.933-4.933c-2.727-2.727-7.167-2.727-9.868 0c-2.727 2.726-2.727 7.166 0 9.866l29.603 29.6c2.727 2.727 7.167 2.727 9.868 0c2.7-2.726 2.726-7.166 0-9.866l-4.934-4.934l.026-.026z" />
          <path fill="#425cc7" d="M145.1 51.638L107.084 89.65c-3.376 3.375-3.376 8.932 0 12.307l23.474 23.472c16.594-11.943 39.86-10.463 54.792 4.466l19.008-19.006c3.376-3.375 3.376-8.932 0-12.307l-46.95-46.944c-3.375-3.402-8.932-3.402-12.308 0m-24.41 83.684l-13.866-13.865c-3.246-3.246-8.57-3.246-11.815 0l-48.897 48.918c-3.246 3.245-3.246 8.568 0 11.814l27.707 27.704c3.246 3.246 8.57 3.246 11.815 0l31.447-31.495c-6.648-13.736-5.453-30.327 3.61-43.076" />
        </symbol>
        <symbol id={`${uid}-s11`} viewBox="0 0 256 279" overflow="visible">
          <defs>
            <linearGradient id={`${uid}-s11-_SVGzNMMBeHh`} x1="49.995%" x2="49.995%" y1="122.45%" y2="31.139%">
              <stop offset="0%" stopColor="#fff100" />
              <stop offset="100%" stopColor="#f05a28" />
            </linearGradient>
          </defs>
          <path fill={`url(#${uid}-s11-_SVGzNMMBeHh)`} d="M255.59 122.775c-.46-4.675-1.226-10.04-2.759-16.017a98 98 0 0 0-7.204-19.16a106.7 106.7 0 0 0-13.412-20.54c-2.222-2.681-4.675-5.287-7.28-7.816c3.908-15.558-4.752-29.046-4.752-29.046c-14.945-.92-24.448 4.675-27.973 7.204c-.613-.23-1.15-.537-1.763-.767c-2.529-.996-5.135-1.992-7.894-2.835a130 130 0 0 0-8.277-2.3c-2.835-.69-5.67-1.226-8.583-1.686c-.537-.076-.996-.153-1.533-.23C157.646 8.738 138.946 0 138.946 0c-20.922 13.258-24.831 31.805-24.831 31.805s-.077.383-.23 1.073c-1.15.307-2.299.69-3.449.996c-1.609.46-3.218 1.073-4.751 1.686a123 123 0 0 0-4.752 1.916a117 117 0 0 0-9.35 4.599c-2.989 1.686-5.9 3.525-8.737 5.441l-.766-.307c-28.97-11.036-54.643 2.223-54.643 2.223c-2.376 30.809 11.572 50.198 14.331 53.724c-.69 1.916-1.303 3.832-1.916 5.748c-2.146 6.974-3.755 14.101-4.751 21.535c-.154 1.073-.307 2.146-.384 3.219C7.894 146.916 0 173.97 0 173.97c22.302 25.674 48.359 27.283 48.359 27.283l.077-.076c3.295 5.9 7.127 11.495 11.419 16.783a112 112 0 0 0 5.671 6.362c-8.124 23.298 1.15 42.61 1.15 42.61c24.83.92 41.155-10.882 44.603-13.564a85 85 0 0 0 7.511 2.222a109.7 109.7 0 0 0 23.298 3.449c1.916.076 3.909.153 5.825.076h2.759l1.226-.076v.076c11.726 16.708 32.265 19.084 32.265 19.084c14.638-15.405 15.48-30.733 15.48-34.028v-1.38c3.066-2.145 5.979-4.445 8.738-6.974c5.824-5.288 10.959-11.342 15.25-17.857l1.15-1.839c16.554.92 28.28-10.27 28.28-10.27c-2.759-17.243-12.569-25.673-14.638-27.283c0 0-.077-.076-.23-.153s-.153-.153-.153-.153c-.077-.077-.23-.154-.383-.23c.076-1.073.153-2.07.23-3.142c.153-1.84.153-3.756.153-5.595v-2.913l-.077-1.149l-.076-1.533c0-.536-.077-.996-.154-1.456c-.076-.46-.076-.996-.153-1.456l-.153-1.456l-.23-1.456c-.307-1.916-.613-3.756-1.073-5.672c-1.763-7.433-4.675-14.484-8.43-20.845a70.4 70.4 0 0 0-14.025-16.707c-5.365-4.752-11.42-8.584-17.704-11.42c-6.36-2.835-12.952-4.675-19.543-5.518c-3.295-.46-6.59-.613-9.886-.536h-2.453l-1.226.077c-.46 0-.92.076-1.303.076a52 52 0 0 0-4.981.69c-6.591 1.226-12.799 3.602-18.24 6.897s-10.193 7.358-14.025 11.956a54.7 54.7 0 0 0-8.89 15.021a52.9 52.9 0 0 0-3.525 16.094c-.077 1.303-.077 2.683-.077 3.986v.996l.077 1.073c.076.613.076 1.303.153 1.916c.23 2.682.766 5.288 1.456 7.74c1.456 4.982 3.755 9.503 6.59 13.335s6.285 6.975 9.887 9.504c3.602 2.452 7.51 4.215 11.343 5.364c3.832 1.15 7.664 1.61 11.266 1.61h1.993c.23 0 .46 0 .689-.077c.383 0 .766-.077 1.15-.077c.076 0 .23 0 .306-.076l.383-.077c.23 0 .46-.076.69-.076c.46-.077.843-.154 1.303-.23s.843-.154 1.226-.307c.843-.153 1.61-.46 2.376-.69c1.533-.536 3.066-1.15 4.368-1.839c1.38-.69 2.606-1.533 3.832-2.3c.307-.23.69-.459.997-.766c1.226-.996 1.456-2.835.46-4.061c-.844-1.073-2.376-1.38-3.603-.69l-.92.46a25 25 0 0 1-3.295 1.38c-1.15.382-2.375.689-3.602.919c-.613.076-1.226.153-1.916.23c-.306 0-.613.076-.996.076h-1.84c-.383 0-.766 0-1.149-.076h-.46c-.153 0-.383 0-.536-.077c-.383-.077-.69-.077-1.073-.153c-2.836-.383-5.671-1.226-8.354-2.453a29.3 29.3 0 0 1-7.74-5.058c-2.376-2.146-4.445-4.675-6.055-7.587s-2.759-6.131-3.295-9.503c-.23-1.686-.383-3.449-.307-5.135c0-.46.077-.92.077-1.38v-.613c0-.23.077-.46.077-.69c.076-.919.23-1.839.383-2.758c1.303-7.358 4.981-14.562 10.653-20.003c1.456-1.38 2.988-2.606 4.598-3.755a31.7 31.7 0 0 1 5.211-2.99a36 36 0 0 1 5.672-2.068c1.915-.537 3.908-.844 5.977-1.073c.997-.077 1.993-.154 3.066-.154h2.376l.843.077c2.222.153 4.368.46 6.514.996c4.292.92 8.507 2.53 12.415 4.675c7.818 4.369 14.485 11.113 18.547 19.237c2.07 4.061 3.525 8.43 4.215 12.951c.153 1.15.307 2.3.383 3.45l.077.842l.077.843v3.296c0 .536-.077 1.456-.077 1.992c-.077 1.227-.23 2.53-.383 3.756s-.383 2.452-.613 3.678a50 50 0 0 1-.843 3.602a64 64 0 0 1-2.3 7.128a62.4 62.4 0 0 1-7.204 13.105c-5.9 8.124-13.948 14.715-23.144 18.93c-4.599 2.069-9.427 3.602-14.408 4.368c-2.453.46-4.982.69-7.511.766h-3.832a36 36 0 0 1-4.062-.23c-5.365-.383-10.653-1.379-15.864-2.835c-5.135-1.456-10.116-3.525-14.868-5.978c-9.427-5.058-17.933-11.956-24.524-20.31a79 79 0 0 1-8.584-13.334a79 79 0 0 1-5.671-14.638c-1.38-5.058-2.223-10.193-2.606-15.405l-.077-.996v-6.821c.077-2.529.307-5.211.614-7.817c.306-2.606.766-5.288 1.302-7.894c.537-2.605 1.15-5.211 1.916-7.817a103 103 0 0 1 5.442-14.791c4.368-9.35 10.04-17.704 16.86-24.371c1.686-1.686 3.449-3.22 5.288-4.752a78 78 0 0 1 5.748-4.138c1.916-1.303 3.985-2.453 6.055-3.526a40 40 0 0 1 3.142-1.533l3.219-1.379c2.146-.92 4.368-1.686 6.667-2.376c.537-.153 1.15-.306 1.686-.536c.537-.154 1.15-.307 1.686-.46c1.15-.307 2.3-.613 3.45-.843c.536-.153 1.149-.23 1.762-.383c.613-.154 1.15-.23 1.763-.384c.613-.076 1.15-.23 1.762-.306l.843-.153l.92-.154c.613-.076 1.15-.153 1.763-.23c.69-.076 1.302-.153 1.992-.23c.537-.076 1.456-.153 1.993-.23c.383-.076.843-.076 1.226-.153l.843-.076l.383-.077h.46c.69-.077 1.303-.077 1.993-.153l.996-.077h.767c.536 0 1.149-.076 1.685-.076a99 99 0 0 1 6.745 0c4.445.153 8.813.69 13.028 1.456c8.507 1.61 16.478 4.291 23.758 7.893c7.28 3.526 13.719 7.894 19.39 12.646c.383.306.69.613 1.073.92c.306.306.69.613.996.92c.69.612 1.303 1.225 1.993 1.838c.69.614 1.303 1.227 1.916 1.84a44 44 0 0 1 1.839 1.916c2.376 2.529 4.598 5.058 6.59 7.664a99 99 0 0 1 9.734 15.25l.46.92l.46.92c.306.613.613 1.226.843 1.84c.306.613.536 1.149.843 1.762c.23.613.536 1.15.766 1.763c.92 2.299 1.84 4.521 2.53 6.59c1.149 3.373 1.992 6.362 2.682 8.967a2.043 2.043 0 0 0 2.299 1.61c1.15-.077 1.992-.996 1.992-2.146c.077-2.759 0-6.054-.383-9.81" />
        </symbol>
      </defs>
      <rect width="1044" height="1419" fill={`url(#${uid}-bg)`} />
      <rect width="1044" height="1419" fill={`url(#${uid}-grid)`} />
      <rect width="1044" height="1419" fill={`url(#${uid}-wash)`} />
      <text fontSize="18" fontWeight="700" letterSpacing="1.08" fill="#dadbdb">
        <tspan x="28" y="42.89">
          AI CODING AGENT ON THE MODEL CONTEXT PROTOCOL
        </tspan>
      </text>
      <text fontSize="10.5" fontWeight="400" fill="#9d9fa0">
        <tspan x="28" y="64.92">
          The MCP host runs one MCP client per MCP server, over stdio locally and Streamable HTTP with OAuth remotely; Claude picks each tool and gets its result back
        </tspan>
      </text>
      <g id={`${uid}-g-host`}>
        <rect x="264" y="360" width="373" height="387" rx="2.37" fill="#ffffff" fillOpacity="0.03" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="264" y="360" width="373" height="387" rx="2.37" fill="#60a5fa" fillOpacity="0.03" stroke="#60a5fa" strokeOpacity="0.6" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0484;0.0733;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
      </g>
      <g id={`${uid}-e-e1`}>
        <path d="M412 191.5 L412 303 Q412 311 420 311 L432 311 Q440 311 440 319 L440 411.41" fill="none" stroke="#ffffff" strokeOpacity="0.25" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M435.25 404.88 L440 412 L444.75 404.88" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M412 191.5 L412 303 Q412 311 420 311 L432 311 Q440 311 440 319 L440 411.41" fill="none" stroke="#60a5fa" strokeOpacity="0.5" strokeWidth="1.42" strokeLinecap="round" strokeLinejoin="round" pathLength="1" strokeDasharray="1 1" strokeDashoffset="1" opacity="0">
          <animate attributeName="stroke-dashoffset" values="1;1;0;0" keyTimes="0;0.1729;0.2635;1" calcMode="spline" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1" dur="7.229s" repeatCount="indefinite" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.1729;0.1978;0.9;0.9249;1" dur="7.229s" repeatCount="indefinite" />
        </path>
        <g opacity="0">
          <path d="M435.25 404.88 L440 412 L444.75 404.88" fill="none" stroke="#60a5fa" strokeOpacity="0.7" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.2635;0.2884;0.9;0.9249;1" dur="7.229s" repeatCount="indefinite" />
        </g>
      </g>
      <g id={`${uid}-e-e2`}>
        <path d="M539 199.59 L539 303 Q539 311 531 311 L471 311 Q463 311 463 319 L463 412" fill="none" stroke="#ffffff" strokeOpacity="0.25" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M543.75 206.12 L539 199 L534.25 206.12" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M539 199.59 L539 303 Q539 311 531 311 L471 311 Q463 311 463 319 L463 412" fill="none" stroke="#60a5fa" strokeOpacity="0.5" strokeWidth="1.42" strokeLinecap="round" strokeLinejoin="round" pathLength="1" strokeDasharray="1 1" strokeDashoffset="-1" opacity="0">
          <animate attributeName="stroke-dashoffset" values="-1;-1;0;0" keyTimes="0;0.2967;0.402;1" calcMode="spline" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1" dur="7.229s" repeatCount="indefinite" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.2967;0.3216;0.9;0.9249;1" dur="7.229s" repeatCount="indefinite" />
        </path>
        <g opacity="0">
          <path d="M543.75 206.12 L539 199 L534.25 206.12" fill="none" stroke="#60a5fa" strokeOpacity="0.7" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.402;0.4269;0.9;0.9249;1" dur="7.229s" repeatCount="indefinite" />
        </g>
      </g>
      <g id={`${uid}-e-e3`}>
        <path d="M440 500 L440 655.41" fill="none" stroke="#ffffff" strokeOpacity="0.25" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M435.25 648.88 L440 656 L444.75 648.88" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M440 500 L440 655.41" fill="none" stroke="#60a5fa" strokeOpacity="0.5" strokeWidth="1.42" strokeLinecap="round" strokeLinejoin="round" pathLength="1" strokeDasharray="1 1" strokeDashoffset="1" opacity="0">
          <animate attributeName="stroke-dashoffset" values="1;1;0;0" keyTimes="0;0.4352;0.492;1" calcMode="spline" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1" dur="7.229s" repeatCount="indefinite" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.4352;0.4601;0.9;0.9249;1" dur="7.229s" repeatCount="indefinite" />
        </path>
        <g opacity="0">
          <path d="M435.25 648.88 L440 656 L444.75 648.88" fill="none" stroke="#60a5fa" strokeOpacity="0.7" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.492;0.5169;0.9;0.9249;1" dur="7.229s" repeatCount="indefinite" />
        </g>
      </g>
      <g id={`${uid}-e-e4`}>
        <path d="M440 727 L440 774 Q440 782 432 782 L250 782 Q242 782 242 790 L242 915.41" fill="none" stroke="#ffffff" strokeOpacity="0.25" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M237.25 908.88 L242 916 L246.75 908.88" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M440 727 L440 774 Q440 782 432 782 L250 782 Q242 782 242 790 L242 915.41" fill="none" stroke="#60a5fa" strokeOpacity="0.5" strokeWidth="1.42" strokeLinecap="round" strokeLinejoin="round" pathLength="1" strokeDasharray="1 1" strokeDashoffset="1" opacity="0">
          <animate attributeName="stroke-dashoffset" values="1;1;0;0" keyTimes="0;0.5252;0.6636;1" calcMode="spline" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1" dur="7.229s" repeatCount="indefinite" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.5252;0.5501;0.9;0.9249;1" dur="7.229s" repeatCount="indefinite" />
        </path>
        <g opacity="0">
          <path d="M237.25 908.88 L242 916 L246.75 908.88" fill="none" stroke="#60a5fa" strokeOpacity="0.7" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.6636;0.6885;0.9;0.9249;1" dur="7.229s" repeatCount="indefinite" />
        </g>
      </g>
      <g id={`${uid}-e-e5`}>
        <path d="M242 1004 L242 1219.41" fill="none" stroke="#ffffff" strokeOpacity="0.25" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M237.25 1212.88 L242 1220 L246.75 1212.88" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M242 1004 L242 1219.41" fill="none" stroke="#60a5fa" strokeOpacity="0.5" strokeWidth="1.42" strokeLinecap="round" strokeLinejoin="round" pathLength="1" strokeDasharray="1 1" strokeDashoffset="1" opacity="0">
          <animate attributeName="stroke-dashoffset" values="1;1;0;0" keyTimes="0;0.6968;0.7755;1" calcMode="spline" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1" dur="7.229s" repeatCount="indefinite" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.6968;0.7217;0.9;0.9249;1" dur="7.229s" repeatCount="indefinite" />
        </path>
        <g opacity="0">
          <path d="M237.25 1212.88 L242 1220 L246.75 1212.88" fill="none" stroke="#60a5fa" strokeOpacity="0.7" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.7755;0.8004;0.9;0.9249;1" dur="7.229s" repeatCount="indefinite" />
        </g>
      </g>
      <g id={`${uid}-e-e6`}>
        <path d="M440 727 L440 864 Q440 872 432 872 L411 872 Q403 872 403 880 L403 915.41" fill="none" stroke="#ffffff" strokeOpacity="0.25" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M398.25 908.88 L403 916 L407.75 908.88" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
      </g>
      <g id={`${uid}-e-e7`}>
        <path d="M440 500 L440 522 Q440 530 432 530 L330 530 Q322 530 322 538 L322 655.41" fill="none" stroke="#ffffff" strokeOpacity="0.25" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M317.25 648.88 L322 656 L326.75 648.88" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
      </g>
      <g id={`${uid}-e-e8`}>
        <path d="M440 500 L440 522 Q440 530 448 530 L551 530 Q559 530 559 538 L559 655.41" fill="none" stroke="#ffffff" strokeOpacity="0.25" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M554.25 648.88 L559 656 L563.75 648.88" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
      </g>
      <g id={`${uid}-e-e9`}>
        <path d="M322 727 L322 764 Q322 772 314 772 L91 772 Q83 772 83 780 L83 915.41" fill="none" stroke="#ffffff" strokeOpacity="0.25" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" strokeDasharray="4.75 3.56" />
        <path d="M78.25 908.88 L83 916 L87.75 908.88" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
      </g>
      <g id={`${uid}-e-e10`}>
        <path d="M83 1004 L83 1227.91" fill="none" stroke="#ffffff" strokeOpacity="0.25" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M78.25 1221.38 L83 1228.5 L87.75 1221.38" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
      </g>
      <g id={`${uid}-e-e11`}>
        <path d="M559 727 L559 915.41" fill="none" stroke="#ffffff" strokeOpacity="0.25" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M554.25 908.88 L559 916 L563.75 908.88" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
      </g>
      <g id={`${uid}-e-e12`}>
        <path d="M564 1004 L564 1227.91" fill="none" stroke="#ffffff" strokeOpacity="0.25" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
        <path d="M559.25 1221.38 L564 1228.5 L568.75 1221.38" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
      </g>
      <g id={`${uid}-e-e13`}>
        <path d="M463 500 L463 512 Q463 520 471 520 L608 520 Q616 520 616 528 L616 764 Q616 772 624 772 L706 772 Q714 772 714 780 L714 923.91" fill="none" stroke="#ffffff" strokeOpacity="0.25" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" strokeDasharray="1.19 2.97" />
        <path d="M709.25 917.38 L714 924.5 L718.75 917.38" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
      </g>
      <g id={`${uid}-e-e14`}>
        <path d="M714 995.5 L714 1067.41" fill="none" stroke="#ffffff" strokeOpacity="0.25" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" strokeDasharray="1.19 2.97" />
        <path d="M709.25 1060.88 L714 1068 L718.75 1060.88" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeLinejoin="round" />
      </g>
      <g id={`${uid}-el-e1`}>
        <rect x="449" y="263" width="52" height="28" rx="3" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.1" strokeWidth="1.19" />
        <text fontSize="9.25" fontWeight="700" letterSpacing="0.55" fill="#979899" textAnchor="middle">
          <tspan x="475.28" y="280.28">
            PROMPT
          </tspan>
        </text>
        <g opacity="0">
          <rect x="449" y="263" width="52" height="28" rx="3" fill="#0b1012" stroke="#60a5fa" strokeOpacity="0.5" strokeWidth="1.19" />
          <text fontSize="9.25" fontWeight="700" letterSpacing="0.55" fill="#60a5fa" textAnchor="middle">
            <tspan x="475.28" y="280.28">
              PROMPT
            </tspan>
          </text>
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.1729;0.1978;0.9;0.9249;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <circle cx="431" cy="277" r="14" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <text fontSize="13" fontWeight="700" fill="#9d9fa0" textAnchor="middle">
          <tspan x="431" y="281.62">
            1
          </tspan>
        </text>
        <g transform="translate(431 277)">
          <g opacity="0">
            <circle r="14" fill="#60a5fa" />
            <text fontSize="13" fontWeight="700" fill="#0b1012" textAnchor="middle">
              <tspan x="0" y="4.62">
                1
              </tspan>
            </text>
            <animate attributeName="opacity" values="0;0;1;1;1;0;0" keyTimes="0;0.1729;0.1978;0.2227;0.9;0.94;1" dur="7.229s" repeatCount="indefinite" />
            <animateTransform attributeName="transform" type="scale" values="0.4;0.4;1.3;1;1;1;0.4" keyTimes="0;0.1729;0.1978;0.2227;0.9;0.94;1" dur="7.229s" repeatCount="indefinite" />
          </g>
        </g>
      </g>
      <g id={`${uid}-el-e2`}>
        <rect x="576" y="263" width="108" height="28" rx="3" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.1" strokeWidth="1.19" />
        <text fontSize="9.25" fontWeight="700" letterSpacing="0.55" fill="#979899" textAnchor="middle">
          <tspan x="630.28" y="280.28">
            MESSAGES + TOOLS
          </tspan>
        </text>
        <g opacity="0">
          <rect x="576" y="263" width="108" height="28" rx="3" fill="#0b1012" stroke="#60a5fa" strokeOpacity="0.5" strokeWidth="1.19" />
          <text fontSize="9.25" fontWeight="700" letterSpacing="0.55" fill="#60a5fa" textAnchor="middle">
            <tspan x="630.28" y="280.28">
              MESSAGES + TOOLS
            </tspan>
          </text>
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.2967;0.3216;0.9;0.9249;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <circle cx="558" cy="277" r="14" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <text fontSize="13" fontWeight="700" fill="#9d9fa0" textAnchor="middle">
          <tspan x="558" y="281.62">
            2
          </tspan>
        </text>
        <g transform="translate(558 277)">
          <g opacity="0">
            <circle r="14" fill="#60a5fa" />
            <text fontSize="13" fontWeight="700" fill="#0b1012" textAnchor="middle">
              <tspan x="0" y="4.62">
                2
              </tspan>
            </text>
            <animate attributeName="opacity" values="0;0;1;1;1;0;0" keyTimes="0;0.2967;0.3216;0.3465;0.9;0.94;1" dur="7.229s" repeatCount="indefinite" />
            <animateTransform attributeName="transform" type="scale" values="0.4;0.4;1.3;1;1;1;0.4" keyTimes="0;0.2967;0.3216;0.3465;0.9;0.94;1" dur="7.229s" repeatCount="indefinite" />
          </g>
        </g>
      </g>
      <g id={`${uid}-el-e3`}>
        <rect x="477" y="564" width="62" height="28" rx="3" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.1" strokeWidth="1.19" />
        <text fontSize="8.25" fontWeight="700" letterSpacing="0.5" fill="#979899" textAnchor="middle">
          <tspan x="508.25" y="580.93">
            TOOLS/CALL
          </tspan>
        </text>
        <g opacity="0">
          <rect x="477" y="564" width="62" height="28" rx="3" fill="#0b1012" stroke="#60a5fa" strokeOpacity="0.5" strokeWidth="1.19" />
          <text fontSize="8.25" fontWeight="700" letterSpacing="0.5" fill="#60a5fa" textAnchor="middle">
            <tspan x="508.25" y="580.93">
              TOOLS/CALL
            </tspan>
          </text>
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.4352;0.4601;0.9;0.9249;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <circle cx="459" cy="578" r="14" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <text fontSize="13" fontWeight="700" fill="#9d9fa0" textAnchor="middle">
          <tspan x="459" y="582.62">
            3
          </tspan>
        </text>
        <g transform="translate(459 578)">
          <g opacity="0">
            <circle r="14" fill="#60a5fa" />
            <text fontSize="13" fontWeight="700" fill="#0b1012" textAnchor="middle">
              <tspan x="0" y="4.62">
                3
              </tspan>
            </text>
            <animate attributeName="opacity" values="0;0;1;1;1;0;0" keyTimes="0;0.4352;0.4601;0.485;0.9;0.94;1" dur="7.229s" repeatCount="indefinite" />
            <animateTransform attributeName="transform" type="scale" values="0.4;0.4;1.3;1;1;1;0.4" keyTimes="0;0.4352;0.4601;0.485;0.9;0.94;1" dur="7.229s" repeatCount="indefinite" />
          </g>
        </g>
      </g>
      <g id={`${uid}-el-e4`}>
        <rect x="279" y="816" width="151" height="36" rx="3" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.1" strokeWidth="1.19" />
        <text fontSize="9.25" fontWeight="700" letterSpacing="0.55" fill="#979899" textAnchor="middle">
          <tspan x="354.78" y="828.28">
            STREAMABLE HTTP, BEARER
          </tspan>
          <tspan x="354.78" y="846.28">
            TOKEN
          </tspan>
        </text>
        <g opacity="0">
          <rect x="279" y="816" width="151" height="36" rx="3" fill="#0b1012" stroke="#60a5fa" strokeOpacity="0.5" strokeWidth="1.19" />
          <text fontSize="9.25" fontWeight="700" letterSpacing="0.55" fill="#60a5fa" textAnchor="middle">
            <tspan x="354.78" y="828.28">
              STREAMABLE HTTP, BEARER
            </tspan>
            <tspan x="354.78" y="846.28">
              TOKEN
            </tspan>
          </text>
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.5252;0.5501;0.9;0.9249;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <circle cx="261" cy="834" r="14" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <text fontSize="13" fontWeight="700" fill="#9d9fa0" textAnchor="middle">
          <tspan x="261" y="838.62">
            4
          </tspan>
        </text>
        <g transform="translate(261 834)">
          <g opacity="0">
            <circle r="14" fill="#60a5fa" />
            <text fontSize="13" fontWeight="700" fill="#0b1012" textAnchor="middle">
              <tspan x="0" y="4.62">
                4
              </tspan>
            </text>
            <animate attributeName="opacity" values="0;0;1;1;1;0;0" keyTimes="0;0.5252;0.5501;0.575;0.9;0.94;1" dur="7.229s" repeatCount="indefinite" />
            <animateTransform attributeName="transform" type="scale" values="0.4;0.4;1.3;1;1;1;0.4" keyTimes="0;0.5252;0.5501;0.575;0.9;0.94;1" dur="7.229s" repeatCount="indefinite" />
          </g>
        </g>
      </g>
      <g id={`${uid}-el-e5`}>
        <rect x="279" y="1098" width="63" height="28" rx="3" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.1" strokeWidth="1.19" />
        <text fontSize="9.25" fontWeight="700" letterSpacing="0.55" fill="#979899" textAnchor="middle">
          <tspan x="310.78" y="1115.28">
            REST API
          </tspan>
        </text>
        <g opacity="0">
          <rect x="279" y="1098" width="63" height="28" rx="3" fill="#0b1012" stroke="#60a5fa" strokeOpacity="0.5" strokeWidth="1.19" />
          <text fontSize="9.25" fontWeight="700" letterSpacing="0.55" fill="#60a5fa" textAnchor="middle">
            <tspan x="310.78" y="1115.28">
              REST API
            </tspan>
          </text>
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.6968;0.7217;0.9;0.9249;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <circle cx="261" cy="1112" r="14" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <text fontSize="13" fontWeight="700" fill="#9d9fa0" textAnchor="middle">
          <tspan x="261" y="1116.62">
            5
          </tspan>
        </text>
        <g transform="translate(261 1112)">
          <g opacity="0">
            <circle r="14" fill="#60a5fa" />
            <text fontSize="13" fontWeight="700" fill="#0b1012" textAnchor="middle">
              <tspan x="0" y="4.62">
                5
              </tspan>
            </text>
            <animate attributeName="opacity" values="0;0;1;1;1;0;0" keyTimes="0;0.6968;0.7217;0.7466;0.9;0.94;1" dur="7.229s" repeatCount="indefinite" />
            <animateTransform attributeName="transform" type="scale" values="0.4;0.4;1.3;1;1;1;0.4" keyTimes="0;0.6968;0.7217;0.7466;0.9;0.94;1" dur="7.229s" repeatCount="indefinite" />
          </g>
        </g>
      </g>
      <g id={`${uid}-el-e6`}>
        <rect x="445" y="823.5" width="109" height="21" rx="3" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.1" strokeWidth="1.19" />
        <text fontSize="9.25" fontWeight="700" letterSpacing="0.55" fill="#979899" textAnchor="middle">
          <tspan x="499.78" y="837.28">
            OAUTH 2.1 + PKCE
          </tspan>
        </text>
      </g>
      <g id={`${uid}-el-e9`}>
        <rect x="88" y="823.5" width="39" height="21" rx="3" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.1" strokeWidth="1.19" />
        <text fontSize="9.25" fontWeight="700" letterSpacing="0.55" fill="#979899" textAnchor="middle">
          <tspan x="107.78" y="837.28">
            STDIO
          </tspan>
        </text>
      </g>
      <g id={`${uid}-el-e10`}>
        <rect x="88" y="1101.5" width="91" height="21" rx="3" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.1" strokeWidth="1.19" />
        <text fontSize="9" fontWeight="700" letterSpacing="0.54" fill="#979899" textAnchor="middle">
          <tspan x="133.77" y="1115.2">
            READ AND WRITE
          </tspan>
        </text>
      </g>
      <g id={`${uid}-el-e11`}>
        <rect x="569" y="823.5" width="108" height="21" rx="3" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.1" strokeWidth="1.19" />
        <text fontSize="9.25" fontWeight="700" letterSpacing="0.55" fill="#979899" textAnchor="middle">
          <tspan x="623.28" y="837.28">
            STREAMABLE HTTP
          </tspan>
        </text>
      </g>
      <g id={`${uid}-el-e12`}>
        <rect x="569" y="1101.5" width="35" height="21" rx="3" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.1" strokeWidth="1.19" />
        <text fontSize="9.25" fontWeight="700" letterSpacing="0.55" fill="#979899" textAnchor="middle">
          <tspan x="586.78" y="1115.28">
            SQL
          </tspan>
        </text>
      </g>
      <g id={`${uid}-el-e13`}>
        <rect x="719" y="823.5" width="80" height="21" rx="3" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.1" strokeWidth="1.19" />
        <text fontSize="9.25" fontWeight="700" letterSpacing="0.55" fill="#979899" textAnchor="middle">
          <tspan x="759.28" y="837.28">
            OTLP TRACES
          </tspan>
        </text>
      </g>
      <g id={`${uid}-gh-host`}>
        <rect x="272" y="369" width="199.4" height="18.9" rx="3" fill="#0b1012" />
        <text fontSize="11" fontWeight="700" letterSpacing="1.1" fill="#649adb">
          <tspan x="276" y="382.35">
            MCP HOST (AI APPLICATION)
          </tspan>
        </text>
      </g>
      <g id={`${uid}-n-dev`}>
        <rect x="388" y="103.5" width="48" height="48" rx="8.16" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="388" y="103.5" width="48" height="48" rx="8.16" fill="#60a5fa" fillOpacity="0.15" stroke="#60a5fa" strokeOpacity="0.65" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0968;0.1217;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <use href={`#${uid}-s1`} x="397.6" y="113.1" width="28.8" height="28.8" />
        <text fontSize="11" fontWeight="700" letterSpacing="0.88" fill="#9d9fa0" textAnchor="middle">
          <tspan x="412.44" y="169.86">
            DEVELOPER
          </tspan>
        </text>
        <text fontSize="10" fontWeight="400" fill="#979a9b" textAnchor="middle">
          <tspan x="412.01" y="187.2">
            IDE or terminal
          </tspan>
        </text>
      </g>
      <g id={`${uid}-n-agent`}>
        <rect x="427.5" y="412" width="48" height="48" rx="8.16" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="427.5" y="412" width="48" height="48" rx="8.16" fill="#60a5fa" fillOpacity="0.15" stroke="#60a5fa" strokeOpacity="0.65" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0968;0.1217;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <use href={`#${uid}-s2`} x="437.1" y="421.6" width="28.8" height="28.8" />
        <text fontSize="11" fontWeight="700" letterSpacing="0.88" fill="#9d9fa0" textAnchor="middle">
          <tspan x="451.95" y="478.35">
            AGENT LOOP
          </tspan>
        </text>
        <text fontSize="10" fontWeight="400" fill="#979a9b" textAnchor="middle">
          <tspan x="451.51" y="495.7">
            Tool registry
          </tspan>
        </text>
      </g>
      <g id={`${uid}-n-client-fs`}>
        <rect x="298" y="656" width="48" height="48" rx="8.16" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="298" y="656" width="48" height="48" rx="8.16" fill="#60a5fa" fillOpacity="0.15" stroke="#60a5fa" strokeOpacity="0.65" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0968;0.1217;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <use href={`#${uid}-s3`} x="307.6" y="665.6" width="28.8" height="28.8" />
        <text fontSize="11" fontWeight="700" letterSpacing="0.88" fill="#9d9fa0" textAnchor="middle">
          <tspan x="322.44" y="722.36">
            MCP CLIENT 1
          </tspan>
        </text>
      </g>
      <g id={`${uid}-n-client-gh`}>
        <rect x="415.5" y="656" width="48" height="48" rx="8.16" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="415.5" y="656" width="48" height="48" rx="8.16" fill="#60a5fa" fillOpacity="0.15" stroke="#60a5fa" strokeOpacity="0.65" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0968;0.1217;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <use href={`#${uid}-s3`} x="425.1" y="665.6" width="28.8" height="28.8" />
        <text fontSize="11" fontWeight="700" letterSpacing="0.88" fill="#9d9fa0" textAnchor="middle">
          <tspan x="439.94" y="722.36">
            MCP CLIENT 2
          </tspan>
        </text>
      </g>
      <g id={`${uid}-n-client-db`}>
        <rect x="534.5" y="656" width="48" height="48" rx="8.16" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="534.5" y="656" width="48" height="48" rx="8.16" fill="#60a5fa" fillOpacity="0.15" stroke="#60a5fa" strokeOpacity="0.65" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0968;0.1217;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <use href={`#${uid}-s3`} x="544.1" y="665.6" width="28.8" height="28.8" />
        <text fontSize="11" fontWeight="700" letterSpacing="0.88" fill="#9d9fa0" textAnchor="middle">
          <tspan x="558.94" y="722.36">
            MCP CLIENT 3
          </tspan>
        </text>
      </g>
      <g id={`${uid}-n-claude`}>
        <rect x="515" y="96" width="48" height="48" rx="8.16" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="515" y="96" width="48" height="48" rx="8.16" fill="#60a5fa" fillOpacity="0.15" stroke="#60a5fa" strokeOpacity="0.65" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0968;0.1217;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <use href={`#${uid}-s4`} x="525.08" y="106.08" width="27.84" height="27.84" filter={`url(#${uid}-f1)`} />
        <text fontSize="11" fontWeight="700" letterSpacing="0.88" fill="#9d9fa0" textAnchor="middle">
          <tspan x="539.44" y="162.35">
            CLAUDE
          </tspan>
        </text>
        <text fontSize="10" fontWeight="400" fill="#979a9b" textAnchor="middle">
          <tspan x="539" y="179.7">
            Anthropic API or
          </tspan>
          <tspan x="539" y="194.7">
            Amazon Bedrock
          </tspan>
        </text>
      </g>
      <g id={`${uid}-n-fs`}>
        <rect x="58.5" y="916" width="48" height="48" rx="8.16" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="58.5" y="916" width="48" height="48" rx="8.16" fill="#60a5fa" fillOpacity="0.15" stroke="#60a5fa" strokeOpacity="0.65" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0968;0.1217;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <use href={`#${uid}-s5`} x="68.1" y="925.6" width="28.8" height="28.8" />
        <text fontSize="10.5" fontWeight="700" letterSpacing="0.84" fill="#9d9fa0" textAnchor="middle">
          <tspan x="82.92" y="982.18">
            FILESYSTEM SERVER
          </tspan>
        </text>
        <text fontSize="10" fontWeight="400" fill="#979a9b" textAnchor="middle">
          <tspan x="82.5" y="999.7">
            Local subprocess
          </tspan>
        </text>
      </g>
      <g id={`${uid}-n-files`}>
        <rect x="58.5" y="1228.5" width="48" height="48" rx="8.16" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="58.5" y="1228.5" width="48" height="48" rx="8.16" fill="#60a5fa" fillOpacity="0.15" stroke="#60a5fa" strokeOpacity="0.65" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0968;0.1217;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <use href={`#${uid}-s6`} x="68.1" y="1238.1" width="28.8" height="28.8" />
        <text fontSize="9.75" fontWeight="700" letterSpacing="0.78" fill="#9d9fa0" textAnchor="middle">
          <tspan x="82.89" y="1294.41">
            PROJECT FILES
          </tspan>
        </text>
      </g>
      <g id={`${uid}-n-gh`}>
        <rect x="217.5" y="916" width="48" height="48" rx="8.16" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="217.5" y="916" width="48" height="48" rx="8.16" fill="#60a5fa" fillOpacity="0.15" stroke="#60a5fa" strokeOpacity="0.65" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0968;0.1217;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <use href={`#${uid}-s5`} x="227.1" y="925.6" width="28.8" height="28.8" />
        <text fontSize="11" fontWeight="700" letterSpacing="0.88" fill="#9d9fa0" textAnchor="middle">
          <tspan x="241.94" y="982.36">
            GITHUB MCP SERVER
          </tspan>
        </text>
        <text fontSize="10" fontWeight="400" fill="#979a9b" textAnchor="middle">
          <tspan x="241.5" y="999.7">
            Remote, GitHub-hosted
          </tspan>
        </text>
      </g>
      <g id={`${uid}-n-oauth`}>
        <rect x="378.5" y="916" width="48" height="48" rx="8.16" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="378.5" y="916" width="48" height="48" rx="8.16" fill="#60a5fa" fillOpacity="0.15" stroke="#60a5fa" strokeOpacity="0.65" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0968;0.1217;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <use href={`#${uid}-s7`} x="388.1" y="925.6" width="28.8" height="28.8" />
        <text fontSize="11" fontWeight="700" letterSpacing="0.88" fill="#9d9fa0" textAnchor="middle">
          <tspan x="402.94" y="982.36">
            GITHUB OAUTH
          </tspan>
        </text>
        <text fontSize="10" fontWeight="400" fill="#979a9b" textAnchor="middle">
          <tspan x="402.51" y="999.7">
            Authorization server
          </tspan>
        </text>
      </g>
      <g id={`${uid}-n-ghapi`}>
        <rect x="217.5" y="1220" width="48" height="48" rx="8.16" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="217.5" y="1220" width="48" height="48" rx="8.16" fill="#60a5fa" fillOpacity="0.15" stroke="#60a5fa" strokeOpacity="0.65" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0968;0.1217;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <use href={`#${uid}-s8`} x="227.1" y="1229.6" width="28.8" height="28.8" />
        <text fontSize="11" fontWeight="700" letterSpacing="0.88" fill="#9d9fa0" textAnchor="middle">
          <tspan x="241.95" y="1286.36">
            GITHUB
          </tspan>
        </text>
        <text fontSize="10" fontWeight="400" fill="#979a9b" textAnchor="middle">
          <tspan x="241.5" y="1303.7">
            Repos, issues, PRs
          </tspan>
        </text>
      </g>
      <g id={`${uid}-n-pg`}>
        <rect x="539.5" y="916" width="48" height="48" rx="8.16" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="539.5" y="916" width="48" height="48" rx="8.16" fill="#60a5fa" fillOpacity="0.15" stroke="#60a5fa" strokeOpacity="0.65" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0968;0.1217;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <use href={`#${uid}-s5`} x="549.1" y="925.6" width="28.8" height="28.8" />
        <text fontSize="11" fontWeight="700" letterSpacing="0.88" fill="#9d9fa0" textAnchor="middle">
          <tspan x="563.95" y="982.36">
            POSTGRES MCP SERVER
          </tspan>
        </text>
        <text fontSize="10" fontWeight="400" fill="#979a9b" textAnchor="middle">
          <tspan x="563.51" y="999.7">
            Remote, team-hosted
          </tspan>
        </text>
      </g>
      <g id={`${uid}-n-db`}>
        <rect x="540" y="1228.5" width="48" height="48" rx="8.16" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="540" y="1228.5" width="48" height="48" rx="8.16" fill="#60a5fa" fillOpacity="0.15" stroke="#60a5fa" strokeOpacity="0.65" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0968;0.1217;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <use href={`#${uid}-s9`} x="549.12" y="1237.62" width="29.76" height="29.76" filter={`url(#${uid}-f2)`} />
        <text fontSize="11" fontWeight="700" letterSpacing="0.88" fill="#9d9fa0" textAnchor="middle">
          <tspan x="564.44" y="1294.86">
            POSTGRESQL
          </tspan>
        </text>
      </g>
      <g id={`${uid}-n-otel`}>
        <rect x="689.5" y="924.5" width="48" height="48" rx="8.16" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="689.5" y="924.5" width="48" height="48" rx="8.16" fill="#60a5fa" fillOpacity="0.15" stroke="#60a5fa" strokeOpacity="0.65" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0968;0.1217;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <use href={`#${uid}-s10`} x="699.58" y="934.58" width="27.84" height="27.84" filter={`url(#${uid}-f1)`} />
        <text fontSize="10.75" fontWeight="700" letterSpacing="0.86" fill="#9d9fa0" textAnchor="middle">
          <tspan x="713.93" y="990.77">
            OTEL COLLECTOR
          </tspan>
        </text>
      </g>
      <g id={`${uid}-n-grafana`}>
        <rect x="689.5" y="1068" width="48" height="48" rx="8.16" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.16" strokeWidth="1.19" />
        <g opacity="0">
          <rect x="689.5" y="1068" width="48" height="48" rx="8.16" fill="#60a5fa" fillOpacity="0.15" stroke="#60a5fa" strokeOpacity="0.65" strokeWidth="1.19" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.0968;0.1217;0.9151;0.94;1" dur="7.229s" repeatCount="indefinite" />
        </g>
        <use href={`#${uid}-s11`} x="699.58" y="1078.08" width="27.84" height="27.84" filter={`url(#${uid}-f1)`} />
        <text fontSize="11" fontWeight="700" letterSpacing="0.88" fill="#9d9fa0" textAnchor="middle">
          <tspan x="713.95" y="1134.36">
            GRAFANA CLOUD
          </tspan>
        </text>
        <text fontSize="10" fontWeight="400" fill="#979a9b" textAnchor="middle">
          <tspan x="713.5" y="1151.7">
            Traces and dashboards
          </tspan>
        </text>
      </g>
      <g id={`${uid}-story`}>
        <path d="M412 191.5 L412 303 Q412 311 420 311 L432 311 Q440 311 440 319 L440 411.41" fill="none" stroke="#60a5fa" strokeOpacity="0.6" strokeWidth="2.85" pathLength="1" strokeDasharray="0.12 2" strokeDashoffset="0.12" opacity="0">
          <animate attributeName="stroke-dashoffset" values="0.12;0.12;-0.88;-1;-1" keyTimes="0;0.1729;0.2635;0.2747;1" calcMode="spline" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1;0 0 1 1" dur="7.229s" repeatCount="indefinite" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.1729;0.1743;0.2747;0.2761;1" dur="7.229s" repeatCount="indefinite" />
        </path>
        <circle r="2.97" fill="#60a5fa" opacity="0">
          <animateMotion path="M412 191.5 L412 303 Q412 311 420 311 L432 311 Q440 311 440 319 L440 411.41" dur="7.229s" repeatCount="indefinite" calcMode="spline" keyPoints="0;0;1;1" keyTimes="0;0.1729;0.2635;1" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.1522;0.1729;0.2967;0.3174;1" dur="7.229s" repeatCount="indefinite" />
        </circle>
        <path d="M539 199.59 L539 303 Q539 311 531 311 L471 311 Q463 311 463 319 L463 412" fill="none" stroke="#60a5fa" strokeOpacity="0.6" strokeWidth="2.85" pathLength="1" strokeDasharray="0.11 2" strokeDashoffset="-1" opacity="0">
          <animate attributeName="stroke-dashoffset" values="-1;-1;0;0.11;0.11" keyTimes="0;0.2967;0.402;0.4133;1" calcMode="spline" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1;0 0 1 1" dur="7.229s" repeatCount="indefinite" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.2967;0.2981;0.4133;0.4146;1" dur="7.229s" repeatCount="indefinite" />
        </path>
        <circle r="2.97" fill="#60a5fa" opacity="0">
          <animateMotion path="M539 199.59 L539 303 Q539 311 531 311 L471 311 Q463 311 463 319 L463 412" dur="7.229s" repeatCount="indefinite" calcMode="spline" keyPoints="1;1;0;0" keyTimes="0;0.2967;0.402;1" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.2759;0.2967;0.4352;0.4559;1" dur="7.229s" repeatCount="indefinite" />
        </circle>
        <path d="M440 500 L440 655.41" fill="none" stroke="#60a5fa" strokeOpacity="0.6" strokeWidth="2.85" pathLength="1" strokeDasharray="0.2 2" strokeDashoffset="0.2" opacity="0">
          <animate attributeName="stroke-dashoffset" values="0.2;0.2;-0.8;-1;-1" keyTimes="0;0.4352;0.492;0.5033;1" calcMode="spline" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1;0 0 1 1" dur="7.229s" repeatCount="indefinite" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.4352;0.4366;0.5033;0.5047;1" dur="7.229s" repeatCount="indefinite" />
        </path>
        <circle r="2.97" fill="#60a5fa" opacity="0">
          <animateMotion path="M440 500 L440 655.41" dur="7.229s" repeatCount="indefinite" calcMode="spline" keyPoints="0;0;1;1" keyTimes="0;0.4352;0.492;1" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.4144;0.4352;0.5252;0.546;1" dur="7.229s" repeatCount="indefinite" />
        </circle>
        <path d="M440 727 L440 774 Q440 782 432 782 L250 782 Q242 782 242 790 L242 915.41" fill="none" stroke="#60a5fa" strokeOpacity="0.6" strokeWidth="2.85" pathLength="1" strokeDasharray="0.08 2" strokeDashoffset="0.08" opacity="0">
          <animate attributeName="stroke-dashoffset" values="0.08;0.08;-0.92;-1;-1" keyTimes="0;0.5252;0.6636;0.6746;1" calcMode="spline" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1;0 0 1 1" dur="7.229s" repeatCount="indefinite" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.5252;0.5266;0.6746;0.676;1" dur="7.229s" repeatCount="indefinite" />
        </path>
        <circle r="2.97" fill="#60a5fa" opacity="0">
          <animateMotion path="M440 727 L440 774 Q440 782 432 782 L250 782 Q242 782 242 790 L242 915.41" dur="7.229s" repeatCount="indefinite" calcMode="spline" keyPoints="0;0;1;1" keyTimes="0;0.5252;0.6636;1" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.5045;0.5252;0.6968;0.7175;1" dur="7.229s" repeatCount="indefinite" />
        </circle>
        <path d="M242 1004 L242 1219.41" fill="none" stroke="#60a5fa" strokeOpacity="0.6" strokeWidth="2.85" pathLength="1" strokeDasharray="0.14 2" strokeDashoffset="0.14" opacity="0">
          <animate attributeName="stroke-dashoffset" values="0.14;0.14;-0.86;-1;-1" keyTimes="0;0.6968;0.7755;0.7868;1" calcMode="spline" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1;0 0 1 1" dur="7.229s" repeatCount="indefinite" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.6968;0.6982;0.7868;0.7881;1" dur="7.229s" repeatCount="indefinite" />
        </path>
        <circle r="2.97" fill="#60a5fa" opacity="0">
          <animateMotion path="M242 1004 L242 1219.41" dur="7.229s" repeatCount="indefinite" calcMode="spline" keyPoints="0;0;1;1" keyTimes="0;0.6968;0.7755;1" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.676;0.6968;0.7755;0.7962;1" dur="7.229s" repeatCount="indefinite" />
        </circle>
        <circle r="2.37" fill="#60a5fa" opacity="0">
          <animateMotion path="M440 727 L440 864 Q440 872 432 872 L411 872 Q403 872 403 880 L403 915.41" dur="7.229s" repeatCount="indefinite" calcMode="spline" keyPoints="0;0;1;1" keyTimes="0;0.4441;0.5264;1" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.4233;0.4441;0.5264;0.5472;1" dur="7.229s" repeatCount="indefinite" />
        </circle>
        <circle r="2.37" fill="#60a5fa" opacity="0">
          <animateMotion path="M440 500 L440 522 Q440 530 432 530 L330 530 Q322 530 322 538 L322 655.41" dur="7.229s" repeatCount="indefinite" calcMode="spline" keyPoints="0;0;1;1" keyTimes="0;0.6249;0.7247;1" keySplines="0 0 1 1;0.65 0 0.35 1;0 0 1 1" />
          <animate attributeName="opacity" values="0;0;1;1;0;0" keyTimes="0;0.6041;0.6249;0.7247;0.7454;1" dur="7.229s" repeatCount="indefinite" />
        </circle>
      </g>
      <g id={`${uid}-legend`}>
        <rect x="876" y="1320" width="140" height="71" rx="6" fill="#0b1012" stroke="#ffffff" strokeOpacity="0.1" strokeWidth="1.19" />
        <path d="M886 1337.5 H914" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" />
        <text fontSize="9.5" fontWeight="700" letterSpacing="0.57" fill="#9d9fa0">
          <tspan x="922" y="1340.87">
            REQUEST
          </tspan>
        </text>
        <path d="M886 1355.5 H914" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeDasharray="4.75 3.56" />
        <text fontSize="9" fontWeight="700" letterSpacing="0.54" fill="#9d9fa0">
          <tspan x="922" y="1358.7">
            MCP OVER STDIO
          </tspan>
        </text>
        <path d="M886 1373.5 H914" fill="none" stroke="#ffffff" strokeOpacity="0.4" strokeWidth="1.19" strokeLinecap="round" strokeDasharray="1.19 2.97" />
        <text fontSize="9.5" fontWeight="700" letterSpacing="0.57" fill="#9d9fa0">
          <tspan x="922" y="1376.87">
            TELEMETRY
          </tspan>
        </text>
      </g>
    </svg>
  );
}
