openapi

package
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 21, 2025 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AutoDiscoverer

type AutoDiscoverer struct {
	// contains filtered or unexported fields
}

AutoDiscoverer attempts to find OpenAPI schemas from base URLs

func NewAutoDiscoverer

func NewAutoDiscoverer(client *http.Client, logger *slog.Logger) *AutoDiscoverer

NewAutoDiscoverer creates a new OpenAPI schema auto-discoverer

func (*AutoDiscoverer) DiscoverSchema

func (d *AutoDiscoverer) DiscoverSchema(ctx context.Context, baseURL string) (string, error)

DiscoverSchema attempts to find an OpenAPI schema from a base URL

func (*AutoDiscoverer) DiscoverSchemaWithHeaders

func (d *AutoDiscoverer) DiscoverSchemaWithHeaders(ctx context.Context, baseURL string, headers map[string]string) (string, error)

DiscoverSchemaWithHeaders attempts to find an OpenAPI schema from a base URL with custom headers

func (*AutoDiscoverer) ResolveSchemaSource

func (d *AutoDiscoverer) ResolveSchemaSource(ctx context.Context, source string) (string, error)

ResolveSchemaSource takes a source string and returns a resolved OpenAPI URL If the source is already a full OpenAPI URL, it returns it as-is If it's a base URL, it attempts auto-discovery

func (*AutoDiscoverer) ResolveSchemaSourceWithHeaders

func (d *AutoDiscoverer) ResolveSchemaSourceWithHeaders(ctx context.Context, source string, headers map[string]string) (string, error)

ResolveSchemaSourceWithHeaders takes a source string and returns a resolved OpenAPI URL with custom headers

type SchemaFetcher

type SchemaFetcher struct {
	// contains filtered or unexported fields
}

SchemaFetcher implements the usecase.SchemaFetcher interface for OpenAPI schemas.

func NewSchemaFetcher

func NewSchemaFetcher(client *http.Client, logger *slog.Logger) *SchemaFetcher

NewSchemaFetcher creates a new OpenAPI SchemaFetcher.

func (*SchemaFetcher) Fetch

func (f *SchemaFetcher) Fetch(ctx context.Context, src string) (domain.APISchema, error)

Fetch loads an OpenAPI schema from a URL or local file path.

func (*SchemaFetcher) FetchWithConfig

func (f *SchemaFetcher) FetchWithConfig(ctx context.Context, config usecase.SchemaSourceConfig) (domain.APISchema, error)

FetchWithConfig loads an OpenAPI schema with custom headers.

type ToolGenerator

type ToolGenerator struct {
	// contains filtered or unexported fields
}

ToolGenerator implements the usecase.ToolGenerator interface for OpenAPI schemas.

func NewToolGenerator

func NewToolGenerator(logger *slog.Logger) *ToolGenerator

NewToolGenerator creates a new OpenAPI ToolGenerator.

func (*ToolGenerator) Generate

Generate converts an OpenAPI document into MCP Tools and corresponding InvocationDetails.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL