Documentation
¶
Index ¶
- func ConvertSchema(params, v any) error
- func MustSchemaFor[T any]() any
- func SchemaFor[T any]() (any, error)
- func SchemaToMap(params any) (map[string]any, error)
- type BaseToolSet
- type ElicitationAction
- type ElicitationHandler
- type ElicitationResult
- type FunctionCall
- type Tool
- type ToolAnnotations
- type ToolCall
- type ToolCallResult
- type ToolHandler
- type ToolSet
- type ToolType
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ConvertSchema ¶ added in v1.7.1
func MustSchemaFor ¶ added in v1.7.1
Types ¶
type BaseToolSet ¶ added in v1.16.0
type BaseToolSet struct{}
BaseToolSet provides default no-op implementations for common ToolSet methods. Embed this in tool implementations to reduce boilerplate.
func (BaseToolSet) Instructions ¶ added in v1.16.0
func (BaseToolSet) Instructions() string
Instructions returns an empty string by default.
func (BaseToolSet) SetElicitationHandler ¶ added in v1.16.0
func (BaseToolSet) SetElicitationHandler(ElicitationHandler)
SetElicitationHandler is a no-op for tools that don't use elicitation.
func (BaseToolSet) SetManagedOAuth ¶ added in v1.16.0
func (BaseToolSet) SetManagedOAuth(bool)
SetManagedOAuth is a no-op for tools that don't use OAuth.
func (BaseToolSet) SetOAuthSuccessHandler ¶ added in v1.16.0
func (BaseToolSet) SetOAuthSuccessHandler(func())
SetOAuthSuccessHandler is a no-op for tools that don't use OAuth.
type ElicitationAction ¶ added in v1.9.14
type ElicitationAction string
const ( ElicitationActionAccept ElicitationAction = "accept" ElicitationActionDecline ElicitationAction = "decline" ElicitationActionCancel ElicitationAction = "cancel" )
type ElicitationHandler ¶ added in v1.7.0
type ElicitationHandler func(ctx context.Context, req *mcp.ElicitParams) (ElicitationResult, error)
ElicitationHandler is a function type that handles elicitation requests from the MCP server This allows the runtime to handle elicitation requests and propagate them to its own client
type ElicitationResult ¶ added in v1.7.0
type ElicitationResult struct {
Action ElicitationAction `json:"action"`
Content map[string]any `json:"content,omitempty"`
}
type FunctionCall ¶
type Tool ¶
type Tool struct {
Name string `json:"name"`
Category string `json:"category"`
Description string `json:"description,omitempty"`
Parameters any `json:"parameters"`
Annotations ToolAnnotations `json:"annotations"`
OutputSchema any `json:"outputSchema"`
Handler ToolHandler `json:"-"`
}
func (*Tool) DisplayName ¶ added in v0.7.0
type ToolAnnotations ¶ added in v1.7.0
type ToolAnnotations mcp.ToolAnnotations
type ToolCall ¶
type ToolCall struct {
ID string `json:"id,omitempty"`
Type ToolType `json:"type"`
Function FunctionCall `json:"function"`
}
type ToolCallResult ¶
type ToolCallResult struct {
Output string `json:"output"`
IsError bool `json:"isError,omitempty"`
Meta any `json:"meta,omitempty"`
}
func ResultError ¶ added in v1.15.2
func ResultError(output string) *ToolCallResult
func ResultSuccess ¶ added in v1.15.2
func ResultSuccess(output string) *ToolCallResult
type ToolHandler ¶
type ToolHandler func(ctx context.Context, toolCall ToolCall) (*ToolCallResult, error)
Click to show internal directories.
Click to hide internal directories.