diff --git a/plugins/golang-filter/mcp-server/registry/nacos/nacos.go b/plugins/golang-filter/mcp-server/registry/nacos/nacos.go index 5bc23f6b4..035dc1c3a 100644 --- a/plugins/golang-filter/mcp-server/registry/nacos/nacos.go +++ b/plugins/golang-filter/mcp-server/registry/nacos/nacos.go @@ -14,7 +14,7 @@ import ( "github.com/nacos-group/nacos-sdk-go/v2/vo" ) -type NacosMcpRegsitry struct { +type NacosMcpRegistry struct { serviceMatcher map[string]string configClient config_client.IConfigClient namingClient naming_client.INamingClient @@ -27,7 +27,7 @@ type NacosMcpRegsitry struct { const DEFAULT_SERVICE_LIST_MAX_PGSIZXE = 10000 const MCP_TOOL_SUBFIX = "-mcp-tools.json" -func (n *NacosMcpRegsitry) ListToolsDesciption() []*registry.ToolDescription { +func (n *NacosMcpRegistry) ListToolsDescription() []*registry.ToolDescription { if n.toolsDescription == nil { n.refreshToolsList() } @@ -39,7 +39,7 @@ func (n *NacosMcpRegsitry) ListToolsDesciption() []*registry.ToolDescription { return result } -func (n *NacosMcpRegsitry) GetToolRpcContext(toolName string) (*registry.RpcContext, bool) { +func (n *NacosMcpRegistry) GetToolRpcContext(toolName string) (*registry.RpcContext, bool) { if n.toolsRpcContext == nil { n.refreshToolsList() } @@ -47,11 +47,11 @@ func (n *NacosMcpRegsitry) GetToolRpcContext(toolName string) (*registry.RpcCont return tool, ok } -func (n *NacosMcpRegsitry) RegisterToolChangeEventListener(listener registry.ToolChangeEventListener) { +func (n *NacosMcpRegistry) RegisterToolChangeEventListener(listener registry.ToolChangeEventListener) { n.toolChangeEventListeners = append(n.toolChangeEventListeners, listener) } -func (n *NacosMcpRegsitry) refreshToolsList() bool { +func (n *NacosMcpRegistry) refreshToolsList() bool { changed := false for group, serviceMatcher := range n.serviceMatcher { if n.refreshToolsListForGroup(group, serviceMatcher) { @@ -61,7 +61,7 @@ func (n *NacosMcpRegsitry) refreshToolsList() bool { return changed } -func (n *NacosMcpRegsitry) refreshToolsListForGroup(group string, serviceMatcher string) bool { +func (n *NacosMcpRegistry) refreshToolsListForGroup(group string, serviceMatcher string) bool { services, err := n.namingClient.GetAllServicesInfo(vo.GetAllServiceInfoParam{ GroupName: group, PageNo: 1, @@ -134,7 +134,7 @@ func getFormatServiceName(group string, service string) string { return fmt.Sprintf("%s_%s", group, service) } -func (n *NacosMcpRegsitry) deleteToolForService(group string, service string) { +func (n *NacosMcpRegistry) deleteToolForService(group string, service string) { toolsNeedReset := []string{} formatServiceName := getFormatServiceName(group, service) @@ -150,7 +150,7 @@ func (n *NacosMcpRegsitry) deleteToolForService(group string, service string) { } } -func (n *NacosMcpRegsitry) refreshToolsListForServiceWithContent(group string, service string, newConfig *string, instances *[]model.Instance) bool { +func (n *NacosMcpRegistry) refreshToolsListForServiceWithContent(group string, service string, newConfig *string, instances *[]model.Instance) bool { if newConfig == nil { dataId := makeToolsConfigId(service) @@ -243,7 +243,7 @@ func (n *NacosMcpRegsitry) refreshToolsListForServiceWithContent(group string, s return true } -func (n *NacosMcpRegsitry) GetCredential(name string, group string) *registry.CredentialInfo { +func (n *NacosMcpRegistry) GetCredential(name string, group string) *registry.CredentialInfo { dataId := makeCredentialDataId(name) content, err := n.configClient.GetConfig(vo.ConfigParam{ DataId: dataId, @@ -265,11 +265,11 @@ func (n *NacosMcpRegsitry) GetCredential(name string, group string) *registry.Cr return &credential } -func (n *NacosMcpRegsitry) refreshToolsListForService(group string, service string) bool { +func (n *NacosMcpRegistry) refreshToolsListForService(group string, service string) bool { return n.refreshToolsListForServiceWithContent(group, service, nil, nil) } -func (n *NacosMcpRegsitry) listenToService(group string, service string) { +func (n *NacosMcpRegistry) listenToService(group string, service string) { // config changed, tools description may be changed err := n.configClient.ListenConfig(vo.ConfigParam{ diff --git a/plugins/golang-filter/mcp-server/registry/nacos/server.go b/plugins/golang-filter/mcp-server/registry/nacos/server.go index 12909284a..8af46465a 100644 --- a/plugins/golang-filter/mcp-server/registry/nacos/server.go +++ b/plugins/golang-filter/mcp-server/registry/nacos/server.go @@ -35,7 +35,7 @@ func (l *McpServerToolsChangeListener) OnToolChanged(reg registry.McpServerRegis resetToolsToMcpServer(l.mcpServer, reg) } -func CreateNacosMcpRegsitry(config *NacosConfig) (*NacosMcpRegsitry, error) { +func CreateNacosMcpRegistry(config *NacosConfig) (*NacosMcpRegistry, error) { sc := []constant.ServerConfig{ *constant.NewServerConfig(*config.ServerAddr, 8848, constant.WithContextPath("/nacos")), } @@ -90,7 +90,7 @@ func CreateNacosMcpRegsitry(config *NacosConfig) (*NacosMcpRegsitry, error) { return nil, fmt.Errorf("failed to initial naming config client: %w", err) } - return &NacosMcpRegsitry{ + return &NacosMcpRegistry{ configClient: configClient, namingClient: namingClient, serviceMatcher: *config.ServiceMatcher, @@ -143,7 +143,7 @@ func (c *NacosConfig) NewServer(serverName string) (*common.MCPServer, error) { "1.0.0", ) - nacosRegistry, err := CreateNacosMcpRegsitry(c) + nacosRegistry, err := CreateNacosMcpRegistry(c) if err != nil { return nil, fmt.Errorf("failed to initialize NacosMcpRegistry: %w", err) } @@ -172,7 +172,7 @@ func (c *NacosConfig) NewServer(serverName string) (*common.MCPServer, error) { func resetToolsToMcpServer(mcpServer *common.MCPServer, reg registry.McpServerRegistry) { wrappedTools := []common.ServerTool{} - tools := reg.ListToolsDesciption() + tools := reg.ListToolsDescription() for _, tool := range tools { wrappedTools = append(wrappedTools, common.ServerTool{ Tool: mcp.NewToolWithRawSchema(tool.Name, tool.Description, tool.InputSchema), diff --git a/plugins/golang-filter/mcp-server/registry/registry.go b/plugins/golang-filter/mcp-server/registry/registry.go index acb208ae4..dc5ab86dd 100644 --- a/plugins/golang-filter/mcp-server/registry/registry.go +++ b/plugins/golang-filter/mcp-server/registry/registry.go @@ -36,7 +36,7 @@ type ToolChangeEventListener interface { } type McpServerRegistry interface { - ListToolsDesciption() []*ToolDescription + ListToolsDescription() []*ToolDescription GetToolRpcContext(toolname string) (*RpcContext, bool) RegisterToolChangeEventListener(listener ToolChangeEventListener) } diff --git a/plugins/golang-filter/mcp-server/registry/remote.go b/plugins/golang-filter/mcp-server/registry/remote.go index 9b2eda66f..acd8c467d 100644 --- a/plugins/golang-filter/mcp-server/registry/remote.go +++ b/plugins/golang-filter/mcp-server/registry/remote.go @@ -177,7 +177,7 @@ func selectOneInstance(ctx *RpcContext) (*Instance, error) { return &select_instance, nil } -func getRemoteCallhandle(ctx *RpcContext) (RemoteCallHandle, error) { +func getRemoteCallHandle(ctx *RpcContext) (RemoteCallHandle, error) { if ctx.Protocol == PROTOCOL_HTTP || ctx.Protocol == PROTOCOL_HTTPS { return newHttpRemoteCallHandle(ctx) } else { @@ -192,7 +192,7 @@ func CommonRemoteCall(reg McpServerRegistry, toolName string, parameters map[str return nil, fmt.Errorf("Unknown tool %s", toolName) } - remoteHandle, err := getRemoteCallhandle(ctx) + remoteHandle, err := getRemoteCallHandle(ctx) if remoteHandle == nil { return nil, fmt.Errorf("Unknown backend protocol %s", ctx.Protocol) } diff --git a/plugins/golang-filter/mcp-server/servers/higress/higress-api/README.md b/plugins/golang-filter/mcp-server/servers/higress/higress-api/README.md index 85fefbfc8..b90e4e2c6 100644 --- a/plugins/golang-filter/mcp-server/servers/higress/higress-api/README.md +++ b/plugins/golang-filter/mcp-server/servers/higress/higress-api/README.md @@ -19,7 +19,7 @@ Higress API MCP Server 提供了 MCP 工具来管理 Higress 路由、服务来 ### 插件管理 - `get-plugin`: 获取插件配置 - `delete-plugin`: 删除插件 -- `update-request-block-plguin`: 更新 request-block 插件配置 +- `update-request-block-plugin`: 更新 request-block 插件配置 ## 配置参数 diff --git a/test/README_CN.md b/test/README_CN.md index 0ba3ef359..f4d854d9b 100644 --- a/test/README_CN.md +++ b/test/README_CN.md @@ -36,7 +36,7 @@ Higress 提供了运行 Ingress API 一致性测试和 wasmplugin 测试的 make 4. kube-load-image: 将 dev higress-controller 镜像加载到 kind 集群中。 5. install-dev: 使用 helm 安装带有 dev 镜像的 higress-controller,并安装最新的 higress-gateway、istiod。 6. run-e2e-test: - 1. 所有测试都在 `test/e2e/conformance/tests` 中定义,并在初始化阶段被注册到`ConformanceTests`中。`ConormanceTests` 是一个全局变量,用于存储所有的一致性测试用例。 + 1. 所有测试都在 `test/e2e/conformance/tests` 中定义,并在初始化阶段被注册到`ConformanceTests`中。`ConformanceTests` 是一个全局变量,用于存储所有的一致性测试用例。 2. 准备资源并将它们安装到集群中,例如后端服务/部署。 3. 加载选择打开的一致性测试,并逐个运行它们,如果不符合预期,则失败。 @@ -44,7 +44,7 @@ Higress 提供了运行 Ingress API 一致性测试和 wasmplugin 测试的 make 要添加新的测试用例,首先需要在 `test/ingress/conformance/tests` 中添加 `xxx.go` 和 `xxx.yaml`。`xxx.yaml` 是您需要在集群中应用的 Ingress 资源,`xxx.go` 定义了 HigressConformanceTest。 -然后,您应该将您定义的测试用例注册到`ConormanceTests`中,方法是在xxx.go中使用`init()` 函数调用`Register(YOUR_PLUGIN_SHORT_NAME)`。 +然后,您应该将您定义的测试用例注册到`ConformanceTests`中,方法是在xxx.go中使用`init()` 函数调用`Register(YOUR_PLUGIN_SHORT_NAME)`。 通过查看 `test/ingress/conformance/tests/httproute-simple-same-namespace.go` 和 `test/ingress/conformance/tests/httproute-simple-same-namespace.yaml` 中的代码,您可以快速了解并尝试编写一个测试用例。 diff --git a/test/e2e/conformance/base/consul.yaml b/test/e2e/conformance/base/consul.yaml index a935debf9..c1a6ca1c8 100644 --- a/test/e2e/conformance/base/consul.yaml +++ b/test/e2e/conformance/base/consul.yaml @@ -24,10 +24,10 @@ apiVersion: v1 kind: Pod metadata: - name: consul-standlone + name: consul-standalone namespace: higress-conformance-app-backend labels: - name: consul-standlone + name: consul-standalone spec: containers: - name: consul @@ -46,7 +46,7 @@ metadata: name: consul-service namespace: higress-conformance-app-backend labels: - name: consul-standlone + name: consul-standalone spec: clusterIP: None ports: @@ -55,7 +55,7 @@ spec: protocol: TCP targetPort: 8500 selector: - name: consul-standlone + name: consul-standalone --- apiVersion: v1 kind: Pod