@@ -30,7 +30,6 @@ import {
3030 Progress ,
3131 LoggingLevel ,
3232 ElicitRequestSchema ,
33- isJSONRPCRequest ,
3433} from "@modelcontextprotocol/sdk/types.js" ;
3534import { RequestOptions } from "@modelcontextprotocol/sdk/shared/protocol.js" ;
3635import { useEffect , useState } from "react" ;
@@ -58,8 +57,7 @@ import { getMCPServerRequestTimeout } from "@/utils/configUtils";
5857import { InspectorConfig } from "../configurationTypes" ;
5958import { Transport } from "@modelcontextprotocol/sdk/shared/transport.js" ;
6059import { CustomHeaders } from "../types/customHeaders" ;
61- import { JsonSchemaType } from "@/utils/jsonUtils" ;
62- import { resolveRef } from "@/utils/schemaUtils" ;
60+ import { resolveRefsInMessage } from "@/utils/schemaUtils" ;
6361
6462interface UseConnectionOptions {
6563 transportType : "stdio" | "sse" | "streamable-http" ;
@@ -687,29 +685,8 @@ export function useConnection({
687685 const protocolOnMessage = transport . onmessage ;
688686 if ( protocolOnMessage ) {
689687 transport . onmessage = ( message ) => {
690- // Resolve $ref references in requests before validation
691- if ( isJSONRPCRequest ( message ) && message . params ?. requestedSchema ) {
692- const requestedSchema = message . params
693- . requestedSchema as JsonSchemaType ;
694- if ( requestedSchema ?. properties ) {
695- const resolvedProperties = Object . fromEntries (
696- Object . entries ( requestedSchema . properties ) . map (
697- ( [ key , propSchema ] ) => [
698- key ,
699- resolveRef ( propSchema , requestedSchema ) ,
700- ] ,
701- ) ,
702- ) ;
703- message . params = {
704- ...message . params ,
705- requestedSchema : {
706- ...requestedSchema ,
707- properties : resolvedProperties ,
708- } ,
709- } ;
710- }
711- }
712- protocolOnMessage ( message ) ;
688+ const resolvedMessage = resolveRefsInMessage ( message ) ;
689+ protocolOnMessage ( resolvedMessage ) ;
713690 } ;
714691 }
715692
0 commit comments