Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type OpenAPIComponents ¶
type OpenAPIComponents struct {
Schemas map[string]interface{} `json:"schemas,omitempty"`
SecuritySchemes map[string]interface{} `json:"securitySchemes,omitempty"`
}
OpenAPIComponents contains reusable components
type OpenAPIInfo ¶
type OpenAPIInfo struct {
Title string `json:"title"`
Description string `json:"description,omitempty"`
Version string `json:"version"`
}
OpenAPIInfo contains API metadata
type OpenAPIServer ¶
type OpenAPIServer struct {
URL string `json:"url"`
Description string `json:"description,omitempty"`
}
OpenAPIServer represents a server URL
type OpenAPISpec ¶
type OpenAPISpec struct {
OpenAPI string `json:"openapi"`
Info OpenAPIInfo `json:"info"`
Servers []OpenAPIServer `json:"servers,omitempty"`
Paths map[string]interface{} `json:"paths"`
Components OpenAPIComponents `json:"components,omitempty"`
}
OpenAPISpec represents an OpenAPI 3.0 specification
type ProxyServer ¶
type ProxyServer struct {
// contains filtered or unexported fields
}
ProxyServer is an HTTP server that exposes MCP tools as REST endpoints
func NewProxyServer ¶
func NewProxyServer(runasConfig *runas.RunAsConfig, appConfig *config.ApplicationConfig) *ProxyServer
NewProxyServer creates a new HTTP proxy server (alternative constructor)
func NewServer ¶
func NewServer(runasConfig *runas.RunAsConfig, appConfig *config.ApplicationConfig, workflowSvc *workflow.Orchestrator, skillsSvc *skills.Service) *ProxyServer
NewServer creates a new HTTP proxy server This matches the expected signature from serve.go
func (*ProxyServer) SetMCPServers ¶
func (s *ProxyServer) SetMCPServers(servers []*host.ServerConnection)
SetMCPServers sets the MCP server connections
func (*ProxyServer) Shutdown ¶
func (s *ProxyServer) Shutdown() error
Shutdown gracefully shuts down the server
type SchemaGenerator ¶
type SchemaGenerator struct {
// contains filtered or unexported fields
}
SchemaGenerator generates OpenAPI-style schemas for MCP tools
func NewSchemaGenerator ¶
func NewSchemaGenerator(appConfig *config.ApplicationConfig) *SchemaGenerator
NewSchemaGenerator creates a new schema generator
func (*SchemaGenerator) GenerateForTool ¶
func (g *SchemaGenerator) GenerateForTool(tool *runas.ToolExposure) (map[string]interface{}, string, error)
GenerateForTool generates a schema for a tool exposure
type ToolHandler ¶
type ToolHandler struct {
// contains filtered or unexported fields
}
ToolHandler handles HTTP requests for a specific MCP tool
func NewToolHandler ¶
func NewToolHandler(tool *runas.ToolExposure, proxyServer *ProxyServer) *ToolHandler
NewToolHandler creates a new tool handler
func (*ToolHandler) Handle ¶
func (h *ToolHandler) Handle(w http.ResponseWriter, r *http.Request)
Handle processes an HTTP request for this tool