Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func SetProxyHeaders ¶
SetProxyHeaders sets the proxy headers in the request.
Types ¶
type Info ¶
type Info struct {
// contains filtered or unexported fields
}
Info stores request information in the context.
func InfoFromContext ¶
InfoFromContext retrieves the Info from the context.
func (*Info) InstallationID ¶
InstallationID returns the authenticated installation ID.
func (*Info) InstallationURL ¶
InstallationURL returns the authenticated installation URL.
func (*Info) RemoteHeader ¶
RemoteHeader returns a header value from the original inbound request (cloned in NewInfo), or "" if absent. Useful for debugging header forwarding — e.g. comparing what a client sent against what is forwarded.
type ResponseWriter ¶
type ResponseWriter struct {
http.ResponseWriter
// contains filtered or unexported fields
}
ResponseWriter is a custom http.ResponseWriter that captures the status code and response body.
It deliberately implements http.Flusher and Unwrap so that http.ResponseController can reach the flusher of the wrapped writer. The MCP SDK writes Server-Sent Events through http.ResponseController: without these methods flushing silently becomes a no-op and clients waiting on the stream receive nothing until the handler returns.
func NewResponseWriter ¶
func NewResponseWriter(w http.ResponseWriter) *ResponseWriter
NewResponseWriter creates a new ResponseWriter.
func (*ResponseWriter) Body ¶
func (w *ResponseWriter) Body() []byte
Body returns the captured response body. Bodies larger than maxCapturedBodySize are truncated and marked as such.
func (*ResponseWriter) Flush ¶
func (w *ResponseWriter) Flush()
Flush forwards the flush to the wrapped writer, when it supports it. This keeps Server-Sent Events streams responsive while still being logged.
func (*ResponseWriter) StatusCode ¶
func (w *ResponseWriter) StatusCode() int
StatusCode returns the captured status code.
func (*ResponseWriter) Unwrap ¶
func (w *ResponseWriter) Unwrap() http.ResponseWriter
Unwrap returns the wrapped http.ResponseWriter, allowing http.ResponseController to reach optional interfaces (flushing, hijacking, deadlines) implemented further down the chain.
func (*ResponseWriter) Write ¶
func (w *ResponseWriter) Write(b []byte) (int, error)
Write captures the response body, up to maxCapturedBodySize, and forwards it to the wrapped writer.
func (*ResponseWriter) WriteHeader ¶
func (w *ResponseWriter) WriteHeader(code int)
WriteHeader captures the status code.