feat: add GetEinoTool

This commit is contained in:
lilong.129
2025-05-16 14:06:01 +08:00
parent f8b7a42560
commit 9b77bd1fd2
3 changed files with 52 additions and 1 deletions

View File

@@ -7,6 +7,7 @@ import (
"testing"
"time"
"github.com/cloudwego/eino/components/tool"
"github.com/mark3labs/mcp-go/mcp"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
@@ -239,3 +240,21 @@ func TestConvertToolsToRecords(t *testing.T) {
})
}
}
func TestCallEinoTool(t *testing.T) {
hub, err := NewMCPHost("./testdata/test.mcp.json")
require.NoError(t, err)
ctx := context.Background()
err = hub.InitServers(ctx)
require.NoError(t, err)
einoTool, err := hub.GetEinoTool(ctx, "weather", "get_alerts")
require.NoError(t, err)
t.Logf("Tool: %v", einoTool)
tool := einoTool.(tool.InvokableTool)
result, err := tool.InvokableRun(ctx, `{"state": "CA"}`)
require.NoError(t, err)
t.Logf("Result: %v", result)
}