mcp: change tool handler design (#325)
Change the design of tool handlers by removing genericity from the common path. - `ToolHandler` gets the args as a `json.RawMessage`. Using Server.AddTool does no unmarshaling or schema validation. - `ToolHandlerFor`, installed with `AddTool`, are the only generic pieces. TODO: uncomment and fix some tests
This commit is contained in:
parent
79f063bc98
commit
32cf71de3a
1 changed files with 789 additions and 966 deletions
|
|
@ -52,8 +52,8 @@ func TestContentUnmarshalNil(t *testing.T) {
|
|||
{
|
||||
name: "CallToolResultFor nil Content",
|
||||
json: `{"content":[{"type":"text","text":"hello"}]}`,
|
||||
content: &mcp.CallToolResultFor[string]{},
|
||||
want: &mcp.CallToolResultFor[string]{Content: []mcp.Content{&mcp.TextContent{Text: "hello"}}},
|
||||
content: &mcp.CallToolResult{},
|
||||
want: &mcp.CallToolResult{Content: []mcp.Content{&mcp.TextContent{Text: "hello"}}},
|
||||
},
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue