-
Notifications
You must be signed in to change notification settings - Fork 736
Closed
Description
Description
I think this "ToolInputSchema" structure is wrong. If the parameters are a complex nested object, then this structure cannot be expressed. The "Required" parameters should be defined in each object, not uniformly defined in the root object.
https://github.com/mark3labs/mcp-go/blob/main/mcp/tools.go#L518
type ToolInputSchema struct {
Type string `json:"type"`
Properties map[string]any `json:"properties,omitempty"`
Required []string `json:"required,omitempty"`
}I expect the parameter structure
type Args struct {
Area Area
}
type Area struct {
City []string
Country string
}This is a nested object that I cannot represent using "ToolInputSchema"

I think you can refer to https://github.com/googleapis/go-genai/blob/main/types.go#L903
If I understand it wrong, please let me know
If you need coding collaboration, I'm happy to help
Metadata
Metadata
Assignees
Labels
No labels