File: /home/alfouzantranspor/www/wp-content/plugins_backup/surerank/build/vendor-b47fabce/index.js
"use strict";(globalThis.webpackChunksurerank=globalThis.webpackChunksurerank||[]).push([[9526],{3365:(e,t,s)=>{s.d(t,{_:()=>Qe});var r=s(5281);const i="2025-06-18",o=[i,"2025-03-26","2024-11-05","2024-10-07"],n="2.0",a=r.KC([r.Yj(),r.ai().int()]),l=r.Yj(),d=r.Ik({progressToken:r.lq(a)}).passthrough(),u=r.Ik({_meta:r.lq(d)}).passthrough(),c=r.Ik({method:r.Yj(),params:r.lq(u)}),p=r.Ik({_meta:r.lq(r.Ik({}).passthrough())}).passthrough(),h=r.Ik({method:r.Yj(),params:r.lq(p)}),m=r.Ik({_meta:r.lq(r.Ik({}).passthrough())}).passthrough(),g=r.KC([r.Yj(),r.ai().int()]),f=r.Ik({jsonrpc:r.eu(n),id:g}).merge(c).strict(),v=r.Ik({jsonrpc:r.eu(n)}).merge(h).strict(),_=r.Ik({jsonrpc:r.eu(n),id:g,result:m}).strict(),q=e=>_.safeParse(e).success;var b;!function(e){e[e.ConnectionClosed=-32e3]="ConnectionClosed",e[e.RequestTimeout=-32001]="RequestTimeout",e[e.ParseError=-32700]="ParseError",e[e.InvalidRequest=-32600]="InvalidRequest",e[e.MethodNotFound=-32601]="MethodNotFound",e[e.InvalidParams=-32602]="InvalidParams",e[e.InternalError=-32603]="InternalError"}(b||(b={}));const I=r.Ik({jsonrpc:r.eu(n),id:g,error:r.Ik({code:r.ai().int(),message:r.Yj(),data:r.lq(r.L5())})}).strict(),w=(r.KC([f,v,_,I]),m.strict()),k=h.extend({method:r.eu("notifications/cancelled"),params:p.extend({requestId:g,reason:r.Yj().optional()})}),y=r.Ik({src:r.Yj(),mimeType:r.lq(r.Yj()),sizes:r.lq(r.Yj())}).passthrough(),R=r.Ik({name:r.Yj(),title:r.lq(r.Yj())}).passthrough(),C=R.extend({version:r.Yj(),websiteUrl:r.lq(r.Yj()),icons:r.lq(r.YO(y))}),T=r.Ik({experimental:r.lq(r.Ik({}).passthrough()),sampling:r.lq(r.Ik({}).passthrough()),elicitation:r.lq(r.Ik({}).passthrough()),roots:r.lq(r.Ik({listChanged:r.lq(r.zM())}).passthrough())}).passthrough(),j=c.extend({method:r.eu("initialize"),params:u.extend({protocolVersion:r.Yj(),capabilities:T,clientInfo:C})}),Y=r.Ik({experimental:r.lq(r.Ik({}).passthrough()),logging:r.lq(r.Ik({}).passthrough()),completions:r.lq(r.Ik({}).passthrough()),prompts:r.lq(r.Ik({listChanged:r.lq(r.zM())}).passthrough()),resources:r.lq(r.Ik({subscribe:r.lq(r.zM()),listChanged:r.lq(r.zM())}).passthrough()),tools:r.lq(r.Ik({listChanged:r.lq(r.zM())}).passthrough())}).passthrough(),x=m.extend({protocolVersion:r.Yj(),capabilities:Y,serverInfo:C,instructions:r.lq(r.Yj())}),H=h.extend({method:r.eu("notifications/initialized")}),P=c.extend({method:r.eu("ping")}),S=r.Ik({progress:r.ai(),total:r.lq(r.ai()),message:r.lq(r.Yj())}).passthrough(),E=h.extend({method:r.eu("notifications/progress"),params:p.merge(S).extend({progressToken:a})}),M=c.extend({params:u.extend({cursor:r.lq(l)}).optional()}),$=m.extend({nextCursor:r.lq(l)}),L=r.Ik({uri:r.Yj(),mimeType:r.lq(r.Yj()),_meta:r.lq(r.Ik({}).passthrough())}).passthrough(),O=L.extend({text:r.Yj()}),z=r.Yj().refine(e=>{try{return atob(e),!0}catch(t){return!1}},{message:"Invalid Base64 string"}),N=L.extend({blob:z}),K=R.extend({uri:r.Yj(),description:r.lq(r.Yj()),mimeType:r.lq(r.Yj()),icons:r.lq(r.YO(y)),_meta:r.lq(r.Ik({}).passthrough())}),V=R.extend({uriTemplate:r.Yj(),description:r.lq(r.Yj()),mimeType:r.lq(r.Yj()),_meta:r.lq(r.Ik({}).passthrough())}),A=M.extend({method:r.eu("resources/list")}),D=$.extend({resources:r.YO(K)}),F=M.extend({method:r.eu("resources/templates/list")}),U=$.extend({resourceTemplates:r.YO(V)}),G=c.extend({method:r.eu("resources/read"),params:u.extend({uri:r.Yj()})}),J=m.extend({contents:r.YO(r.KC([O,N]))}),W=h.extend({method:r.eu("notifications/resources/list_changed")}),B=c.extend({method:r.eu("resources/subscribe"),params:u.extend({uri:r.Yj()})}),Q=c.extend({method:r.eu("resources/unsubscribe"),params:u.extend({uri:r.Yj()})}),X=h.extend({method:r.eu("notifications/resources/updated"),params:p.extend({uri:r.Yj()})}),Z=r.Ik({name:r.Yj(),description:r.lq(r.Yj()),required:r.lq(r.zM())}).passthrough(),ee=R.extend({description:r.lq(r.Yj()),arguments:r.lq(r.YO(Z)),icons:r.lq(r.YO(y)),_meta:r.lq(r.Ik({}).passthrough())}),te=M.extend({method:r.eu("prompts/list")}),se=$.extend({prompts:r.YO(ee)}),re=c.extend({method:r.eu("prompts/get"),params:u.extend({name:r.Yj(),arguments:r.lq(r.g1(r.Yj()))})}),ie=r.Ik({type:r.eu("text"),text:r.Yj(),_meta:r.lq(r.Ik({}).passthrough())}).passthrough(),oe=r.Ik({type:r.eu("image"),data:z,mimeType:r.Yj(),_meta:r.lq(r.Ik({}).passthrough())}).passthrough(),ne=r.Ik({type:r.eu("audio"),data:z,mimeType:r.Yj(),_meta:r.lq(r.Ik({}).passthrough())}).passthrough(),ae=r.Ik({type:r.eu("resource"),resource:r.KC([O,N]),_meta:r.lq(r.Ik({}).passthrough())}).passthrough(),le=K.extend({type:r.eu("resource_link")}),de=r.KC([ie,oe,ne,le,ae]),ue=r.Ik({role:r.k5(["user","assistant"]),content:de}).passthrough(),ce=m.extend({description:r.lq(r.Yj()),messages:r.YO(ue)}),pe=h.extend({method:r.eu("notifications/prompts/list_changed")}),he=r.Ik({title:r.lq(r.Yj()),readOnlyHint:r.lq(r.zM()),destructiveHint:r.lq(r.zM()),idempotentHint:r.lq(r.zM()),openWorldHint:r.lq(r.zM())}).passthrough(),me=R.extend({description:r.lq(r.Yj()),inputSchema:r.Ik({type:r.eu("object"),properties:r.lq(r.Ik({}).passthrough()),required:r.lq(r.YO(r.Yj()))}).passthrough(),outputSchema:r.lq(r.Ik({type:r.eu("object"),properties:r.lq(r.Ik({}).passthrough()),required:r.lq(r.YO(r.Yj()))}).passthrough()),annotations:r.lq(he),icons:r.lq(r.YO(y)),_meta:r.lq(r.Ik({}).passthrough())}),ge=M.extend({method:r.eu("tools/list")}),fe=$.extend({tools:r.YO(me)}),ve=m.extend({content:r.YO(de).default([]),structuredContent:r.Ik({}).passthrough().optional(),isError:r.lq(r.zM())}),_e=(ve.or(m.extend({toolResult:r.L5()})),c.extend({method:r.eu("tools/call"),params:u.extend({name:r.Yj(),arguments:r.lq(r.g1(r.L5()))})})),qe=h.extend({method:r.eu("notifications/tools/list_changed")}),be=r.k5(["debug","info","notice","warning","error","critical","alert","emergency"]),Ie=c.extend({method:r.eu("logging/setLevel"),params:u.extend({level:be})}),we=h.extend({method:r.eu("notifications/message"),params:p.extend({level:be,logger:r.lq(r.Yj()),data:r.L5()})}),ke=r.Ik({name:r.Yj().optional()}).passthrough(),ye=r.Ik({hints:r.lq(r.YO(ke)),costPriority:r.lq(r.ai().min(0).max(1)),speedPriority:r.lq(r.ai().min(0).max(1)),intelligencePriority:r.lq(r.ai().min(0).max(1))}).passthrough(),Re=r.Ik({role:r.k5(["user","assistant"]),content:r.KC([ie,oe,ne])}).passthrough(),Ce=c.extend({method:r.eu("sampling/createMessage"),params:u.extend({messages:r.YO(Re),systemPrompt:r.lq(r.Yj()),includeContext:r.lq(r.k5(["none","thisServer","allServers"])),temperature:r.lq(r.ai()),maxTokens:r.ai().int(),stopSequences:r.lq(r.YO(r.Yj())),metadata:r.lq(r.Ik({}).passthrough()),modelPreferences:r.lq(ye)})}),Te=m.extend({model:r.Yj(),stopReason:r.lq(r.k5(["endTurn","stopSequence","maxTokens"]).or(r.Yj())),role:r.k5(["user","assistant"]),content:r.gM("type",[ie,oe,ne])}),je=r.Ik({type:r.eu("boolean"),title:r.lq(r.Yj()),description:r.lq(r.Yj()),default:r.lq(r.zM())}).passthrough(),Ye=r.Ik({type:r.eu("string"),title:r.lq(r.Yj()),description:r.lq(r.Yj()),minLength:r.lq(r.ai()),maxLength:r.lq(r.ai()),format:r.lq(r.k5(["email","uri","date","date-time"]))}).passthrough(),xe=r.Ik({type:r.k5(["number","integer"]),title:r.lq(r.Yj()),description:r.lq(r.Yj()),minimum:r.lq(r.ai()),maximum:r.lq(r.ai())}).passthrough(),He=r.Ik({type:r.eu("string"),title:r.lq(r.Yj()),description:r.lq(r.Yj()),enum:r.YO(r.Yj()),enumNames:r.lq(r.YO(r.Yj()))}).passthrough(),Pe=r.KC([je,Ye,xe,He]),Se=c.extend({method:r.eu("elicitation/create"),params:u.extend({message:r.Yj(),requestedSchema:r.Ik({type:r.eu("object"),properties:r.g1(r.Yj(),Pe),required:r.lq(r.YO(r.Yj()))}).passthrough()})}),Ee=m.extend({action:r.k5(["accept","decline","cancel"]),content:r.lq(r.g1(r.Yj(),r.L5()))}),Me=r.Ik({type:r.eu("ref/resource"),uri:r.Yj()}).passthrough(),$e=r.Ik({type:r.eu("ref/prompt"),name:r.Yj()}).passthrough(),Le=c.extend({method:r.eu("completion/complete"),params:u.extend({ref:r.KC([$e,Me]),argument:r.Ik({name:r.Yj(),value:r.Yj()}).passthrough(),context:r.lq(r.Ik({arguments:r.lq(r.g1(r.Yj(),r.Yj()))}))})}),Oe=m.extend({completion:r.Ik({values:r.YO(r.Yj()).max(100),total:r.lq(r.ai().int()),hasMore:r.lq(r.zM())}).passthrough()}),ze=r.Ik({uri:r.Yj().startsWith("file://"),name:r.lq(r.Yj()),_meta:r.lq(r.Ik({}).passthrough())}).passthrough(),Ne=c.extend({method:r.eu("roots/list")}),Ke=m.extend({roots:r.YO(ze)}),Ve=h.extend({method:r.eu("notifications/roots/list_changed")});r.KC([P,j,Le,Ie,re,te,A,F,G,B,Q,_e,ge]),r.KC([k,E,H,Ve]),r.KC([w,Te,Ee,Ke]),r.KC([P,Ce,Se,Ne]),r.KC([k,E,we,X,W,qe,pe]),r.KC([w,x,Oe,ce,se,D,U,J,ve,fe]);class Ae extends Error{constructor(e,t,s){super(`MCP error ${e}: ${t}`),this.code=e,this.data=s,this.name="McpError"}}class De{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this.setNotificationHandler(k,e=>{const t=this._requestHandlerAbortControllers.get(e.params.requestId);null===t||void 0===t||t.abort(e.params.reason)}),this.setNotificationHandler(E,e=>{this._onprogress(e)}),this.setRequestHandler(P,e=>({}))}_setupTimeout(e,t,s,r,i=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(r,t),startTime:Date.now(),timeout:t,maxTotalTimeout:s,resetTimeoutOnProgress:i,onTimeout:r})}_resetTimeout(e){const t=this._timeoutInfo.get(e);if(!t)return!1;const s=Date.now()-t.startTime;if(t.maxTotalTimeout&&s>=t.maxTotalTimeout)throw this._timeoutInfo.delete(e),new Ae(b.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:t.maxTotalTimeout,totalElapsed:s});return clearTimeout(t.timeoutId),t.timeoutId=setTimeout(t.onTimeout,t.timeout),!0}_cleanupTimeout(e){const t=this._timeoutInfo.get(e);t&&(clearTimeout(t.timeoutId),this._timeoutInfo.delete(e))}async connect(e){var t,s,r;this._transport=e;const i=null===(t=this.transport)||void 0===t?void 0:t.onclose;this._transport.onclose=()=>{null===i||void 0===i||i(),this._onclose()};const o=null===(s=this.transport)||void 0===s?void 0:s.onerror;this._transport.onerror=e=>{null===o||void 0===o||o(e),this._onerror(e)};const n=null===(r=this._transport)||void 0===r?void 0:r.onmessage;this._transport.onmessage=(e,t)=>{null===n||void 0===n||n(e,t),q(e)||I.safeParse(e).success?this._onresponse(e):f.safeParse(e).success?this._onrequest(e,t):v.safeParse(e).success?this._onnotification(e):this._onerror(new Error(`Unknown message type: ${JSON.stringify(e)}`))},await this._transport.start()}_onclose(){var e;const t=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._pendingDebouncedNotifications.clear(),this._transport=void 0,null===(e=this.onclose)||void 0===e||e.call(this);const s=new Ae(b.ConnectionClosed,"Connection closed");for(const r of t.values())r(s)}_onerror(e){var t;null===(t=this.onerror)||void 0===t||t.call(this,e)}_onnotification(e){var t;const s=null!==(t=this._notificationHandlers.get(e.method))&&void 0!==t?t:this.fallbackNotificationHandler;void 0!==s&&Promise.resolve().then(()=>s(e)).catch(e=>this._onerror(new Error(`Uncaught error in notification handler: ${e}`)))}_onrequest(e,t){var s,r;const i=null!==(s=this._requestHandlers.get(e.method))&&void 0!==s?s:this.fallbackRequestHandler,o=this._transport;if(void 0===i)return void(null===o||void 0===o||o.send({jsonrpc:"2.0",id:e.id,error:{code:b.MethodNotFound,message:"Method not found"}}).catch(e=>this._onerror(new Error(`Failed to send an error response: ${e}`))));const n=new AbortController;this._requestHandlerAbortControllers.set(e.id,n);const a={signal:n.signal,sessionId:null===o||void 0===o?void 0:o.sessionId,_meta:null===(r=e.params)||void 0===r?void 0:r._meta,sendNotification:t=>this.notification(t,{relatedRequestId:e.id}),sendRequest:(t,s,r)=>this.request(t,s,{...r,relatedRequestId:e.id}),authInfo:null===t||void 0===t?void 0:t.authInfo,requestId:e.id,requestInfo:null===t||void 0===t?void 0:t.requestInfo};Promise.resolve().then(()=>i(e,a)).then(t=>{if(!n.signal.aborted)return null===o||void 0===o?void 0:o.send({result:t,jsonrpc:"2.0",id:e.id})},t=>{var s;if(!n.signal.aborted)return null===o||void 0===o?void 0:o.send({jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(t.code)?t.code:b.InternalError,message:null!==(s=t.message)&&void 0!==s?s:"Internal error"}})}).catch(e=>this._onerror(new Error(`Failed to send response: ${e}`))).finally(()=>{this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){const{progressToken:t,...s}=e.params,r=Number(t),i=this._progressHandlers.get(r);if(!i)return void this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));const o=this._responseHandlers.get(r),n=this._timeoutInfo.get(r);if(n&&o&&n.resetTimeoutOnProgress)try{this._resetTimeout(r)}catch(a){return void o(a)}i(s)}_onresponse(e){const t=Number(e.id),s=this._responseHandlers.get(t);void 0!==s?(this._responseHandlers.delete(t),this._progressHandlers.delete(t),this._cleanupTimeout(t),q(e)?s(e):s(new Ae(e.error.code,e.error.message,e.error.data))):this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`))}get transport(){return this._transport}async close(){var e;await(null===(e=this._transport)||void 0===e?void 0:e.close())}request(e,t,s){const{relatedRequestId:r,resumptionToken:i,onresumptiontoken:o}=null!==s&&void 0!==s?s:{};return new Promise((n,a)=>{var l,d,u,c,p,h;if(!this._transport)return void a(new Error("Not connected"));!0===(null===(l=this._options)||void 0===l?void 0:l.enforceStrictCapabilities)&&this.assertCapabilityForMethod(e.method),null===(d=null===s||void 0===s?void 0:s.signal)||void 0===d||d.throwIfAborted();const m=this._requestMessageId++,g={...e,jsonrpc:"2.0",id:m};(null===s||void 0===s?void 0:s.onprogress)&&(this._progressHandlers.set(m,s.onprogress),g.params={...e.params,_meta:{...(null===(u=e.params)||void 0===u?void 0:u._meta)||{},progressToken:m}});const f=e=>{var t;this._responseHandlers.delete(m),this._progressHandlers.delete(m),this._cleanupTimeout(m),null===(t=this._transport)||void 0===t||t.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:m,reason:String(e)}},{relatedRequestId:r,resumptionToken:i,onresumptiontoken:o}).catch(e=>this._onerror(new Error(`Failed to send cancellation: ${e}`))),a(e)};this._responseHandlers.set(m,e=>{var r;if(!(null===(r=null===s||void 0===s?void 0:s.signal)||void 0===r?void 0:r.aborted)){if(e instanceof Error)return a(e);try{const s=t.parse(e.result);n(s)}catch(i){a(i)}}}),null===(c=null===s||void 0===s?void 0:s.signal)||void 0===c||c.addEventListener("abort",()=>{var e;f(null===(e=null===s||void 0===s?void 0:s.signal)||void 0===e?void 0:e.reason)});const v=null!==(p=null===s||void 0===s?void 0:s.timeout)&&void 0!==p?p:6e4;this._setupTimeout(m,v,null===s||void 0===s?void 0:s.maxTotalTimeout,()=>f(new Ae(b.RequestTimeout,"Request timed out",{timeout:v})),null!==(h=null===s||void 0===s?void 0:s.resetTimeoutOnProgress)&&void 0!==h&&h),this._transport.send(g,{relatedRequestId:r,resumptionToken:i,onresumptiontoken:o}).catch(e=>{this._cleanupTimeout(m),a(e)})})}async notification(e,t){var s,r;if(!this._transport)throw new Error("Not connected");if(this.assertNotificationCapability(e.method),(null!==(r=null===(s=this._options)||void 0===s?void 0:s.debouncedNotificationMethods)&&void 0!==r?r:[]).includes(e.method)&&!e.params&&!(null===t||void 0===t?void 0:t.relatedRequestId)){if(this._pendingDebouncedNotifications.has(e.method))return;return this._pendingDebouncedNotifications.add(e.method),void Promise.resolve().then(()=>{var s;if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;const r={...e,jsonrpc:"2.0"};null===(s=this._transport)||void 0===s||s.send(r,t).catch(e=>this._onerror(e))})}const i={...e,jsonrpc:"2.0"};await this._transport.send(i,t)}setRequestHandler(e,t){const s=e.shape.method.value;this.assertRequestHandlerCapability(s),this._requestHandlers.set(s,(s,r)=>Promise.resolve(t(e.parse(s),r)))}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw new Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,t){this._notificationHandlers.set(e.shape.method.value,s=>Promise.resolve(t(e.parse(s))))}removeNotificationHandler(e){this._notificationHandlers.delete(e)}}var Fe=s(28019);class Ue extends De{constructor(e,t){var s;super(t),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(be.options.map((e,t)=>[e,t])),this.isMessageIgnored=(e,t)=>{const s=this._loggingLevels.get(t);return!!s&&this.LOG_LEVEL_SEVERITY.get(e)<this.LOG_LEVEL_SEVERITY.get(s)},this._capabilities=null!==(s=null===t||void 0===t?void 0:t.capabilities)&&void 0!==s?s:{},this._instructions=null===t||void 0===t?void 0:t.instructions,this.setRequestHandler(j,e=>this._oninitialize(e)),this.setNotificationHandler(H,()=>{var e;return null===(e=this.oninitialized)||void 0===e?void 0:e.call(this)}),this._capabilities.logging&&this.setRequestHandler(Ie,async(e,t)=>{var s;const r=t.sessionId||(null===(s=t.requestInfo)||void 0===s?void 0:s.headers["mcp-session-id"])||void 0,{level:i}=e.params,o=be.safeParse(i);return o.success&&this._loggingLevels.set(r,o.data),{}})}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");var t;this._capabilities=(t=this._capabilities,Object.entries(e).reduce((e,[t,s])=>(e[t]=s&&"object"===typeof s&&e[t]?{...e[t],...s}:s,e),{...t}))}assertCapabilityForMethod(e){var t,s,r;switch(e){case"sampling/createMessage":if(!(null===(t=this._clientCapabilities)||void 0===t?void 0:t.sampling))throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!(null===(s=this._clientCapabilities)||void 0===s?void 0:s.elicitation))throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!(null===(r=this._clientCapabilities)||void 0===r?void 0:r.roots))throw new Error(`Client does not support listing roots (required for ${e})`)}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`)}}assertRequestHandlerCapability(e){switch(e){case"sampling/createMessage":if(!this._capabilities.sampling)throw new Error(`Server does not support sampling (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`)}}async _oninitialize(e){const t=e.params.protocolVersion;return this._clientCapabilities=e.params.capabilities,this._clientVersion=e.params.clientInfo,{protocolVersion:o.includes(t)?t:i,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},w)}async createMessage(e,t){return this.request({method:"sampling/createMessage",params:e},Te,t)}async elicitInput(e,t){const s=await this.request({method:"elicitation/create",params:e},Ee,t);if("accept"===s.action&&s.content)try{const t=new Fe,r=t.compile(e.requestedSchema);if(!r(s.content))throw new Ae(b.InvalidParams,`Elicitation response content does not match requested schema: ${t.errorsText(r.errors)}`)}catch(r){if(r instanceof Ae)throw r;throw new Ae(b.InternalError,`Error validating elicitation response: ${r}`)}return s}async listRoots(e,t){return this.request({method:"roots/list",params:e},Ke,t)}async sendLoggingMessage(e,t){if(this._capabilities.logging&&!this.isMessageIgnored(e.level,t))return this.notification({method:"notifications/message",params:e})}async sendResourceUpdated(e){return this.notification({method:"notifications/resources/updated",params:e})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}}var Ge,Je=s(64146);!function(e){e.Completable="McpCompletable"}(Ge||(Ge={}));class We extends r.aR{_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.type._parse({data:t.data,path:t.path,parent:t})}unwrap(){return this._def.type}}function Be(e){if(!e)return{};const{errorMap:t,invalid_type_error:s,required_error:r,description:i}=e;if(t&&(s||r))throw new Error('Can\'t use "invalid_type_error" or "required_error" in conjunction with custom error map.');return t?{errorMap:t,description:i}:{errorMap:(t,i)=>{var o,n;const{message:a}=e;return"invalid_enum_value"===t.code?{message:null!==a&&void 0!==a?a:i.defaultError}:"undefined"===typeof i.data?{message:null!==(o=null!==a&&void 0!==a?a:r)&&void 0!==o?o:i.defaultError}:"invalid_type"!==t.code?{message:i.defaultError}:{message:null!==(n=null!==a&&void 0!==a?a:s)&&void 0!==n?n:i.defaultError}},description:i}}We.create=(e,t)=>new We({type:e,typeName:Ge.Completable,complete:t.complete,...Be(t)});class Qe{constructor(e,t){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new Ue(e,t)}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(ge.shape.method.value),this.server.assertCanSetRequestHandler(_e.shape.method.value),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(ge,()=>({tools:Object.entries(this._registeredTools).filter(([,e])=>e.enabled).map(([e,t])=>{const s={name:e,title:t.title,description:t.description,inputSchema:t.inputSchema?(0,Je.Ik)(t.inputSchema,{strictUnions:!0}):Xe,annotations:t.annotations,_meta:t._meta};return t.outputSchema&&(s.outputSchema=(0,Je.Ik)(t.outputSchema,{strictUnions:!0})),s})})),this.server.setRequestHandler(_e,async(e,t)=>{const s=this._registeredTools[e.params.name];if(!s)throw new Ae(b.InvalidParams,`Tool ${e.params.name} not found`);if(!s.enabled)throw new Ae(b.InvalidParams,`Tool ${e.params.name} disabled`);let r;if(s.inputSchema){const o=await s.inputSchema.safeParseAsync(e.params.arguments);if(!o.success)throw new Ae(b.InvalidParams,`Invalid arguments for tool ${e.params.name}: ${o.error.message}`);const n=o.data,a=s.callback;try{r=await Promise.resolve(a(n,t))}catch(i){r={content:[{type:"text",text:i instanceof Error?i.message:String(i)}],isError:!0}}}else{const e=s.callback;try{r=await Promise.resolve(e(t))}catch(i){r={content:[{type:"text",text:i instanceof Error?i.message:String(i)}],isError:!0}}}if(s.outputSchema&&!r.isError){if(!r.structuredContent)throw new Ae(b.InvalidParams,`Tool ${e.params.name} has an output schema but no structured content was provided`);const t=await s.outputSchema.safeParseAsync(r.structuredContent);if(!t.success)throw new Ae(b.InvalidParams,`Invalid structured content for tool ${e.params.name}: ${t.error.message}`)}return r}),this._toolHandlersInitialized=!0)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(Le.shape.method.value),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(Le,async e=>{switch(e.params.ref.type){case"ref/prompt":return this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return this.handleResourceCompletion(e,e.params.ref);default:throw new Ae(b.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,t){const s=this._registeredPrompts[t.name];if(!s)throw new Ae(b.InvalidParams,`Prompt ${t.name} not found`);if(!s.enabled)throw new Ae(b.InvalidParams,`Prompt ${t.name} disabled`);if(!s.argsSchema)return st;const r=s.argsSchema.shape[e.params.argument.name];if(!(r instanceof We))return st;const i=r._def;return tt(await i.complete(e.params.argument.value,e.params.context))}async handleResourceCompletion(e,t){const s=Object.values(this._registeredResourceTemplates).find(e=>e.resourceTemplate.uriTemplate.toString()===t.uri);if(!s){if(this._registeredResources[t.uri])return st;throw new Ae(b.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}const r=s.resourceTemplate.completeCallback(e.params.argument.name);return r?tt(await r(e.params.argument.value,e.params.context)):st}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(A.shape.method.value),this.server.assertCanSetRequestHandler(F.shape.method.value),this.server.assertCanSetRequestHandler(G.shape.method.value),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(A,async(e,t)=>{const s=Object.entries(this._registeredResources).filter(([e,t])=>t.enabled).map(([e,t])=>({uri:e,name:t.name,...t.metadata})),r=[];for(const i of Object.values(this._registeredResourceTemplates)){if(!i.resourceTemplate.listCallback)continue;const e=await i.resourceTemplate.listCallback(t);for(const t of e.resources)r.push({...i.metadata,...t})}return{resources:[...s,...r]}}),this.server.setRequestHandler(F,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([e,t])=>({name:e,uriTemplate:t.resourceTemplate.uriTemplate.toString(),...t.metadata}))})),this.server.setRequestHandler(G,async(e,t)=>{const s=new URL(e.params.uri),r=this._registeredResources[s.toString()];if(r){if(!r.enabled)throw new Ae(b.InvalidParams,`Resource ${s} disabled`);return r.readCallback(s,t)}for(const i of Object.values(this._registeredResourceTemplates)){const e=i.resourceTemplate.uriTemplate.match(s.toString());if(e)return i.readCallback(s,e,t)}throw new Ae(b.InvalidParams,`Resource ${s} not found`)}),this.setCompletionRequestHandler(),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(te.shape.method.value),this.server.assertCanSetRequestHandler(re.shape.method.value),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(te,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,t])=>{return{name:e,title:t.title,description:t.description,arguments:t.argsSchema?(s=t.argsSchema,Object.entries(s.shape).map(([e,t])=>({name:e,description:t.description,required:!t.isOptional()}))):void 0};var s})})),this.server.setRequestHandler(re,async(e,t)=>{const s=this._registeredPrompts[e.params.name];if(!s)throw new Ae(b.InvalidParams,`Prompt ${e.params.name} not found`);if(!s.enabled)throw new Ae(b.InvalidParams,`Prompt ${e.params.name} disabled`);if(s.argsSchema){const r=await s.argsSchema.safeParseAsync(e.params.arguments);if(!r.success)throw new Ae(b.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${r.error.message}`);const i=r.data,o=s.callback;return await Promise.resolve(o(i,t))}{const e=s.callback;return await Promise.resolve(e(t))}}),this.setCompletionRequestHandler(),this._promptHandlersInitialized=!0)}resource(e,t,...s){let r;"object"===typeof s[0]&&(r=s.shift());const i=s[0];if("string"===typeof t){if(this._registeredResources[t])throw new Error(`Resource ${t} is already registered`);const s=this._createRegisteredResource(e,void 0,t,r,i);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);const s=this._createRegisteredResourceTemplate(e,void 0,t,r,i);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}registerResource(e,t,s,r){if("string"===typeof t){if(this._registeredResources[t])throw new Error(`Resource ${t} is already registered`);const i=this._createRegisteredResource(e,s.title,t,s,r);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);const i=this._createRegisteredResourceTemplate(e,s.title,t,s,r);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}_createRegisteredResource(e,t,s,r,i){const o={name:e,title:t,metadata:r,readCallback:i,enabled:!0,disable:()=>o.update({enabled:!1}),enable:()=>o.update({enabled:!0}),remove:()=>o.update({uri:null}),update:e=>{"undefined"!==typeof e.uri&&e.uri!==s&&(delete this._registeredResources[s],e.uri&&(this._registeredResources[e.uri]=o)),"undefined"!==typeof e.name&&(o.name=e.name),"undefined"!==typeof e.title&&(o.title=e.title),"undefined"!==typeof e.metadata&&(o.metadata=e.metadata),"undefined"!==typeof e.callback&&(o.readCallback=e.callback),"undefined"!==typeof e.enabled&&(o.enabled=e.enabled),this.sendResourceListChanged()}};return this._registeredResources[s]=o,o}_createRegisteredResourceTemplate(e,t,s,r,i){const o={resourceTemplate:s,title:t,metadata:r,readCallback:i,enabled:!0,disable:()=>o.update({enabled:!1}),enable:()=>o.update({enabled:!0}),remove:()=>o.update({name:null}),update:t=>{"undefined"!==typeof t.name&&t.name!==e&&(delete this._registeredResourceTemplates[e],t.name&&(this._registeredResourceTemplates[t.name]=o)),"undefined"!==typeof t.title&&(o.title=t.title),"undefined"!==typeof t.template&&(o.resourceTemplate=t.template),"undefined"!==typeof t.metadata&&(o.metadata=t.metadata),"undefined"!==typeof t.callback&&(o.readCallback=t.callback),"undefined"!==typeof t.enabled&&(o.enabled=t.enabled),this.sendResourceListChanged()}};return this._registeredResourceTemplates[e]=o,o}_createRegisteredPrompt(e,t,s,i,o){const n={title:t,description:s,argsSchema:void 0===i?void 0:r.Ik(i),callback:o,enabled:!0,disable:()=>n.update({enabled:!1}),enable:()=>n.update({enabled:!0}),remove:()=>n.update({name:null}),update:t=>{"undefined"!==typeof t.name&&t.name!==e&&(delete this._registeredPrompts[e],t.name&&(this._registeredPrompts[t.name]=n)),"undefined"!==typeof t.title&&(n.title=t.title),"undefined"!==typeof t.description&&(n.description=t.description),"undefined"!==typeof t.argsSchema&&(n.argsSchema=r.Ik(t.argsSchema)),"undefined"!==typeof t.callback&&(n.callback=t.callback),"undefined"!==typeof t.enabled&&(n.enabled=t.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=n,n}_createRegisteredTool(e,t,s,i,o,n,a,l){const d={title:t,description:s,inputSchema:void 0===i?void 0:r.Ik(i),outputSchema:void 0===o?void 0:r.Ik(o),annotations:n,_meta:a,callback:l,enabled:!0,disable:()=>d.update({enabled:!1}),enable:()=>d.update({enabled:!0}),remove:()=>d.update({name:null}),update:t=>{"undefined"!==typeof t.name&&t.name!==e&&(delete this._registeredTools[e],t.name&&(this._registeredTools[t.name]=d)),"undefined"!==typeof t.title&&(d.title=t.title),"undefined"!==typeof t.description&&(d.description=t.description),"undefined"!==typeof t.paramsSchema&&(d.inputSchema=r.Ik(t.paramsSchema)),"undefined"!==typeof t.callback&&(d.callback=t.callback),"undefined"!==typeof t.annotations&&(d.annotations=t.annotations),"undefined"!==typeof t._meta&&(d._meta=t._meta),"undefined"!==typeof t.enabled&&(d.enabled=t.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=d,this.setToolRequestHandlers(),this.sendToolListChanged(),d}tool(e,...t){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let s,r,i;if("string"===typeof t[0]&&(s=t.shift()),t.length>1){const e=t[0];Ze(e)?(r=t.shift(),t.length>1&&"object"===typeof t[0]&&null!==t[0]&&!Ze(t[0])&&(i=t.shift())):"object"===typeof e&&null!==e&&(i=t.shift())}return this._createRegisteredTool(e,void 0,s,r,void 0,i,void 0,t[0])}registerTool(e,t,s){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);const{title:r,description:i,inputSchema:o,outputSchema:n,annotations:a,_meta:l}=t;return this._createRegisteredTool(e,r,i,o,n,a,l,s)}prompt(e,...t){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let s,r;"string"===typeof t[0]&&(s=t.shift()),t.length>1&&(r=t.shift());const i=this._createRegisteredPrompt(e,void 0,s,r,t[0]);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}registerPrompt(e,t,s){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);const{title:r,description:i,argsSchema:o}=t,n=this._createRegisteredPrompt(e,r,i,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),n}isConnected(){return void 0!==this.server.transport}async sendLoggingMessage(e,t){return this.server.sendLoggingMessage(e,t)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}}const Xe={type:"object",properties:{}};function Ze(e){return"object"===typeof e&&null!==e&&(0===Object.keys(e).length||Object.values(e).some(et))}function et(e){return null!==e&&"object"===typeof e&&"parse"in e&&"function"===typeof e.parse&&"safeParse"in e&&"function"===typeof e.safeParse}function tt(e){return{completion:{values:e.slice(0,100),total:e.length,hasMore:e.length>100}}}const st={completion:{values:[],hasMore:!1}}}}]);