@@ -1803,12 +1803,13 @@ func (c *streamableClientConn) Write(ctx context.Context, msg jsonrpc.Message) e
18031803 }
18041804 req .Header .Set ("Content-Type" , "application/json" )
18051805 req .Header .Set ("Accept" , "application/json, text/event-stream" )
1806- if err := c .setMCPHeaders (req , msg ); err != nil {
1806+ if err := c .setMCPHeaders (req ); err != nil {
18071807 // Failure to set headers means that the request was not sent.
18081808 // Wrap with ErrRejected so the jsonrpc2 connection doesn't set writeErr
18091809 // and permanently break the connection.
18101810 return nil , nil , fmt .Errorf ("%s: %w: %w" , requestSummary , jsonrpc2 .ErrRejected , err )
18111811 }
1812+ setStandardHeaders (req , msg )
18121813 resp , err := c .client .Do (req )
18131814 if err != nil {
18141815 // Any error from client.Do means the request didn't reach the server.
@@ -1919,7 +1920,7 @@ func (c *streamableClientConn) Write(ctx context.Context, msg jsonrpc.Message) e
19191920 return nil
19201921}
19211922
1922- func (c * streamableClientConn ) setMCPHeaders (req * http.Request , msg jsonrpc. Message ) error {
1923+ func (c * streamableClientConn ) setMCPHeaders (req * http.Request ) error {
19231924 c .mu .Lock ()
19241925 defer c .mu .Unlock ()
19251926
@@ -1945,8 +1946,6 @@ func (c *streamableClientConn) setMCPHeaders(req *http.Request, msg jsonrpc.Mess
19451946 req .Header .Set (SessionIDHeader , c .sessionID )
19461947 }
19471948
1948- setStandardHeaders (req , msg )
1949-
19501949 return nil
19511950}
19521951
@@ -2200,7 +2199,7 @@ func (c *streamableClientConn) connectSSE(ctx context.Context, lastEventID strin
22002199 if err != nil {
22012200 return nil , err
22022201 }
2203- if err := c .setMCPHeaders (req , nil ); err != nil {
2202+ if err := c .setMCPHeaders (req ); err != nil {
22042203 return nil , err
22052204 }
22062205 if lastEventID != "" {
@@ -2233,7 +2232,7 @@ func (c *streamableClientConn) Close() error {
22332232 if err != nil {
22342233 c .closeErr = err
22352234 } else {
2236- if err := c .setMCPHeaders (req , nil ); err != nil {
2235+ if err := c .setMCPHeaders (req ); err != nil {
22372236 c .closeErr = err
22382237 } else if _ , err := c .client .Do (req ); err != nil {
22392238 c .closeErr = err
0 commit comments