Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AudioHandler ¶
type AudioHandler struct {
BaseHandler
}
AudioHandler is a handler for audio responses
func (*AudioHandler) Handle ¶
func (h *AudioHandler) Handle(resp *http.Response, tool *config.ToolConfig, tmplCtx *template.Context) (*mcp.CallToolResult, error)
type BaseHandler ¶
type BaseHandler struct {
// contains filtered or unexported fields
}
BaseHandler is a base implementation of the ResponseHandler interface
func (*BaseHandler) HandleNext ¶
func (h *BaseHandler) HandleNext(resp *http.Response, tool *config.ToolConfig, tmplCtx *template.Context) (*mcp.CallToolResult, error)
func (*BaseHandler) SetNext ¶
func (h *BaseHandler) SetNext(handler ResponseHandler)
type ImageHandler ¶
type ImageHandler struct {
BaseHandler
}
ImageHandler is a handler for image responses
func (*ImageHandler) Handle ¶
func (h *ImageHandler) Handle(resp *http.Response, tool *config.ToolConfig, tmplCtx *template.Context) (*mcp.CallToolResult, error)
type ResponseHandler ¶
type ResponseHandler interface {
// CanHandle checks if the handler can process the given response
CanHandle(resp *http.Response) bool
// Handle processes the response and returns the result
Handle(resp *http.Response, tool *config.ToolConfig, tmplCtx *template.Context) (*mcp.CallToolResult, error)
// SetNext sets the next handler in the chain
SetNext(handler ResponseHandler)
}
ResponseHandler is an interface for handling HTTP responses
func CreateResponseHandlerChain ¶
func CreateResponseHandlerChain() ResponseHandler
CreateResponseHandlerChain create a chain of response handlers The first handler is ImageHandler, which handles image responses. The second handler is TextHandler, which handles text responses. default handler is a base handler that can handle any other type of response. If the response is neither, it will return an error.
type Server ¶
type Server struct {
// contains filtered or unexported fields
}
Server represents the MCP server
func NewServer ¶
func NewServer(logger *zap.Logger, port int, store storage.Store, sessionStore session.Store, a auth.Auth, forwardConfig config.ForwardConfig) (*Server, error)
NewServer creates a new MCP server
func (*Server) RegisterRoutes ¶
RegisterRoutes registers routes with the given router for MCP servers
func (*Server) ReloadConfigs ¶
type TextHandler ¶
type TextHandler struct {
BaseHandler
}
TextHandler is a handler for text responses
func (*TextHandler) Handle ¶
func (h *TextHandler) Handle(resp *http.Response, tool *config.ToolConfig, tmplCtx *template.Context) (*mcp.CallToolResult, error)