chip

package
v0.0.45 Latest Latest
Warning

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

Go to latest
Published: Jul 29, 2026 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Version = "0.0.0-SNAPSHOT"

Functions

func GetCallToolRequest

func GetCallToolRequest(ctx context.Context) (*mcp.CallToolRequest, bool)

func GetCollibraHost added in v0.0.22

func GetCollibraHost(ctx context.Context) (string, bool)

func GetInitParams added in v0.0.35

func GetInitParams(ctx context.Context) (*mcp.InitializeParams, bool)

func GetSessionId

func GetSessionId(ctx context.Context) string

func Ptr added in v0.0.30

func Ptr[T any](v T) *T

Ptr returns a pointer to the given value.

func RegisterTool added in v0.0.19

func RegisterTool[In, Out any](s *Server, tool *Tool[In, Out])

func SetCallToolRequest added in v0.0.19

func SetCallToolRequest(ctx context.Context, toolRequest *mcp.CallToolRequest) context.Context

func SetCollibraHost added in v0.0.22

func SetCollibraHost(ctx context.Context, collibraHost string) context.Context

func SetInitParams added in v0.0.35

func SetInitParams(ctx context.Context, params *mcp.InitializeParams) context.Context

Types

type CallToolFunc added in v0.0.21

type CallToolFunc func(context.Context, *mcp.CallToolRequest) (*mcp.CallToolResult, error)

type CollibraClient

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

func NewCollibraClient

func NewCollibraClient(transport http.RoundTripper) *CollibraClient

func (*CollibraClient) RoundTrip

func (c *CollibraClient) RoundTrip(request *http.Request) (*http.Response, error)

type Server added in v0.0.19

type Server struct {
	mcp.Server
	// contains filtered or unexported fields
}

func NewServer added in v0.0.19

func NewServer(opts ...ServerOption) *Server

func (*Server) GetToolMetadata added in v0.0.24

func (s *Server) GetToolMetadata(toolName string) *ToolMetadata

GetToolMetadata returns the metadata for a given tool

type ServerOption added in v0.0.19

type ServerOption func(*Server)

func WithInstructions added in v0.0.35

func WithInstructions(snippet string) ServerOption

WithInstructions appends a snippet to the server's initialize instructions. Use this so optional features (e.g. experimental skills) can contribute their own bootstrap text only when enabled.

func WithReplacementInstructions added in v0.0.35

func WithReplacementInstructions(text string) ServerOption

WithReplacementInstructions replaces the server's default initialize instructions with the given text, discarding any previously appended parts (including the embedded default). Use this when an optional feature owns the entire bootstrap surface — e.g. the experimental skills feature, which routes the model through skill discovery instead of carrying workflow recipes in instructions.

func WithToolMiddleware added in v0.0.19

func WithToolMiddleware(middleware ToolMiddleware) ServerOption

type ServerToolConfig added in v0.0.24

type ServerToolConfig struct {
	EnabledTools  []string
	DisabledTools []string
	// EnableDebugTools, when true, registers debug tools that are otherwise hidden.
	EnableDebugTools bool
	Experimental     []string
	// SkillsDir is the optional path to an external skills directory whose
	// contents are merged on top of the embedded catalog. Empty means the
	// embedded catalog alone is served. Only consulted when the "skills"
	// experimental feature is enabled.
	SkillsDir string
}

ServerToolConfig is used to configure which tools are enabled/disabled at the server level

func (*ServerToolConfig) IsExperimentalEnabled added in v0.0.35

func (tc *ServerToolConfig) IsExperimentalEnabled(featureName string) bool

IsExperimentalEnabled reports whether the given experimental feature name was opted into via --experimental, COLLIBRA_MCP_EXPERIMENTAL, or mcp.experimental in the YAML config.

func (*ServerToolConfig) IsToolEnabled added in v0.0.24

func (tc *ServerToolConfig) IsToolEnabled(toolName string) bool

type Tool added in v0.0.19

type Tool[In, Out any] struct {
	Name        string
	Title       string
	Description string
	Handler     ToolHandlerFunc[In, Out]
	Permissions []string
	Annotations *mcp.ToolAnnotations
}

type ToolHandlerFunc added in v0.0.21

type ToolHandlerFunc[In, Out any] func(ctx context.Context, input In) (Out, error)

type ToolMetadata added in v0.0.24

type ToolMetadata struct {
	Name        string
	Permissions []string
}

ToolMetadata stores metadata about a registered tool

type ToolMiddleware added in v0.0.19

type ToolMiddleware interface {
	ToolHandle(ctx context.Context, toolRequest *mcp.CallToolRequest, next CallToolFunc) (*mcp.CallToolResult, error)
}

type ToolMiddlewareFunc added in v0.0.19

type ToolMiddlewareFunc func(ctx context.Context, toolRequest *mcp.CallToolRequest, next CallToolFunc) (*mcp.CallToolResult, error)

func (ToolMiddlewareFunc) ToolHandle added in v0.0.21

func (f ToolMiddlewareFunc) ToolHandle(ctx context.Context, toolRequest *mcp.CallToolRequest, next CallToolFunc) (*mcp.CallToolResult, error)

Jump to

Keyboard shortcuts

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