类 AiGrpcClient

java.lang.Object
com.alibaba.nacos.client.ai.remote.AiGrpcClient
所有已实现的接口:
com.alibaba.nacos.common.lifecycle.Closeable

public class AiGrpcClient extends Object implements com.alibaba.nacos.common.lifecycle.Closeable
Nacos AI GRPC protocol client.
作者:
xiweng.yy
  • 构造器详细资料

    • AiGrpcClient

      public AiGrpcClient(String namespaceId, com.alibaba.nacos.client.env.NacosClientProperties properties)
  • 方法详细资料

    • start

      public void start(NacosMcpServerCacheHolder mcpServerCacheHolder, NacosAgentCardCacheHolder agentCardCacheHolder) throws com.alibaba.nacos.api.exception.NacosException
      Start the grpc client.
      抛出:
      com.alibaba.nacos.api.exception.NacosException - nacos exception
    • queryMcpServer

      public com.alibaba.nacos.api.ai.model.mcp.McpServerDetailInfo queryMcpServer(String mcpName, String version) throws com.alibaba.nacos.api.exception.NacosException
      Do query mcp server by mcpId and version.
      参数:
      mcpName - name of mcp server
      version - version of mcp server, if input empty or null, return the latest version
      返回:
      mcp server detail info
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or handle error
    • releaseMcpServer

      public String releaseMcpServer(com.alibaba.nacos.api.ai.model.mcp.McpServerBasicInfo serverSpecification, com.alibaba.nacos.api.ai.model.mcp.McpToolSpecification toolSpecification, com.alibaba.nacos.api.ai.model.mcp.McpEndpointSpec endpointSpecification) throws com.alibaba.nacos.api.exception.NacosException
      Do release mcp server.
      参数:
      serverSpecification - mcp server specification
      toolSpecification - mcp server tool specification, optional
      返回:
      mcp id
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or handle error
    • registerMcpServerEndpoint

      public void registerMcpServerEndpoint(String mcpName, String address, int port, String version) throws com.alibaba.nacos.api.exception.NacosException
      Register endpoint to target mcp server and cached to redo service.
      参数:
      mcpName - name of mcp server
      address - address of mcp endpoint
      port - port of mcp endpoint
      version - version of mcp endpoint, if empty, the endpoint will return for all mcp version
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or handle error
    • doRegisterMcpServerEndpoint

      public void doRegisterMcpServerEndpoint(String mcpName, String address, int port, String version) throws com.alibaba.nacos.api.exception.NacosException
      Actual do Register endpoint to target mcp server.
      参数:
      mcpName - name of mcp server
      address - address of mcp endpoint
      port - port of mcp endpoint
      version - version of mcp endpoint, if empty, the endpoint will return for all mcp version
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or handle error
    • deregisterMcpServerEndpoint

      public void deregisterMcpServerEndpoint(String mcpName, String address, int port) throws com.alibaba.nacos.api.exception.NacosException
      Deregister endpoint from target mcp server and cached to redo service.
      参数:
      mcpName - name of mcp server
      address - address of mcp endpoint
      port - port of mcp endpoint
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or handle error
    • doDeregisterMcpServerEndpoint

      public void doDeregisterMcpServerEndpoint(String mcpName, String address, int port) throws com.alibaba.nacos.api.exception.NacosException
      Actual do deregister endpoint from target mcp server.
      参数:
      mcpName - name of mcp server
      address - address of mcp endpoint
      port - port of mcp endpoint
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or handle error
    • subscribeMcpServer

      public com.alibaba.nacos.api.ai.model.mcp.McpServerDetailInfo subscribeMcpServer(String mcpName, String version) throws com.alibaba.nacos.api.exception.NacosException
      Subscribe mcp server latest version.
      参数:
      mcpName - name of mcp server
      version - version of mcp server
      返回:
      latest version mcp server
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or handle error
    • unsubscribeMcpServer

      public void unsubscribeMcpServer(String mcpName, String version) throws com.alibaba.nacos.api.exception.NacosException
      Un-subscribe mcp server.
      参数:
      mcpName - name of mcp server
      version - version of mcp server
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or handle error
    • getAgentCard

      public com.alibaba.nacos.api.ai.model.a2a.AgentCardDetailInfo getAgentCard(String agentName, String version, String registrationType) throws com.alibaba.nacos.api.exception.NacosException
      Get agent card with nacos extension detail with target version.
      参数:
      agentName - name of agent card
      version - target version, if null or empty, get latest version
      registrationType - registration type
      返回:
      agent card with nacos extension detail
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or agent card not found or handle error
    • releaseAgentCard

      public void releaseAgentCard(com.alibaba.nacos.api.ai.model.a2a.AgentCard agentCard, String registrationType, boolean setAsLatest) throws com.alibaba.nacos.api.exception.NacosException
      Release new agent card or new version.

      If current agent card and version exist, This API will do nothing. If current agent card exist but version not exist, This API will release new version. If current t agent card not exist, This API will release new agent card.

      参数:
      agentCard - agent card need to release
      registrationType - AiConstants.A2a.A2A_ENDPOINT_TYPE_URL or AiConstants.A2a.A2A_ENDPOINT_TYPE_SERVICE
      setAsLatest - whether set new version as latest, default is false. This parameter is only effect when new version is released. If current agent card not exist, whatever this parameter is, it will be set as latest.
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or handle error
    • registerAgentEndpoint

      public void registerAgentEndpoint(String agentName, com.alibaba.nacos.api.ai.model.a2a.AgentEndpoint endpoint) throws com.alibaba.nacos.api.exception.NacosException
      Register agent endpoint into agent.
      参数:
      agentName - agent name
      endpoint - agent endpoint
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or handle error
    • doRegisterAgentEndpoint

      public void doRegisterAgentEndpoint(String agentName, com.alibaba.nacos.api.ai.model.a2a.AgentEndpoint endpoint) throws com.alibaba.nacos.api.exception.NacosException
      Actual do register agent endpoint into agent.
      参数:
      agentName - agent name
      endpoint - agent endpoint
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or handle error
    • deregisterAgentEndpoint

      public void deregisterAgentEndpoint(String agentName, com.alibaba.nacos.api.ai.model.a2a.AgentEndpoint endpoint) throws com.alibaba.nacos.api.exception.NacosException
      Deregister agent endpoint from agent.
      参数:
      agentName - agent name
      endpoint - agent endpoint
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or handle error
    • doDeregisterAgentEndpoint

      public void doDeregisterAgentEndpoint(String agentName, com.alibaba.nacos.api.ai.model.a2a.AgentEndpoint endpoint) throws com.alibaba.nacos.api.exception.NacosException
      Actual do deregister agent endpoint from agent.
      参数:
      agentName - agent name
      endpoint - agent endpoint
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or handle error
    • subscribeAgentCard

      public com.alibaba.nacos.api.ai.model.a2a.AgentCardDetailInfo subscribeAgentCard(String agentName, String version) throws com.alibaba.nacos.api.exception.NacosException
      Subscribe agent card.
      参数:
      agentName - name of agent card
      version - version of agent card
      返回:
      current agent card
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or handle error
    • unsubscribeAgentCard

      public void unsubscribeAgentCard(String agentName, String version) throws com.alibaba.nacos.api.exception.NacosException
      Un-subscribe agent card.
      参数:
      agentName - name of agent card
      version - version of agent card
      抛出:
      com.alibaba.nacos.api.exception.NacosException - if request parameter is invalid or handle error
    • isEnable

      public boolean isEnable()
    • isAbilitySupportedByServer

      public boolean isAbilitySupportedByServer(com.alibaba.nacos.api.ability.constant.AbilityKey abilityKey)
      Determine whether nacos-server supports the capability.
      参数:
      abilityKey - ability key
      返回:
      true if supported, otherwise false
    • shutdown

      public void shutdown() throws com.alibaba.nacos.api.exception.NacosException
      指定者:
      shutdown 在接口中 com.alibaba.nacos.common.lifecycle.Closeable
      抛出:
      com.alibaba.nacos.api.exception.NacosException